Skip to content

Fit0/task-manager

Repository files navigation

Task Manager

Aplicación fullstack de gestión de tareas construida con Laravel 13 (API REST) y Vue 3 (SPA).

Stack

  • Backend: Laravel 13, PHP 8.4, SQLite
  • Frontend: Vue 3, Pinia, Vue Router, Vite
  • Auth: Laravel Sanctum (Bearer token)
  • Tests: Pest (13 tests, 100% passing)
  • Entorno: Docker

Requisitos

  • Docker
  • Docker Compose

Instalación

git clone <repo>
cd task-manager
cp .env.example .env
touch database/database.sqlite
docker compose up -d
docker compose exec app php artisan key:generate
docker compose exec app php artisan migrate --seed

Accede a:

Endpoints API

Método Endpoint Descripción Auth
POST /api/v1/register Registro No
POST /api/v1/login Login No
POST /api/v1/logout Logout
GET /api/v1/me Usuario actual
GET /api/v1/tasks Listar tareas
POST /api/v1/tasks Crear tarea
GET /api/v1/tasks/{id} Ver tarea
PUT /api/v1/tasks/{id} Editar tarea
DELETE /api/v1/tasks/{id} Eliminar tarea

Tests

docker compose exec app ./vendor/bin/pest

Decisiones técnicas

Sanctum con Bearer token en lugar de JWT porque es la solución oficial de Laravel, más simple de configurar y suficiente para una SPA con backend propio.

SQLite para desarrollo por su simplicidad — en producción se cambiaría a MySQL o PostgreSQL modificando únicamente las variables de entorno.

Pinia en lugar de Vuex porque es el gestor de estado oficial desde Vue 3, con una API más simple basada en Composition API.

Policies para autorización en lugar de middleware porque permiten granularidad por acción y por recurso, y se integran limpiamente con $this->authorize().

About

Fullstack task management app built with Laravel 13 REST API and Vue 3 SPA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors