Pular para o conteúdo principal

Como Executar Localmente

Passo a passo para subir o sistema Ladesa no seu computador.

1. Clonar os repositórios

git clone https://github.com/ladesa-ro/api.git management-service
git clone https://github.com/ladesa-ro/web.git web
git clone https://github.com/ladesa-ro/gerar-horario-core.git timetable-generator
git clone https://github.com/ladesa-ro/mobile.git mobile
git clone https://github.com/ladesa-ro/docs.git docs

2. Subir infraestrutura via Docker

Os serviços de infraestrutura (PostgreSQL, Redis, RabbitMQ) podem ser iniciados com Docker Compose. O repositório do timetable-generator inclui um docker-compose.yml com o RabbitMQ:

cd timetable-generator
docker compose up -d message-broker

Para PostgreSQL e Redis, você pode usar containers individuais:

# PostgreSQL
docker run -d --name ladesa-postgres \
-e POSTGRES_USER=ladesa \
-e POSTGRES_PASSWORD=ladesa \
-e POSTGRES_DB=ladesa \
-p 5432:5432 \
postgres:15

# Redis
docker run -d --name ladesa-redis \
-p 6379:6379 \
redis:alpine

# Keycloak
docker run -d --name ladesa-keycloak \
-e KEYCLOAK_ADMIN=admin \
-e KEYCLOAK_ADMIN_PASSWORD=admin \
-p 8080:8080 \
quay.io/keycloak/keycloak:25.0.0 start-dev

3. Rodar o management-service (API)

cd management-service
bun install
bun run start:dev

A API estará disponível em http://localhost:3000. A documentação Swagger em http://localhost:3000/doc-api.

4. Rodar o frontend web

cd web/sisgha-sisgea
pnpm install
pnpm run dev

O frontend estará disponível em http://localhost:3100.

5. (Opcional) Rodar o solver

cd timetable-generator/Ladesa.TimetableGenerator.v1/Service
dotnet run

6. (Opcional) Rodar o app mobile

cd mobile/sisgha
flutter pub get
flutter run

Requer emulador ou dispositivo físico conectado.

7. (Opcional) Rodar a documentação

cd docs/docusaurus
bun install
bun run start

O site de documentação estará disponível em http://localhost:3000.