Overzicht

Express.js is een snel, ongedwongen en minimalistisch webframework voor Node.js. Het biedt robuuste functies voor het bouwen van webapplicaties en REST API's met een focus op eenvoud en flexibiliteit.

Voordat je begint
Zorg ervoor dat je dashboard geopend is - je hebt de daar getoonde Git-inloggegevens nodig. Dit sjabloon bevat Prisma ORM, Sequelize, MySQL2, JWT-authenticatie, Socket.io en EJS-templating.

Snelstart

1

Repository aanmaken vanuit sjabloon

Ga in je dashboard naar het tabblad Tools & Deployment. Klik op de knop "New Repository", selecteer het Express-sjabloon uit het dropdownmenu, voer een repository-naam en subdomein in en klik vervolgens op "Create Repository".

2

Je repository klonen

git clone https://<git-server>/<username>/<repo-name>.git
cd <repo-name>
3

Afhankelijkheden installeren

npm install
4

Ontwikkelingsserver starten

npm run dev

De server draait standaard op http://localhost:3000.

5

Je wijzigingen pushen

git add .
git commit -m "Initial setup"
git push origin main
Elke push naar Git implementeert automatisch je applicatie. Bekijk je Module Work URL op het dashboard om je live site te zien.

Lokale ontwikkeling met Docker

Als je geen Node.js lokaal hebt geïnstalleerd, kun je Docker gebruiken om Express-commando's uit te voeren.

Wat is Docker?
Docker maakt geïsoleerde "containers" met alle software die je nodig hebt (Node.js, npm) zonder ze op je computer te installeren.

Commando's uitvoeren met Docker

# Run npm install
docker run --rm -v $(pwd):/app -w /app node:lts npm install

# Run development server
docker run --rm -v $(pwd):/app -w /app -p 3000:3000 node:lts npm run dev

Projectstructuur

├── src/
│   ├── controllers/          # Request-handlers
│   ├── middleware/           # Aangepaste middleware
│   ├── models/               # Databasemodellen
│   ├── routes/               # Route-definities
│   └── server.js             # Express app-setup
├── views/                    # EJS-templatebestanden
├── public/                   # Statische bestanden
├── prisma/                   # Prisma-schema
├── package.json              # Afhankelijkheden
└── Dockerfile                # Docker-configuratie
        

Veelvoorkomende taken

Een route aanmaken

const express = require('express');
const router = express.Router();

router.get('/users', (req, res) => {
  res.json({ message: 'Get all users' });
});

module.exports = router;

Prisma ORM gebruiken

const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();

const users = await prisma.user.findMany();
const user = await prisma.user.create({
  data: { name: 'John', email: 'john@example.com' }
});

Handige commando's

npm run dev Dev-server starten met nodemon
npm start Productieserver starten
npx prisma migrate dev Prisma-migraties uitvoeren

Probleemoplossing

Database connection failed

Oplossing: Controleer DATABASE_URL in het .env-bestand. Formaat: mysql://user:password@host:port/database

Port 3000 already in use

Oplossing: Wijzig PORT in het .env-bestand of stop het andere proces.

Implementatie-workflow

Codewijziging git push npm install Live!
Voor meer informatie kun je de officiële Express.js-documentatie raadplegen.