Developer portfolio for SelfCoder — a family of self-hosted, open-source tools. Entwickler-Portfolio für SelfCoder — eine Familie self-hosted, quelloffener Tools.
Das ist die Quelle der Portfolio-Website selfcoder.de — eine dunkle, animierte One-Page-Seite, die die Self-Projekte (SelfStream, SelfArchiver, SelfDashboard u. a.) vorstellt. Statisch gebaut und kostenlos über GitHub Pages gehostet.
| Bereich | Technologie |
|---|---|
| Framework | Next.js 16 (App Router, output: "export") |
| UI-Library | React 19 |
| Styling | Tailwind CSS 4 |
| Animation | Framer Motion 12 |
| 3D / WebGL | three.js + React Three Fiber / drei |
| Smooth-Scroll | Lenis |
| Sprache | TypeScript 5 |
- Node.js 20 (gleiche Version wie die CI)
- npm (liegt Node bei)
npm installnpm run devLäuft dann auf http://localhost:3220.
Warum
--webpack? Die Skripte erzwingen den Webpack-Bundler (next dev --webpack,next build --webpack), weil der Standard-Bundler Turbopack auf einem Netzlaufwerk (hier ein gemapptes RAID-Laufwerk) nicht zuverlässig läuft — er bricht beim Datei-Watching/Caching ab. Webpack ist langsamer, funktioniert auf dem Netzlaufwerk aber stabil. Wer lokal von einer SSD aus arbeitet, kann das Flag inpackage.jsonentfernen.
npm run buildErzeugt den statischen Export im Ordner out/ (ebenfalls mit --webpack).
Lokales Vorschau-Hosting des Builds: npm run start (Port 3220).
Vollautomatisch — kein lokaler Build nötig:
- Push auf
mainlöst den GitHub-Actions-Workflow.github/workflows/deploy.ymlaus. - Die Action baut den statischen Export in der Cloud und veröffentlicht den Ordner
out/auf GitHub Pages. - Die eigene Domain wird über
public/CNAMEgesetzt (selfcoder.de), HTTPS stellt GitHub bereit.
Manuelles Auslösen ist über den Actions-Tab (workflow_dispatch) möglich.
MIT — siehe LICENSE.
Source of the portfolio website selfcoder.de — a dark, animated one-page site that showcases the Self projects (SelfStream, SelfArchiver, SelfDashboard, and more). Built as a static export and hosted for free on GitHub Pages.
| Area | Technology |
|---|---|
| Framework | Next.js 16 (App Router, output: "export") |
| UI library | React 19 |
| Styling | Tailwind CSS 4 |
| Animation | Framer Motion 12 |
| 3D / WebGL | three.js + React Three Fiber / drei |
| Smooth scroll | Lenis |
| Language | TypeScript 5 |
- Node.js 20 (matches the CI)
- npm (ships with Node)
npm installnpm run devRuns on http://localhost:3220.
Why
--webpack? The scripts force the Webpack bundler (next dev --webpack,next build --webpack) because the default bundler Turbopack does not run reliably from a network drive (a mapped RAID volume here) — its file watching/caching breaks. Webpack is slower but stable on the network drive. If you work from a local SSD you can drop the flag inpackage.json.
npm run buildProduces the static export in the out/ folder (also with --webpack).
Preview the build locally with npm run start (port 3220).
Fully automated — no local build required:
- A push to
maintriggers the GitHub Actions workflow.github/workflows/deploy.yml. - The action builds the static export in the cloud and publishes the
out/folder to GitHub Pages. - The custom domain is set via
public/CNAME(selfcoder.de); GitHub provisions HTTPS.
You can also trigger it manually from the Actions tab (workflow_dispatch).
MIT — see LICENSE.