Skip to content

franamaro-dev/Store-Inventory-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Store Inventory API

Una API REST moderna, asíncrona y orientada a producción para la gestión de inventarios.

📌 Descripción del Proyecto

Este repositorio es una demostración técnica de Backend Generalista. Implementa un CRUD (Crear, Leer, Actualizar, Borrar) completo utilizando los estándares actuales de la industria para microservicios de alto rendimiento.

En lugar de usar frameworks pesados (como Django) o código síncrono legado, esta API utiliza FastAPI junto con soporte asíncrono puro (asyncpg) para hablar con PostgreSQL. Esto garantiza tiempos de respuesta mínimos y máxima concurrencia.

⚙️ Arquitectura Técnica

  • Framework: FastAPI (Python 3.11+)
  • Base de Datos: PostgreSQL
  • ORM: SQLAlchemy 2.0 (Async Engine)
  • Validación & Serialización: Pydantic V2
  • Orquestación: Docker & Docker Compose

🚀 Instalación y Despliegue Local

Con docker-compose, levantar el entorno (que incluye la base de datos y la API en redes segregadas) requiere un solo comando:

git clone https://github.com/franamaro-dev/Store-Inventory-API.git
cd Store-Inventory-API

# Levanta Postgres y FastAPI en segundo plano
docker-compose up -d --build

📖 Autodocumentación Interactiva (Swagger UI)

FastAPI genera automáticamente la documentación interactiva OpenAPI. Una vez que los contenedores estén corriendo, visita: 👉 http://localhost:8000/docs

🛠️ Patrones de Diseño Implementados

  1. Repository Pattern Acoplado: Separación estricta entre las rutas (routers/), validación de contratos de entrada/salida (schemas.py), modelos de base de datos (models.py) y transacciones puras (crud.py).
  2. Inyección de Dependencias: Gestión segura de las sesiones de base de datos (async_sessionmaker) inyectadas directamente en los endpoints mediante Depends().
  3. Gestión de Variables de Entorno: Utilización segura de pydantic-settings para la configuración del entorno.

About

Enterprise-grade REST API with FastAPI, SQLAlchemy 2.0, Alembic migrations, and JWT Security.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors