Files

5.0 KiB

AGENTS.md — eendoeserver (eendoe.nl & web03)

Instructies, architectuur, ontwerpregels en deploymentprocedures voor AI-agents en ontwikkelaars die werken binnen deze repository.


🎯 1. Overzicht & Doel

Deze repository (eendoeserver) beheert de bronbestanden, styling, documentatie en Apache 2.4 VirtualHost-configuraties voor de standalone productieserver web03 (eendoe.nl en bm4.nl).

Kerncomponenten:

  • eendoe/: De publieke document root voor de website van Eendoe Services (index.html, assets, stylesheets, scripts).
  • vhosts/: Apache VirtualHost configuraties geïncludeerd op de host via Include /sites/vhosts/*.conf.

🖥️ 2. Productieomgeving & Architectuur

  • Server: Standalone Linux host web03 (eendoe.nl).
  • SSH Toegang: bart@eendoe.nl (authenticatie via SSH keys).
  • Webserver: Apache 2.4 met HTTP/2 ondersteuning (mod_ssl, mod_rewrite, mod_http2).
  • Pad op productieserver:
    • Website document root: /sites/eendoe/
    • Apache vhosts: /sites/vhosts/
    • Debian package repository (zie ook package-repo): /sites/repository/
  • SSL/TLS: Let's Encrypt certificaten via Certbot (/etc/letsencrypt/).

🎨 3. Ontwerpregels & Frontend Conventies

⚠️ Belangrijk: Behoud de authentieke stijl ("Minder AI, meer Elate")

De website is gebouwd op basis van het klassieke Elate template van FREEHTML5.co.

  1. Geen moderne AI/SaaS-saus:
    • Vermijd geforceerde glassmorphism, zwevende SaaS feature cards, zware box-shadows, gekleurde border-glows of overdadige gradient-knoppen.
    • Houd interacties en layouts consistent met de bestaande rustige, zakelijke en minimalistische uitstraling.
  2. Typografie & Kleuren:
    • Basistekst: #7f7f7f, koppen: #393e46, achtergronden: #f7f7f7 of #ffffff.
    • Primaire themakleur: #52d3aa (turquoise / mintgroen).
  3. Framework & Bibliotheken:
    • Bootstrap 3.3.5: Gebruik native Bootstrap 3 componenten (bijv. modals voor popups, grid col-md-*, col-sm-*).
    • jQuery & Plugins: jquery.min.js, jquery.easing, jquery.stellar, jquery.waypoints.
    • Iconen: Icomoon (icon-phone, icon-envelope, icon-home, icon-globe, etc.).
  4. Taal & Toon:
    • Alle teksten op de website zijn in zakelijk, foutloos en bondig Nederlands.

🚀 4. Workflow & Deployment

A. Wijzigingen aanbrengen & lokaal testen

  • Pas bronbestanden aan binnen eendoe/ (of vhosts/ indien van toepassing).
  • Valideer HTML-syntax en controleer dat er geen ongebalanceerde tags ontstaan.
  • Zorg dat gecompileerde CSS (css/style.css) en SCSS (sass/style.scss) synchroon blijven.

B. Committen en pushen (Git)

  • Werk vanuit de submodule of clone:
    git add <gewijzigde bestanden>
    git commit -m "Korte beschrijving van de wijziging"
    git push origin main
    
  • Bij gebruik als submodule binnen de centrale cluster repository: werk daarna de submodule pointer in de root repository bij:
    git -C .. add eendoeserver
    git -C .. commit -m "Update eendoeserver submodule pointer"
    git -C .. push origin main
    

C. Deployen naar productie (web03)

De live website wordt direct geserveerd vanuit /sites/eendoe/ op eendoe.nl. Deployment gebeurt via rsync over SSH:

# 1. Droogloop (optioneel, om te controleren wat er overgezet wordt):
rsync -n -avz eendoe/ bart@eendoe.nl:/sites/eendoe/

# 2. Live deploy van de website:
rsync -avz eendoe/ bart@eendoe.nl:/sites/eendoe/

# 3. Live verificatie:
curl -sI https://eendoe.nl | head -n 5

Note

Gebruik geen --delete bij rsync op /sites/eendoe/ zonder expliciete controle, om te voorkomen dat server-specifieke scripts (zoals install-repo.sh of submappen) onbedoeld worden verwijderd.

D. VirtualHosts bijwerken (indien van toepassing)

Als configuraties in vhosts/ zijn gewijzigd:

rsync -avz vhosts/ bart@eendoe.nl:/sites/vhosts/
ssh bart@eendoe.nl "sudo apache2ctl configtest && sudo systemctl reload apache2"

📋 5. Bestandsstructuur

eendoeserver/
├── AGENTS.md                  # Dit instructiebestand
├── README.md                  # Korte repo-beschrijving
├── eendoe/                    # Document root
│   ├── index.html             # Hoofdpagina eendoe.nl / bm4.nl
│   ├── css/                   # Gecompileerde stylesheets (style.css, bootstrap.css)
│   ├── sass/                  # SASS bronbestanden (style.scss)
│   ├── js/                    # JavaScript (Bootstrap, jQuery, plugins, main.js)
│   ├── images/                # Afbeeldingen en logo's (work_*.jpg, contact.jpg)
│   ├── fonts/                 # Icomoon en Glyphicons lettertypen
│   └── documents/             # PDF downloads (zoals algemene voorwaarden)
└── vhosts/                    # Apache 2.4 configuraties
    ├── 20_eendoe.conf         # HTTP vhost
    ├── 20_eendoe-le-ssl.conf  # HTTPS vhost eendoe.nl / bm4.nl
    └── 20_repository.conf     # APT repository vhost