Skip to content

Getting Started

Welcome! This guide will help you get started with development on the Portugal Odyssey platform.

Quick Start

  1. Set up your development environmentLocal Setup
  2. Configure environment variablesEnvironment Setup
  3. Make your first contributionFirst Contribution
  4. Log in to the consoles for manual testingFrontend Authentication

Prerequisites

Before you begin, ensure you have:

  • Docker Desktop or Docker Engine 24+
  • Docker Compose v2
  • Node.js 20+ (for local development outside Docker)
  • npm 9+ or yarn
  • Git
  • Code editor (VS Code recommended)

Development Workflow

1. Clone the Repository

git clone https://gitlab.com/portugalodissey/po-platform.git
cd po-platform

2. Set Up Environment

# Copy environment templates
cp infrastructure/env-templates/.env.development .env.dev
cp infrastructure/env-templates/.env.qualification .env.qual
cp infrastructure/env-templates/.env.production .env.prod

# Edit .env.dev with your local configuration
nano .env.dev

3. Start Development Stack

# Create Docker networks (first time only)
make networks

# Start the full development stack
make dev

# Or start just infrastructure
make infrastructure

4. Verify Setup

  • Public frontend: https://public-fo-dev.portugalodyssey.pt
  • Strapi CMS: https://cms-dev.portugalodyssey.pt
  • API Gateway: https://api-dev.portugalodyssey.pt
  • Traefik dashboard: http://localhost:8080

Next Steps

Common Tasks

Running a Service Locally

cd services/[service-name]
npm install
npm run dev

Running Tests

# Project-level tests
npm test

# Service-specific tests
cd services/[service-name]
npm test

Building for Production

# Build a service
cd services/[service-name]
npm run build

# Build Docker image
make build SERVICE=[service-name] ENV=qual

Getting Help

See Also