Este es el backend para la plataforma Certify, construido con FastAPI, SQLAlchemy (async) y PostgreSQL.
El proyecto gestiona las siguientes entidades:
- Usuarios (Users) y Autenticación
- Cursos (Courses)
- Módulos (Modules)
- Lecciones (Lessons)
- Inscripciones (Course Enrollments)
- Progreso del Usuario (User Progress)
- Certificados (Certificates) y sus Tipos (Certificate Types)
- Auditoría de Certificados (Certificate Audit)
- Python 3.10+
uv(Recomendado para manejar paquetes y el entorno virtual)- PostgreSQL (opcional para desarrollo local, soporta SQLite temporal)
- Clonar o descargar el repositorio.
- Crear y activar entorno virtual:
uv venv source .venv/bin/activate - Instalar dependencias:
uv pip sync requirements.txt
- Variables de entorno:
Copia el archivo
.env.examplea.envy configura los valores (por ejemplo,DATABASE_URL, JWT secret, etc.).cp .env.example .env
Puedes iniciar el servidor de desarrollo utilizando el CLI de FastAPI o Uvicorn:
fastapi dev app/main.pyO usando uvicorn directamente:
uvicorn app.main:app --reloadUna vez que la aplicación esté corriendo, la documentación interactiva generada por FastAPI estará disponible en:
- Swagger UI: http://localhost:8000/docs
- ReDoc: http://localhost:8000/redoc