From ed8f87411b2e73c38fcd55c17cd7b759871592fd Mon Sep 17 00:00:00 2001 From: bart Date: Tue, 20 Oct 2026 22:39:48 +0200 Subject: [PATCH] Add AGENTS.md documentation for eendoeserver --- AGENTS.md | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..b323ba9 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,115 @@ +# 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: + ```bash + git add + 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: + ```bash + 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: + +```bash +# 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: +```bash +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 +```