Skip to content

itsdanieldk/itsdaniel.dk

Repository files navigation

πŸͺ» itsdaniel.dk

Personal blog and portfolio focused on software engineering, functional programming, and distributed systems.

itsdaniel.dk β€’ Astro 7 Β· TypeScript Β· Tailwind CSS v4 Β· Deployed on Vercel

Features

  • πŸ“ Type-safe content collections (notes, projects) with Markdown and Zod schemas
  • 🏷️ Tag pages generated automatically with clean slug URLs
  • 🎨 Light/dark/system theme with no-flash inline script and view transitions
  • πŸ” SEO: JSON-LD, Open Graph, canonical URLs, RSS, sitemap
  • β™Ώ Accessibility: skip link, focus rings, reduced-motion support, no-JS fallback
  • πŸ”’ Security headers (CSP, HSTS, etc.) via vercel.json

Development

pnpm install        # Install dependencies
pnpm dev            # Start dev server (pnpm dev:network to expose on LAN)
pnpm build          # astro check + production build to dist/
pnpm preview        # Serve the production build locally
pnpm lint           # ESLint (pnpm lint:fix to autofix)
pnpm format         # Prettier (pnpm format:check to verify)

Requirements: Node.js 22.12+, pnpm 9+

Project Structure

src/
β”œβ”€β”€ components/     # Reusable Astro components
β”œβ”€β”€ content/        # Markdown content (notes, projects)
β”œβ”€β”€ layouts/        # Page and article layouts
β”œβ”€β”€ lib/            # Collection helpers and utilities
β”œβ”€β”€ pages/          # File-based routing
└── styles/         # Global CSS and Tailwind config

Adding Content

Create a kebab-case folder with an index.md in src/content/notes/ or src/content/projects/:

---
title: "Post Title"
description: "Brief description"
date: 2025-01-15
updatedDate: 2025-02-01 # optional
draft: false # optional, excludes from builds and feeds
tags: ["fp", "dotnet"] # optional, max 3
---

Your content here...

Projects additionally support demoURL and repoURL. Tag pages and their URLs are derived automatically from frontmatter tags.

License

Code is MIT, based on astro-nano by Mark Horn, with modifications by Daniel Larsen. Site content (posts and images) Β© Daniel Larsen.

About

🟣 itsdaniel.dk, a personal website, blog and portfolio

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors