🚀 Guía de Configuración y Desarrollo
Esta guía te llevará paso a paso para configurar tu entorno de desarrollo local para trabajar con la plataforma Rial AI. Está diseñada especialmente para desarrolladores que están comenzando en el mundo de la programación.
📋 Prerrequisitos
Antes de comenzar, necesitarás obtener acceso a varios servicios y herramientas. Esta sección te explica qué necesitas y cómo obtenerlo.
🔑 Permisos y Accesos Necesarios
1. GitHub
- Cómo obtenerlo: Solicita acceso al administrador del equipo para formar parte de la organización de GitHub de Rial AI
- Repositorios de la plataforma:
rial-backend- APIrial-frontend- Aplicación web
2. Supabase
- ¿Qué es? Plataforma de base de datos como servicio, ahí está la base de datos de la plataforma
- Cómo obtenerlo: Solicita acceso al administrador del equipo para acceder al proyecto de Supabase de Rial AI
3. Google Cloud Platform (GCP)
- ¿Qué es? Plataforma de servicios en la nube de Google. Aquí esta subido el frontend, backend, los buckets de imágenes y los servicios de Google Cloud como DNS.
- Cómo obtenerlo: Solicita acceso al proyecto en GCP.
4. Squarespace
- ¿Qué es? Servicio donde está registrado nuestro dominio.
- Cómo obtenerlo: Solicita acceso al administrador del equipo
5. Doppler
- ¿Qué es? Servicio para gestionar variables de entorno de forma segura.
- ¿Por qué lo necesitas? Para poder tener los secretos necesarios para correr la plataforma de forma local.
- Cómo obtenerlo: Solicita acceso al workspace de Rial AI
🛠️ Instalación de Herramientas
1. 📦 Node.js
Node.js es el entorno de ejecución para JavaScript en el servidor. Es necesario para correr la plataforma de forma local.
Instalación
- Ve a nodejs.org
- Descarga la versión LTS (Long Term Support)
- Ejecuta el instalador y sigue las instrucciones
- Verifica la instalación:
node --version # Debería mostrar algo como v18.17.0
npm --version # Debería mostrar algo como 9.6.72. 🧶 Yarn
Yarn es nuestro gestor de paquetes para descargar dependencias/librerías (más rápido y confiable que npm).
Instalación
npm install -g yarnVerificación
yarn --version # Debería mostrar algo como 1.22.193. 🐳 Docker Desktop
Docker nos permite ejecutar aplicaciones en contenedores aislados. En este caso lo usamos para correr una base de datos de Supabase de forma local.
Instalación
- Ve a docker.com/products/docker-desktop
- Descarga Docker Desktop para tu sistema operativo
- Instala y ejecuta Docker Desktop
- Verifica la instalación:
docker --version # Debería mostrar algo como Docker version 24.0.64. 🔧 Git
Git es nuestro sistema de control de versiones.
¿Qué es Git?
Git es la herramienta necesario para clonar y gestionar los repositorios de GitHub.
Instalación
- macOS: Git viene preinstalado, o instala con
brew install git - Windows: Descarga desde git-scm.com
- Linux:
sudo apt install git(Ubuntu/Debian)
Configuración Inicial
Es necesario configurar Git con tu nombre y correo electrónico para que puedas hacer commits.
git config --global user.name "Tu Nombre"
git config --global user.email "tu.email@ejemplo.com"5. 💻 Editor de Código
Necesitas un editor de código potente para desarrollo. Recomiendo siempre usar editores con agentes de IA integrados.
Opciones Recomendadas
- VS Code: code.visualstudio.com - Contiene Copilot
- Cursor: cursor.sh - VS Code con IA integrada
- Windsurf: windsurf.ai - Parecido a Cursor pero con un plan más económico
Extensiones Recomendadas para VS Code
- Prettier: Formatea automáticamente tu código
- ESLint: Detecta errores y problemas de estilo
- Prisma: Soporte para archivos de esquema de Prisma
- Live Share: Colaboración en tiempo real con otros desarrolladores
- Material Icon Theme: Iconos bonitos para los archivos
- Postman: Herramienta para probar APIs
- Tailwind CSS IntelliSense: Auto-completado para Tailwind CSS
📥 Clonación de Proyectos
1. Crear Directorio de Trabajo
mkdir ~/rial-ai
cd ~/rial-ai2. Clonar Backend
git clone https://github.com/Rial-Cenia/rial-backend.git
cd rial-backend3. Clonar Frontend
cd ~/rial-ai
git clone https://github.com/Rial-Cenia/rial-frontend.git
cd rial-frontend🔧 Configuración del Backend
1. Instalar Dependencias
cd ~/rial-ai/rial-backend
yarn install¿Qué hace yarn install?
- Lee el archivo
package.json - Descarga todas las librerías necesarias
- Crea la carpeta
node_modulescon las dependencias - Genera/actualiza
yarn.lockpara versiones consistentes
2. Configurar Variables de Entorno
Debes crear un archivo .env en el directorio del backend con las variables de entorno obtenidas de Doppler.
3. Configurar Base de Datos
Instalar Supabase CLI
# macOS
brew install supabase/tap/supabase
# Windows/Linux
npm install -g supabaseInicializar Supabase Local
# Debes hacerlo desde el directorio del frontend
cd ~/rial-ai/rial-frontend
supabase init
supabase start¿Qué hace supabase start?
- Inicia una instancia local de PostgreSQL
- Configura la base de datos con el esquema necesario
- Proporciona URLs locales para desarrollo
4. Ejecutar Migraciones
# Aplicar todas las migraciones a la base de datos
yarn prisma migrate dev5. Generar Cliente de Prisma
yarn prisma generate¿Qué hace prisma generate?
- Lee el archivo
schema.prisma - Genera tipos de TypeScript automáticamente
- Crea el cliente de Prisma para hacer consultas
6. Iniciar el Servidor de Desarrollo
yarn start:devEsto expone la API en http://localhost:4000
7. Acceder a la base de datos
yarn prisma studioSe abrirá una interfaz web para explorar la base de datos
🌐 Configuración del Frontend
1. Instalar Dependencias
cd ~/rial-ai/rial-frontend
yarn install2. Configurar Variables de Entorno
Debes crear un archivo .env.local en el directorio del frontend con las variables de entorno obtenidas de Doppler.
3. Iniciar el Servidor de Desarrollo
yarn devEsto expone la aplicación en http://localhost:3000
🐛 Solución de Problemas Comunes
Error: “Puerto ya en uso”
# Encontrar qué proceso usa el puerto
lsof -i :3000
# Terminar el proceso
kill -9 <PID>Error: “No se puede conectar a la base de datos”
- Verifica que Supabase esté ejecutándose:
supabase status - Revisa la variable
DATABASE_URLen.env - Reinicia Supabase:
supabase stop && supabase start
Error: “Módulo no encontrado”
# Limpiar caché y reinstalar. También puedes intentar cerrar y abrir el editor de código
rm -rf node_modules yarn.lock
yarn install🔄 Comandos de Desarrollo Diarios
Backend
# Iniciar desarrollo
yarn start:dev
# Ejecutar tests
yarn test
# Ejecutar tests e2e
yarn test:e2e
# Linting
yarn lint
# Verificar tipos
yarn type-check
# Ver logs de base de datos
yarn prisma studioFrontend
# Iniciar desarrollo
yarn dev
# Ejecutar tests
yarn test
# Linting
yarn lint
# Build para producción
yarn buildGit (Ambos proyectos)
# Ver estado actual
git status
# Crear nueva rama para feature
git checkout -b feature/nueva-funcionalidad
# Agregar cambios
git add .
# Hacer commit
git commit -m "feat: agregar nueva funcionalidad"
# Subir cambios
git push origin feature/nueva-funcionalidad🎯 Próximos Pasos
Una vez que tengas todo configurado:
- 📖 Lee el Diccionario Técnico - Familiarízate con los términos
- 🔍 Explora el Esquema de Base de Datos - Entiende la estructura de datos
- 🌊 Aprende el Flujo de Trabajo - Conoce nuestra metodología
- 🧪 Practica con Testing - Aprende a escribir y ejecutar tests
¿Tienes problemas con la configuración? ¡No dudes en contactar al equipo de desarrollo o hablar por el canal de #rial-dev en Discord!