Skip to content
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Task Tracker

Overview

Welcome page The Task Tracker application is a task management system built using Laravel 12 with Inertia.js and Vue.js. The interface is styled with Tailwind/shadcn-vue, and icons are provided by Lucide Vue Next. The goal is to create a simple and intuitive web application for task management ("To-Do" list).

Technologies Used

  • Back-end: Laravel 12
  • Front-end: Inertia 2, Vue 3 Composition API, Tailwind, and shadcn-vue.
  • Database: MySQL
  • Testing: Pest PHP

Main Features

1. Task Management

  • Create, edit, duplicate, and delete tasks
  • Organize tasks by status and priority
  • Trash system with the ability to restore deleted tasks
  • DataTable for efficient task display List of tasks

2. Trash

  • List of tasks moved to the trash
  • Option to restore deleted tasks
  • Option to permanently remove tasks from the trash Deleted tasks

3. Dashboard

  • General task statistics
  • List of today's tasks
  • Task priority and progress tracking Welcome page

4. Advanced Filters

  • Filter by status and priority
  • Search and pagination

Database Structure

The application uses UUIDs as primary keys and softDeletes to allow record recovery.

Main Tables

tasks (Tasks Table)

  • id (UUID, Primary Key)
  • user_id (Integer, Foreign Key)
  • title (String)
  • description (Text, nullable)
  • status (Enum: TODO, IN_PROGRESS, COMPLETED)
  • priority (Enum: LOW, MEDIUM, HIGH)
  • label_id (UUID, Foreign Key)
  • started_at (Datetime, nullable)
  • completed_at (Datetime, nullable)
  • deleted_at (Datetime, nullable)
  • created_at (Datetime)
  • updated_at (Datetime)

task_labels (Task Labels)

  • id (UUID, Primary Key)
  • name (String, Index unique)
  • created_at (Datetime)
  • updated_at (Datetime)

Automated Testing

  • All controllers have integration tests using Pest
  • Tests for authentication, permissions, and task CRUD operations

Setup and Deployment

1. Installation

composer install
npm install
php artisan migrate --seed
npm run build
php artisan serve

2. Environment Configuration (.env)

  • Database: Configure MySQL credentials

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages