Geen omschrijving
  • Astro 84.3%
  • CSS 9.2%
  • Dockerfile 2.7%
  • TypeScript 1.9%
  • HTML 1%
  • Andere 0.9%
Zoek een bestand
Jesse van Mullem f06425f0f4 Merken-sectie verbergen bij lege lijst
Brands.astro rendert niets meer wanneer de merkenlijst leeg is, i.p.v.
een lege sectie te tonen. Werkt automatisch door op zowel de home- als
de casual-pagina, en de sectie verschijnt vanzelf weer zodra er merken
worden toegevoegd. Lokaal getest: geen Merken-sectie op home/casual,
geen console-fouten.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-13 19:55:54 +02:00
public CMS: overstap van Decap naar Sveltia (config ongewijzigd) 2026-07-13 19:49:32 +02:00
src Merken-sectie verbergen bij lege lijst 2026-07-13 19:55:54 +02:00
.dockerignore Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
.env.example Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
.gitignore Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
.nvmrc Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
astro.config.mjs Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
Dockerfile Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
nginx.conf Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
package-lock.json Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
package.json Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00
README.md Adres naar Smedenstraat 12 (7411 RC), Zwolle verwijderd, uniforme galerij 2026-06-06 20:45:00 +02:00
tsconfig.json Moderne Astro + Decap CMS herbouw van aldinomoda.nl 2026-06-06 20:23:54 +02:00

Aldino Moda — website

Moderne herbouw van aldinomoda.nl: high-end Italiaanse herenmode in Deventer. Gebouwd met Astro + Tailwind CSS v4, content beheerbaar via Decap CMS met een Forgejo/Gitea-backend, en uitrolbaar via een Dockerfile op Coolify.


Inhoud


Techniek

Onderdeel Keuze
Framework Astro 5 (statische output)
Styling Tailwind CSS v4 (@tailwindcss/vite)
Content JSON-bestanden in src/content/, bewerkt via Decap CMS
CMS-backend Forgejo / Gitea (OAuth via PKCE — alleen een ClientID nodig)
Hosting Docker (nginx) op Coolify
Fonts Cormorant Garamond + Inter (Google Fonts)

Alle teksten en afbeeldingen staan in src/content/ (data) en public/images/ (beeld). De logo's en foto's van de oorspronkelijke site zijn behouden.


Snel starten (lokaal)

Vereist: Node.js 20+ (zie .nvmrc).

npm install
npm run dev          # http://localhost:4321

De CMS lokaal proberen zonder Git-koppeling (handig om de admin te testen):

# Terminal 1
npm run cms          # start decap-server (proxy backend)
# Terminal 2
npm run dev
# open http://localhost:4321/admin/

Dit werkt dankzij local_backend: true in public/admin/config.yml: wijzigingen worden dan rechtstreeks naar je lokale bestanden geschreven.

Productiebuild lokaal testen:

npm run build        # output in dist/
npm run preview

Content bewerken (Decap CMS)

Na uitrol is de beheeromgeving bereikbaar op /admin/ (bijv. https://aldinomoda.nl/admin/). Je logt in met je Forgejo/Gitea-account.

Beheerbare onderdelen:

  • Instellingen — bedrijfsnaam, slogan, logo, contactgegevens, openingstijden, social media, en (optioneel) een Formspree-endpoint voor het contactformulier.
  • Pagina's — Home, Over Aldino Moda, Maatpakken, Trouwkostuums, Casual, Accessoires, Contact. Elke pagina heeft eigen velden (hero, teksten, galerij…).
  • Merken — de logo's in het merkenoverzicht.

Een opslag-actie in de CMS = een commit in de repo. Met automatische herbouw (zie onder) staat de wijziging binnen ~1 minuut live.

Afbeeldingen die je in de CMS uploadt komen in public/images/ terecht en worden als /images/<bestand> gebruikt.


Forgejo/Gitea OAuth instellen (ClientID)

De Decap-backend voor Forgejo/Gitea gebruikt PKCE: er is géén aparte OAuth-server of secret nodig — alleen een ClientID.

Vereisten: Gitea 1.20+ of Forgejo 1.21.4+ met CORS ingeschakeld.

1. OAuth-applicatie aanmaken

In Forgejo/Gitea: Instellingen → Toepassingen → OAuth2-toepassingen beheren (of via het beheerderspaneel voor een organisatie):

  • Application Name: Aldino Moda CMS
  • Redirect URI: https://aldinomoda.nl/admin/ (voeg eventueel http://localhost:4321/admin/ toe voor lokaal testen)
  • Confidential Client: ⚠️ uitvinken (belangrijk voor PKCE)

Na opslaan krijg je een Client ID. Die heb je nodig.

2. public/admin/config.yml invullen

backend:
  name: gitea
  repo: <eigenaar>/<repo>                 # bv. aldino/aldinomoda
  branch: main
  base_url: https://git.example.com        # jouw Forgejo/Gitea-URL
  api_root: https://git.example.com/api/v1
  app_id: <JOUW-CLIENT-ID>                 # de ClientID uit stap 1

3. CORS op de Git-server

Forgejo/Gitea moet cross-origin requests vanaf je website toestaan. In app.ini (sectie [cors]):

[cors]
ENABLED = true
ALLOW_DOMAIN = https://aldinomoda.nl
METHODS = GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS

Iedereen die in de CMS moet kunnen inloggen, heeft push-rechten op de repo nodig.


Uitrollen met Coolify

  1. Push deze repo naar je Forgejo/Gitea.
  2. In Coolify: New Resource → Application → Public/Private Repository, kies deze repo.
  3. Build Pack: Dockerfile (Coolify detecteert de Dockerfile automatisch).
  4. Port: 80 (zo serveert nginx in de container).
  5. Build argument / Environment (optioneel maar aanbevolen):
    • SITE_URL=https://aldinomoda.nl — wordt in de build verwerkt voor canonical-URLs, sitemap en social previews.
  6. Koppel je domein en laat Coolify het TLS-certificaat regelen.
  7. Deploy.

De container is een kale nginx die de vooraf gebouwde statische site serveert — licht, snel en zonder runtime-afhankelijkheden.

Lokaal de Docker-build testen:

docker build -t aldino-moda --build-arg SITE_URL=https://aldinomoda.nl .
docker run --rm -p 8080:80 aldino-moda   # http://localhost:8080

Automatisch herbouwen bij wijzigingen

Omdat de CMS bij opslaan commit naar de repo, wil je dat Coolify dan opnieuw bouwt:

  • Zet in Coolify Auto Deploy aan, en
  • voeg in Forgejo/Gitea een webhook toe naar de door Coolify gegenereerde deploy-URL (te vinden bij de applicatie onder Webhooks).

Zo verschijnt elke contentwijziging vanzelf op de live site.


Projectstructuur

.
├── public/
│   ├── admin/              # Decap CMS (index.html + config.yml)
│   ├── images/             # logo's + foto's (behouden van de oude site)
│   ├── favicon.svg
│   └── robots.txt
├── src/
│   ├── content/            # bewerkbare content (JSON)
│   │   ├── settings.json
│   │   ├── brands.json
│   │   └── pages/*.json
│   ├── components/         # Header, Footer, Hero, Gallery, …
│   ├── layouts/Base.astro
│   ├── lib/content.ts      # data-helpers + navigatie
│   ├── pages/*.astro       # routes
│   └── styles/global.css   # designsysteem (Tailwind v4 @theme)
├── Dockerfile
├── nginx.conf
└── astro.config.mjs

© 2026 Aldino Moda · Smedenstraat 12, 7411 RC Deventer