Build a simple task manager application where users can create, read, update, and delete tasks. The frontend will be built with Vue.js, and the backend will be built with Laravel.
A full-stack task management application demonstrating modern web development practices with Laravel and Vue.js, featuring complete CRUD operations and a responsive user interface.
- ✅ Laravel project with MySQL database
- ✅ Environment configuration
- Create a
Taskmodel with the following fields:id(primary key)title(string)description(text)completed(boolean)created_atandupdated_at(timestamps)
- Create a migration for the
taskstable - Implement a controller with CRUD operations
- Set up API routes for these CRUD operations:
GET /api/tasks- List all tasksPOST /api/tasks- Create a new taskGET /api/tasks/{id}- Show a specific taskPUT /api/tasks/{id}- Update a taskDELETE /api/tasks/{id}- Delete a task
- Vue.js 3 project with Vite
- Install Axios for making HTTP requests
TaskList.vue: Display a list of tasks
- Fetch tasks from the Laravel API and display them
- Allow users to mark tasks as completed
TaskForm.vue: Form for creating and editing tasks
- Allow users to enter a title and description
- Include a checkbox for marking the task as completed
- Submit the form to create or update tasks
TaskItem.vue: Display an individual task
- Include buttons for editing and deleting the task
- Set up Vue Router to navigate between the task list and the task form
- Apply responsive styling to make the application presentable
- State management with Vuex or Pinia
- API Authentication system
- Backend: Laravel 12 with PHP 8.2+
- Frontend: Vue.js 3 with Vite
- Database: MySQL
- HTTP Client: Axios
- Development Environment: Laravel Sail (Docker)
- Styling: Tailwind CSS 4
- Docker Desktop
- Node.js 18+
- Clone the repository:
git clone https://github.com/Kaz-Smino/todoist-laravel-vue-20250823.git
cd todoist-laravel-vue-20250823- Start the Docker environment:
./vendor/bin/sail up -d- Install dependencies:
./vendor/bin/sail composer install
./vendor/bin/sail npm install- Setup environment and database:
./vendor/bin/sail artisan migrate- Build frontend assets:
./vendor/bin/sail npm run dev├── app/
│ ├── Http/Controllers/ # API Controllers
│ └── Models/ # Eloquent Models
├── database/
│ └── migrations/ # Database Migrations
├── resources/
│ ├── js/ # Vue.js Components
│ └── css/ # Styling
├── routes/
│ ├── api.php # API Routes
│ └── web.php # Web Routes
└── tests/ # Application Tests
- Laravel API with endpoints for CRUD operations on tasks
- Vue.js application with components for listing, creating, editing, and deleting tasks
- Responsive styling to make the application look presentable
This project demonstrates proficiency in:
- Laravel backend API development
- Vue.js component-based frontend development
- RESTful API design and consumption
- Database design and migrations
- Modern JavaScript (ES6+)
- Responsive web design
Open-sourced software licensed under the MIT license.