Antonio Ledebuhr 1de146c650 integration: name case metrics, split delivered offerings from offers, and frame the stack honestly
Give every metrics list a localized heading, keep delivered Rösterei tools out of the offer boundary, and describe the skills grid as a familiarity overview with an evidence note instead of claiming public-case backing for every item.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-25 19:32:18 +02:00
2026-01-21 04:59:55 +01:00
2026-01-21 04:59:55 +01:00
2026-08-25 15:21:25 +02:00
2026-01-21 07:56:54 +01:00
2026-01-21 08:02:49 +01:00

Portfolio

Bilingual recruiter and B2B portfolio for Antonio Ledebuhr, a software and DevOps engineer. German is the default language at /. English is the full second version under /en.

This repository is the Angular 21 standalone, zoneless, SSR application that serves both locales from one build.

Prerequisites

  • Node.js 22 or newer
  • npm 11 or newer (npm 12 prints an engine-compatibility warning on some Node 24 builds; that warning is not an error)

Install

npm install

Scripts

Script Description
npm start Start the Angular dev server.
npm run build Production build (default configuration), including SSR and prerendering.
npm run watch Development rebuild on change.
npm test Unit tests in watch mode.
npm run test:ci Unit tests once; exits when finished.
npm run lint Run ESLint.
npm run lint:fix Run ESLint with autofix.
npm run format Format the workspace with Prettier.
npm run format:check Check formatting without writing.
npm run serve:ssr Serve the production SSR bundle from dist/.
npm run serve:ssr:Portfolio Alias of serve:ssr.
npm run e2e Playwright + axe-core against the production SSR bundle.
npm run e2e:install Install the pinned Chromium build for Playwright.
npm run lighthouse Production build, then Lighthouse CI (lighthouserc.json).
npm run ci lint, format check, tests, then production build.

Local SSR build

npm run build
npm run serve:ssr

The server listens on http://localhost:4000 unless PORT is set. The CV is copied into the browser output at /cv/CV.pdf.

npm run e2e builds the SSR bundle and serves it on port 4173. npm run lighthouse builds, then starts the SSR server on port 4000. Browser binaries and generated reports (test-results, playwright-report, .lighthouseci) are not committed.

Project structure

src/app/core/          Typed contracts: locale, routing, navigation, content, platform
src/app/features/      One standalone page per route id
src/app/shared/        Reusable UI primitives
src/app/components/    Existing decorative widgets (skills, dot background)
src/styles.scss        Design tokens and global primitives
src/_breakpoints.scss  Breakpoint map and respond-to mixin
public/                Static SVG assets

Design tokens live in src/styles.scss as CSS custom properties. Content contracts and the placeholder provider live in src/app/core/content. Route ids and locale path tables live in src/app/core/routing.

Contributor and agent conventions are in AGENTS.md.

The Impressum (/impressum, /en/legal-notice) and Datenschutz (/datenschutz, /en/privacy) pages contain unreviewed placeholders. They must be checked by the site owner before publication.

Description
No description provided
Readme 2.1 MiB
Languages
TypeScript 87.9%
HTML 5.9%
SCSS 5.2%
JavaScript 1%