- Python 3.8 o superior
- MySQL
- pip (gestor de paquetes de Python)
- Clonar el repositorio:
git clone https://github.com/gobiernodigitalmonterrey/gdmty-gracias-ma-backend.git
cd gdmty-gracias-ma-backend
- Instalar las dependencias:
pip install -r requirements.txt
- Crear una base de datos MySQL llamada
gracias_ma
:
CREATE DATABASE gracias_ma;
- Configurar las credenciales de la base de datos:
El proyecto está configurado para conectarse a MySQL con las siguientes credenciales:
Usuario: root
Contraseña: 1234
Host: localhost
Base de datos: gracias_ma
Si necesitas cambiar estas credenciales, modifica el archivo app/db/database.py
:
SQLALCHEMY_DATABASE_URL = "mysql+mysqlconnector://usuario:contraseña@host/gracias_ma"
PATH_KEYS_JSON=/Users/martin/Desktop/SIGA/gdmty-gracias-ma-backend/app/keys/god-datastore-dev-24292c5052e8.json
BUCKET_NAME=god-gracias-ma
- Iniciar el servidor de desarrollo:
python -m dotenv run -- uvicorn main:app --reload
docker build -t nombre_contendor .
docker run -d -p 8000:8000 nombre_contendor
El servidor se iniciará en http://127.0.0.1:8000
Una vez que el servidor esté en ejecución, puedes acceder a la documentación interactiva de la API en:
- Swagger UI:
http://127.0.0.1:8000/docs
- ReDoc:
http://127.0.0.1:8000/redoc
- POST
/formulario/enviar_formulario
: Envía un nuevo formulario con los datos del usuario y archivos adjuntos (INE frontal, INE reverso, acta de nacimiento).
main.py
: Punto de entrada de la aplicaciónapp/db/
: Configuración de la base de datos y modelosapp/routers/
: Definición de rutas y endpointsapp/views/
: Lógica de negocioapp/schemas.py
: Esquemas de datos para validaciónuploads/
: Directorio donde se almacenan los archivos subidos
- El sistema crea automáticamente un directorio
uploads
para almacenar los archivos subidos. - Las tablas de la base de datos se crean automáticamente al iniciar la aplicación.