Personal website and blog of Robert Hartings — Software Engineer at itestra GmbH.
Built with Astro and Tailwind CSS, deployed on Cloudflare Pages.
- Framework: Astro 5 (static output)
- Styling: Tailwind CSS + @tailwindcss/typography
- Fonts: Bricolage Grotesque, JetBrains Mono (Google Fonts)
- Deployment: Cloudflare Pages (direct integration)
npm run dev # Start dev server at http://localhost:4321
npm run build # Build for production
npm run preview # Preview production buildNote:
node_modules/.bin/symlinks do not work when the project is mounted from a Windows (NTFS) filesystem into a Linux environment. The npm scripts are configured to call the Astro binary directly vianodeto work around this.
src/
├── components/ # Nav, Footer
├── layouts/ # Layout.astro, PostLayout.astro
├── pages/
│ ├── blog/ # Markdown blog posts + index
│ ├── index.astro
│ ├── about.astro
│ ├── projects.astro
│ ├── contact.astro
│ └── imprint.astro
└── styles/
└── global.css
public/
├── favicon.svg
└── _headers # Cloudflare security headers
Blog posts live in src/pages/blog/ as Markdown files with the following frontmatter:
---
layout: ../../layouts/PostLayout.astro
title: Post title
date: YYYY-MM-DD
description: Short description for meta tags and post listing.
---Reading time is calculated automatically from word count.