Este proyecto es una API REST desarrollada en Laravel para la asignacion de tareas, mediante usuarios y roles. Utiliza Sanctum para la autenticación de usuarios, permitiendo un acceso seguro mediante login. Está diseñado como un entorno backend y puede ser integrado con frameworks frontend como React o Next.js.
- Autenticación segura: Implementación de autenticación basada en tokens con Laravel Sanctum.
- CRUD completo: Operaciones de creación, lectura, actualización y eliminación para los recursos de las tareas asignadas.
- Arquitectura escalable: Diseñado para integrarse fácilmente con cualquier frontend moderno.
- Documentación de endpoints: Incluye una colección de Postman para facilitar el uso de la API.
- PHP >= 8.1
- Composer
- MySQL o cualquier base de datos compatible
- Laravel 11
- Node.js (opcional, para integraciones frontend)
-
Clona este repositorio:
git clone https://github.com/JoseNava100/laravel-api-rest-to-do-list cd laravel-api-rest-to-do-list
-
Instala las dependencias de PHP:
composer install
-
Configura el archivo
.env
:- Copia el archivo de ejemplo:
cp .env.example .env
- Configura las variables de entorno, como la conexión a la base de datos.
- Copia el archivo de ejemplo:
-
Genera la clave de la aplicación:
php artisan key:generate
-
Ejecuta las migraciones para crear las tablas necesarias:
php artisan migrate
-
(Opcional) Llena la base de datos con los datos de prueba configurados:
php artisan db:seed
-
Inicia el servidor de desarrollo:
php artisan serve
Método | Endpoint | Descripción | Autenticación |
---|---|---|---|
POST | /api/register |
Registrar un nuevo usuario | No |
POST | /api/# |
Iniciar sesión y obtener token | No |
GET | /api/Task |
Listar todas las tareas | Sí |
POST | /api/Task |
Crear una nueva tarea | Sí |
GET | /api/Task /{id} |
Obtener detalles de una tarea | Sí |
PUT/PATCH | /api/Task /{id} |
Actualizar una tarea existente | Sí |
DELETE | /api/Task /{id} |
Eliminar una tarea | Sí |
POST | /api/logout |
Cerrar sesión | Sí |
Este proyecto utiliza Laravel Sanctum para la autenticación basada en tokens. Asegúrate de incluir el token en el encabezado de cada solicitud autenticada:
Authorization: Bearer <tu-token>
Esta API está preparada para ser consumida por frameworks frontend como React o Next.js. Puedes realizar solicitudes HTTP utilizando bibliotecas como Axios o Fetch API.
import axios from 'axios';
const api = axios.create({
baseURL: 'http://127.0.0.1::8000/api',
headers: {
Authorization: `Bearer ${tuToken}`,
},
});
// Obtener todos los carros
api.get('/cars')
.then(response => console.log(response.data))
.catch(error => console.error(error));
Este proyecto fue creado por JoseNava100.
---#