Repositorio de práctica con FastAPI. Actualmente incluye un pequeño CRUD de registro de usuarios con formularios HTML (Jinja2) y PostgreSQL.
- Python 3.12+
- uv
- PostgreSQL
-
Instala las dependencias:
uv sync
-
Crea la base de datos y la tabla de usuarios en PostgreSQL:
CREATE TABLE usuarios ( id SERIAL PRIMARY KEY, nombre VARCHAR(100) NOT NULL, apellido_paterno VARCHAR(100) NOT NULL, apellido_materno VARCHAR(100) NOT NULL, email VARCHAR(255) UNIQUE NOT NULL, fecha_nacimiento DATE NOT NULL );
-
Copia
.env.examplea.envy ajusta las credenciales de tu base de datos:cp .env.example .env
uv run uvicorn app:app --reloadLa aplicación queda disponible en http://localhost:8000.
| Ruta | Método | Descripción |
|---|---|---|
/ |
GET | Redirige al formulario de registro |
/registro |
GET | Muestra el formulario de registro |
/registro |
POST | Registra un nuevo usuario |
/usuarios |
GET | Muestra la tabla de usuarios registrados |
La documentación interactiva de la API está en http://localhost:8000/docs.
├── app.py # Aplicación FastAPI y rutas
├── database.py # Conexión y consultas a PostgreSQL
├── templates/ # Plantillas Jinja2
│ ├── registro.html
│ └── usuarios.html
├── pyproject.toml # Dependencias del proyecto
└── .env.example # Plantilla de variables de entorno