diyaa.de/README.md
2026-03-13 03:45:13 +01:00

1.4 KiB

Diyaa Website

A bilingual Next.js website prepared for deployment on a private Linux VPS with Docker.

Stack

  • Next.js 14
  • React 18
  • TypeScript
  • Docker / Docker Compose

Local setup

  1. Copy .env.example to .env
  2. Fill in NEXT_PUBLIC_SITE_URL and your real contact links
  3. Choose NEXT_PUBLIC_SITE_MODE=coming-soon or NEXT_PUBLIC_SITE_MODE=full
  4. Install dependencies with npm install
  5. Run npm run dev

Quality checks

  • npm run lint
  • npm run typecheck
  • npm run build
  • npm run check

Docker workflow

  • make build
  • make start
  • make ps
  • make logs
  • make stop

The container healthcheck uses /api/health.

STRATO VPS deployment notes

  1. Install Docker Engine and Docker Compose plugin on the VPS.
  2. Clone the repository on the server.
  3. Create .env from .env.example and set a real domain in NEXT_PUBLIC_SITE_URL.
  4. Run make build once, then make start.
  5. Place Nginx or Caddy in front of the container for HTTPS and domain routing.
  6. Point your domain to the VPS public IP and enable SSL at the reverse-proxy layer.

Environment variables

  • APP_PORT: external port exposed by Docker Compose
  • NEXT_PUBLIC_SITE_URL: canonical site URL used by metadata and sitemap
  • NEXT_PUBLIC_SITE_MODE: coming-soon or full
  • NEXT_PUBLIC_CONTACT_EMAIL: public email shown on the contact page
  • NEXT_PUBLIC_LINKEDIN_URL: LinkedIn profile URL
  • NEXT_PUBLIC_GITHUB_URL: GitHub profile URL