This is a solution to the Kanban task management web app challenge on Frontend Mentor .
- View the optimal layout for the app depending on their device's screen size
- See hover states for all interactive elements on the page
- Create, read, update, and delete boards and tasks
- Receive form validations when trying to create/edit boards and tasks
- Mark subtasks as complete and move tasks between columns
- Hide/show the board sidebar
- Toggle the theme between light/dark modes
- Allow users to drag and drop
- boards icon to re-order them in the Sidebar
- columns to re-order them in a board
- tasks to change their status and re-order them in a column
- subtasks to re-order them in the task detail modal
- Keep track of any changes, even after refreshing the browser (use
localStorage
) - When creating/editing boards and tasks, show confirmation dialog before leaving the page
Index - Light Mode |
Index - Dark Mode |
Edit Board |
Task Detail |
Edit Task |
- Vue 3: JavaScript Framework
- Vue Router 4: Official router for Vue
- Pinia 2: Store library for Vue
- Nuxt 3: Vue Framework
- SCSS: CSS extension language
- VueUse: Collection of Vue Composition Utilities
- VueDraggablePlus: Drag and drop components
- nuxt-svgo: Nuxt module to load optimized SVG files as Vue components
- Nuxt Google Fonts: Google Fonts module for Nuxt
- @antfu/eslint-config: Code style
To get a local copy up and running follow these simple example steps.
- Node.js version 18.0.0 or newer
- Clone the repo
git clone https://github.com/yuna9068/kanban-task-management.git
- Install NPM packages
npm install
- Compile and Hot-Reload for Development
npm run dev
- Theme Switcher
- Best-README-Template by othneildrew