Saltar a contenido

🛠️ Entorno de Desarrollo

Configurar un entorno de desarrollo adecuado es el primer paso para trabajar con el P2P Dashboard. Esta sección te guiará a través de los requisitos y los pasos necesarios para tener tu entorno listo para desarrollar, probar y contribuir al proyecto.

Requisitos del Sistema

Antes de comenzar, asegúrate de que tu sistema cumple con los siguientes requisitos:

  • Sistema Operativo: Windows, macOS o Linux.
  • Python: Versión 3.9 o superior. Se recomienda usar pyenv (Linux/macOS) o pyenv-win (Windows) para gestionar múltiples versiones de Python.
  • Docker y Docker Compose: Para el despliegue de la base de datos PostgreSQL y otros servicios en contenedores.
  • Git: Sistema de control de versiones para clonar el repositorio y gestionar tus cambios.
  • Editor de Código: Se recomienda Visual Studio Code con las extensiones de Python y Docker.

Pasos para Configurar el Entorno

Sigue estos pasos para configurar tu entorno de desarrollo:

1. Clonar el Repositorio

Primero, clona el repositorio del P2P Dashboard desde GitHub:

git clone https://github.com/your-repo/p2p-dashboard.git # Reemplazar con el URL real del repositorio
cd p2p-dashboard

2. Configurar el Entorno Virtual de Python

Es altamente recomendable usar un entorno virtual para aislar las dependencias del proyecto de las de tu sistema global.

python -m venv .venv

Activar el entorno virtual:

  • Windows:
    .venv\Scripts\activate
    
  • macOS/Linux:
    source .venv/bin/activate
    

Verifica que el entorno virtual esté activo. Verás (.venv) al inicio de tu prompt de terminal.

3. Instalar Dependencias

Instala todas las dependencias del proyecto utilizando pip:

pip install -r requirements.txt
pip install -r requirements-dev.txt

4. Configurar Variables de Entorno

El proyecto utiliza variables de entorno para la configuración. Copia el archivo de plantilla y edítalo con tus valores.

copy .env.template .env # En Windows
# cp .env.template .env # En macOS/Linux

Edita el archivo .env y configura las variables necesarias, como las credenciales de la base de datos. Por ejemplo:

DATABASE_URL="postgresql://user:password@localhost:5432/p2p_db"
SECRET_KEY="tu_super_secreto_aqui"
ALGORITHM="HS256"
ACCESS_TOKEN_EXPIRE_MINUTES=30

5. Iniciar la Base de Datos con Docker Compose

Utiliza Docker Compose para levantar la base de datos PostgreSQL en un contenedor. Asegúrate de tener Docker Desktop (Windows/macOS) o Docker Engine (Linux) instalado y en ejecución.

docker-compose up -d db

Esto iniciará el contenedor de la base de datos en segundo plano. Puedes verificar su estado con docker-compose ps.

6. Aplicar Migraciones de Base de Datos

Una vez que la base de datos esté en funcionamiento, aplica las migraciones de Alembic para crear el esquema de la base de datos:

alembic upgrade head

Esto creará todas las tablas y relaciones necesarias en tu base de datos local.

7. Ejecutar la Aplicación

Ahora puedes iniciar la API de FastAPI en modo de desarrollo:

uvicorn p2p_api.main:app --reload

La API estará disponible en http://localhost:8000. Puedes acceder a la documentación interactiva de la API (Swagger UI) en http://localhost:8000/docs.

¡Felicidades! Tu entorno de desarrollo para el P2P Dashboard está configurado y listo para usar.