Backend de gestión de inventario construido con Django y Django REST Framework.
Este proyecto permite administrar productos, registrar movimientos de stock y obtener métricas de inventario mediante una API REST segura.
- Python 3.13
- Django 6
- Django REST Framework
- SQLite (por defecto)
- Token Authentication
- django-filter
- CRUD completo de productos
- Activación/desactivación (
is_active) - Cálculo dinámico de stock (
current_stock) - Búsqueda, filtros y ordenamiento
- Paginación
- Registro de entradas (IN)
- Registro de salidas (OUT)
- Validación de stock insuficiente
- Validación de producto inactivo
Endpoints personalizados:
/api/products/low_stock/— productos bajo mínimo/api/products/summary/— resumen general del inventario
- Autenticación por Token
- Permisos globales (
IsAuthenticated)
git clone <https://github.com/shuelgos/stock_flow>
cd stockflowpython -m venv venvActivar en Windows:
venv\Scripts\activateActivar en Linux / Mac:
source venv/bin/activatepip install -r requirements.txtpython manage.py migratepython manage.py createsuperuserpython manage.py runserverLa API utiliza Token Authentication.
Incluir en cada request el header:
Authorization: Token <tu_token>
GET /api/products/POST /api/products/GET /api/products/{id}/PUT /api/products/{id}/DELETE /api/products/{id}/
GET /api/movements/POST /api/movements/
GET /api/products/low_stock/GET /api/products/summary/
En desarrollo activo.
- Transacciones atómicas
- Optimización SQL del stock
- Tests automatizados
- Documentación OpenAPI
- Frontend dashboard
Proyecto desarrollado como práctica de backend con Django REST Framework.