Skip to content

VEMAP Quick Start

Welkom bij de VEMAP applicatie! Deze guide helpt je om snel aan de slag te gaan met het opstarten en configureren van een ontwikkelomgeving voor de VEMAP applicatie.

ToolVersieGebruik
Node.js18^Frontend ontwikkeling
Python3.12Backend en MMMS ontwikkeling (maximaal ondersteunde versie door AWS Chalice)
Git-Versiebeheer
AWS CLI-Deployment (optioneel voor lokale ontwikkeling)
Terminal window
# Frontend repository
git clone https://github.com/{gebuikersnaam}@MAPtrafficmanagement/vemap-frontend.git
cd vemap-documentation/frontend
# Backend (Core API)
git clone https://github.com/{gebuikersnaam}@MAPtrafficmanagement/vemap-backend.git
cd vemap-backend
file-locatie/vemap-frontend/frontend
# Open de .code-workspace in VS Code
npm install

Opstarten van de development server voor de frontend. De default poort is http://localhost:4321.

file-locatie/vemap-frontend/frontend
npm run dev
Terminal window
# Development
npm start
# Of
npm run dev
Terminal window
# Deploy naar Netlify
npm run deploy
# node scripts/generate-build-id.js && netlify deploy --prod --build

De npm run deploy command is een alias voor de volgende command:

Terminal window
node scripts/generate-build-id.js && netlify deploy --prod --build

Het zorgt ervoor dat de build ID wordt gegenereerd, voor client side cache busting. Vervoglens worden alle tests gedraaid via het geconfigureerde predeploy script.

package.json
{
"name": "vemap-frontend",
"short": "vemap",
"type": "module",
"version": "1.0.0",
"scripts": {
"start": "astro dev",
"dev": "astro dev",
"astro": "astro",
"test": "vitest run",
"test:watch": "vitest",
"test:coverage": "vitest run --coverage",
"deploy": "node scripts/generate-build-id.js && netlify deploy --prod --build",
"predeploy": "npm run test"
},
"dependencies": {
...
},
"devDependencies": {
...
}
}

E:/Dev/vemap-backend
# 1. Maak virtual environment met Python 3.12 in de root van het project
python -m venv venv312
# 2. Navigeer naar de backend directory
cd backend
# 3. Activeer virtual environment
..\venv312\Scripts\activate
file-locatie/vemap-backend/backend
# Draai de dependencies installatie in de virtual environment
pip install -r requirements.txt
chalice>=1.26.0
boto3>=1.26.0
psycopg2-binary>=2.9.0
pydantic>=2.0.0
email-validator>=2.0.0
requests>=2.31.0
E:/Dev/vemap-backend/backend
# Start de development server
chalice local

Het opstarten van de development backendserver gebeurt default op poort http://localhost:8000. Voor het configureren van een andere poort, voeg de --port parameter toe aan het commando, gevolgd door de poort nummer.

De backend API is nu beschikbaar op http://localhost:8000.


Terminal window
# MMMS (Mail Microservice)
git clone https://github.com/{gebuikersnaam}@MAPtrafficmanagement/vemap-mmms.git
cd vemap-mmms
E:/Dev/mmms
# 1. Maak virtual environment met Python 3.12 in de root van het project
python -m venv venv312
# 2. Activeer virtual environment
venv312\Scripts\activate
file-locatie/mmms
# Draai de dependencies installatie in de virtual environment
pip install -r requirements.txt
boto3>=1.34.0
botocore>=1.34.0
chalice>=1.26.0
psycopg2-binary>=2.9.0
pydantic>=2.0.0
email-validator
E:/Dev/mmms
# Start de development server
chalice local --port 8001

De MMMS API is nu beschikbaar op http://localhost:8001.


Voornemen: Er zijn plannen om een aparte development database aan te maken om conflicten met klantdata te voorkomen. Dit zorgt voor een veilige ontwikkelomgeving zonder risico op data corruptie in productie.

Huidige situatie: Voor nu wordt de bestaande database gebruikt voor development.


Terminal window
aws configure
Terminal window
# Backend
export AWS_REGION=eu-west-1
export DATABASE_URL=postgresql://user:pass@host:5432/db
# MMMS
export AWS_REGION=eu-west-1
export SES_REGION=eu-west-1
export SQS_QUEUE_URL=https://sqs.eu-west-1.amazonaws.com/account/queue