Skip to content

Repository files navigation

Personal Website

Terminal-inspirierte Astro-Website mit Content Collections, Markdown-Inhalten und einem schlanken Komponenten-Setup.

Public Repository

Dieses Repository ist öffentlich. Die README ist deshalb der öffentliche Einstieg für Besucher, Entwickler und Agents.

  • Keine privaten Daten, Zugangsdaten oder internen Notizen in README oder docs/public/ ablegen.
  • Dokumentation soll den aktuellen Projektzustand erklären, nicht persönliche Arbeitsnotizen sammeln.
  • Öffentliche Detaildokumentation liegt in docs/public/.
  • Private Arbeitsnotizen, Pläne, Research und Risikoanalysen liegen in docs/private/, einem privaten Git-Submodule.
  • Agent-spezifische Hinweise sind öffentlich sichtbare Projektkonventionen und stehen in Agent Reference und AGENTS.md.

Live Site

  • Production URL: https://valentindibbern.github.io/
  • Deployment-Ziel: GitHub Pages

Quick Start

bun install
bun dev

Voraussetzung: Node >=22.13.0 und die in package.json über packageManager gepinnte Bun-Version.

Lokale Vorschau:

  • Dev-Server: http://localhost:4321
  • Production Build: bun run build
  • Production Build mit Bewerbungsgate-Payload: bun run build:production
  • Preview des Builds: bun run preview
  • Astro-Checks: bun astro check

Project Overview

/
├── docs/
│   ├── public/
│   │   ├── Stack.md
│   │   ├── Architecture.md
│   │   ├── Content-System.md
│   │   ├── Components.md
│   │   ├── Pages.md
│   │   ├── Workflows.md
│   │   ├── Deployment.md
│   │   └── Agent-Reference.md
│   └── private/
│       └── private Git submodule, not part of the public documentation
├── src/
│   ├── pages/
│   ├── drafts/
│   ├── layouts/
│   ├── components/
│   ├── config/
│   ├── content/
│   │   ├── text/
│   │   └── data/
│   ├── utils/
│   └── styles/
└── package.json

How it works

  • src/pages/*.astro definiert die Routen der Website.
  • src/drafts/*.astro enthält Seitenentwürfe, die nicht öffentlich geroutet werden.
  • src/layouts/BaseLayout.astro kapselt den globalen Rahmen, Meta-Tags und das Basis-Markup.
  • src/components/* enthält wiederverwendbare UI-Bausteine wie Terminal-Command, Text-, Dictionary-, Listen- und Tabellen-Ausgaben.
  • src/content/text/* speichert freie redaktionelle Texte als Markdown.
  • src/content/data/* speichert strukturierte Inhalte als YAML.
  • YAML-Werte in Dictionary-, Listen- und Tabellen-Ausgaben können mit href und attributes: ["link"] als klickbare Links markiert werden.
  • src/content.config.ts beschreibt die Content Collections und ihre Schemas.
  • src/utils/content.ts bündelt Lade- und Validierungslogik für Content-Quellen.
  • src/styles/global.css enthält das globale Styling und Tailwind v4.

Documentation

  • Stack: verwendete Technologien, Tools und Libraries
  • Architecture: Projektaufbau und Datenfluss
  • Content System: Content Collections und Content-Ladung
  • Components: wichtige UI-Bausteine
  • Pages: was jede Seite rendert und welche Daten sie nutzt
  • Workflows: typische Änderungen und wo sie umgesetzt werden
  • Deployment: Build, Preview und Base-URL-Verhalten
  • Agent Reference: öffentliche Arbeitskonventionen für Agents und KI-Systeme

Private Arbeitsdokumente sind bewusst getrennt. docs/private/ ist ein privates Submodule und enthält keine öffentliche Projekt-Dokumentation.

Source Of Truth

  • package.json
  • astro.config.mjs
  • tsconfig.json
  • eslint.config.js
  • .prettierrc.mjs
  • bun.lock

Commands

Alle Befehle werden aus dem Repository-Root ausgeführt.

Command Purpose
bun install Dependencies installieren
bun dev Lokalen Dev-Server starten
bun run encrypt:application-link Verschlüsselten Bewerbungslink aus Env-Secrets oder .application-secrets.local.json erzeugen
bun run build Production Build erzeugen
bun run build:production Bewerbungslink-Payload erzeugen und Production Build ausführen
bun run preview Production Build lokal prüfen
bun astro check Astro- und TypeScript-Checks ausführen
bun astro -- --help Astro-CLI-Hilfe anzeigen

Notes

  • Keine Änderungen an dist/, .astro/ oder node_modules/.
  • Die Doku ist absichtlich verteilt: Überblick in README.md, technische Tiefe in docs/public/.
  • Öffentliche Dokumentationsdateien sind für ein öffentliches Repository geschrieben.
  • docs/private/ ist ein privates Submodule für Arbeitsnotizen, konkrete Pläne, Research und Risikoanalysen.
  • Bewerbungslinks werden statisch verschlüsselt; Klartext-Links, Passwörter, lokale Secret-Dateien und konkret generierte Payloads gehören nicht ins Repository.

About

Meine persönliche Website.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Used by

Contributors

Languages