CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
This is a Jekyll-based static website for DZLabs GmbH using the Beautiful Jekyll theme. The site is hosted on GitHub Pages at dzlabsch.github.io and serves as a company website showcasing services and expertise.
Build and Development Commands
Core Jekyll Commands
bundle install
: Install Ruby gem dependenciesbundle exec jekyll serve
: Run local development server (usually at http://localhost:4000)bundle exec jekyll serve --drafts
: Include draft posts in local developmentbundle exec jekyll build
: Build the site for production (outputs to_site/
)bundle exec jekyll serve --livereload
: Run with automatic browser refreshbundle update
: Update gem dependencies
GitHub Pages Deployment
- Deployment is automatic via GitHub Pages when pushing to the
master
branch - No manual build/deploy commands needed for production
Site Architecture
Jekyll Structure
_config.yml
: Main site configuration including theme settings, navigation, social links, and Jekyll options_layouts/
: HTML templates for different page types (base, default, home, page, post, minimal)_includes/
: Reusable HTML components (header, footer, navigation, social media, analytics)_data/
: YAML data files (currently contains UI text configurations)_posts/
: Blog posts directory (currently empty - add markdown files here for blog content)assets/
: Static assets including CSS, JavaScript, and images_content/
: Additional content files
Key Layout Types
layout: home
: Homepage with blog post listing (used in index.html)layout: page
: Standard pages (used for About page and general content)layout: post
: Blog posts with navigation, tags, and social sharinglayout: minimal
: Clean layout without navigation/footerlayout: base
: Core template that other layouts inherit from
Content Structure
- Pages created as
.md
or.html
files in root directory - Blog posts go in
_posts/
with naming convention:YYYY-MM-DD-post-title.md
- All content files require YAML front matter with layout specification
Theme Customization
Configuration
- Site metadata, navigation, and theme settings in
_config.yml
- Color scheme and styling options configured in
_config.yml
(navbar-col, page-col, etc.) - Social media links and contact information in
_config.yml
Assets
- Custom CSS can be added to
assets/css/
- Images stored in
assets/img/
- JavaScript files in
assets/js/
- Site logo/avatar configured as
title-img
in_config.yml
Content Pages
- About page:
aboutme.md
- company information and expertise - Additional content in
_content/about.md
- Homepage content controlled via
index.html
front matter
Company Context
DZLabs GmbH is a Swiss IT consulting company specializing in:
- Open source monitoring/observability tools (Grafana, Prometheus, InfluxDB, ElasticSearch)
- Development stack: PowerShell, Python, Bash, .NET (C#), Node.js
- VMware virtualization and cloud solutions
- Founded by Dennis Zimmer (16x VMware vExpert)
Common Development Tasks
Adding Blog Posts
- Create new file in
_posts/
with format:YYYY-MM-DD-title.md
- Include YAML front matter with layout, title, subtitle, and tags
- Write content in Markdown below the front matter
Updating Site Configuration
- Modify
_config.yml
for site-wide changes - Update navigation links in
navbar-links
section - Modify social media links in
social-network-links
section
Content Management
- Page content uses Markdown with YAML front matter
- Images referenced relative to site root:
/assets/img/filename.jpg
- Internal links use Jekyll’s `` or relative paths
Theme Features
Built-in Components
- Responsive navigation with mobile menu
- Social media sharing buttons (configurable per post)
- Comments support (Disqus, Facebook, Utterances, Staticman)
- Google Analytics integration
- Tag system for blog posts
- SEO optimization with customizable meta tags
- RSS feed generation
Supported Page Parameters
title
,subtitle
: Page/post titles and descriptionscover-img
: Hero images for poststags
: Post categorizationcomments
: Enable/disable comments per pagesocial-share
: Control social sharing buttonsfull-width
: Allow content to span full window width
Important Notes
- This site uses Jekyll ~3.8 with kramdown markdown processor
- Beautiful Jekyll theme version 5.0.0
- No package.json - pure Jekyll/Ruby ecosystem
- Automatic GitHub Pages deployment from master branch
- Site configuration optimized for company/business use case
- Currently no blog posts - empty
_posts/
directory ready for content