97 lines
1.9 KiB
Markdown
97 lines
1.9 KiB
Markdown
# Moraworld Imports — Software
|
|
|
|
Casillero internacional (EE.UU. → Ecuador). Monorepo con **Next.js**, **NestJS**, **PostgreSQL** y **Redis**.
|
|
|
|
## Requisitos
|
|
|
|
- Node.js 20+
|
|
- pnpm 9+ (ver instalación abajo si sale `command not found`)
|
|
- **Postgres + Redis** — en Coolify (recomendado) **o** Docker local
|
|
|
|
### Instalar pnpm (si no lo tienes)
|
|
|
|
```bash
|
|
npm install -g pnpm@9.15.0
|
|
```
|
|
|
|
Cierra y abre la terminal, luego:
|
|
|
|
```bash
|
|
pnpm -v # debe mostrar 9.15.x
|
|
```
|
|
|
|
**Alternativa sin instalar global** (usa npx):
|
|
|
|
```bash
|
|
npx pnpm@9.15.0 install
|
|
npx pnpm@9.15.0 dev
|
|
```
|
|
|
|
## Desarrollo local (paso a paso)
|
|
|
|
### 1. Variables de entorno
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
```
|
|
|
|
Pega `DATABASE_URL` y `REDIS_URL` de Coolify. Guía: **[docs/VARIABLES-COOLIFY.md](./docs/VARIABLES-COOLIFY.md)**
|
|
|
|
### 2. Infraestructura (solo si NO usas Coolify para BD)
|
|
|
|
```bash
|
|
pnpm docker:up
|
|
```
|
|
|
|
Levanta **PostgreSQL** (`localhost:5432`) y **Redis** (`localhost:6379`).
|
|
Si Postgres/Redis ya están en Coolify, **omite este paso**.
|
|
|
|
### 3. Instalar dependencias
|
|
|
|
```bash
|
|
pnpm install
|
|
```
|
|
|
|
### 4. Base de datos
|
|
|
|
```bash
|
|
pnpm db:generate
|
|
pnpm db:migrate
|
|
```
|
|
|
|
Nombre sugerido para la primera migración: `init`.
|
|
|
|
### 5. Arrancar apps
|
|
|
|
```bash
|
|
pnpm dev
|
|
```
|
|
|
|
| Servicio | URL |
|
|
|----------|-----|
|
|
| Web (Next.js) | http://localhost:3000 |
|
|
| API (NestJS) | http://localhost:3001/api/health |
|
|
| Estado | http://localhost:3000/status |
|
|
|
|
## Estructura
|
|
|
|
```
|
|
apps/
|
|
api/ # NestJS REST API
|
|
web/ # Next.js (landing + futuro portal)
|
|
packages/
|
|
database/ # Prisma + PostgreSQL
|
|
```
|
|
|
|
## Coolify
|
|
|
|
Ver **[docs/COOLIFY.md](./docs/COOLIFY.md)** para desplegar API y Web en Coolify (Postgres/Redis como servicios del panel o externos).
|
|
|
|
## Roadmap
|
|
|
|
Ver **[ROADMAP.md](./ROADMAP.md)** — Fase 0 en curso.
|
|
|
|
## Prototipos HTML (legacy)
|
|
|
|
Los archivos `index.html`, `portal-cliente.html`, etc. en la raíz del repo son maquetas de referencia hasta completar la migración a Next.js (Fase 1).
|