Skip to content

Binaergewitter/serious-bg

Repository files navigation

Binärgewitter Blog

The official blog for the Binärgewitter podcast, built with Hugo.

Features

  • 100% Native Hugo: No external scripts or dependencies
  • Podcast Integration: Dynamic RSS feeds for all categories and codecs
  • FlexSearch Integration: High-performance client-side search with German linguistic support
  • Optimized Index: Gzipped index.json with maximum compression and local fallback
  • Responsive Design: Mobile-friendly Bootstrap-based layout
  • Fly.io Deployment: Automated Docker-based deployment

Development

Prerequisites

  • Hugo v0.111.3 or later (extended version)

Local Development

# Start the development server
hugo server

# Build the site
hugo

The site will be available at http://localhost:1313/.

Creating New Posts

# Create a new post (uses archetype for automatic metadata)
hugo new post/YYYY-MM-DD-your-post-title.md

The archetype automatically generates:

  • Title (derived from filename)
  • Date and time
  • Legacy /blog/ aliases for SEO
  • Front matter structure

Project Structure

.
├── articles/          # Blog posts (mounted as content/post)
├── pages/            # Static pages (mounted as content/pages)
├── layouts/          # Hugo templates
│   ├── _default/     # Base templates
│   ├── partials/     # Reusable components
│   └── index.json       # Search index template
├── static/           # Static assets (CSS, JS, images)
├── archetypes/       # Content templates
└── content/
    └── podcast_feed/ # Dynamic feed generation via _content.js

Deployment

The site is automatically deployed to Fly.io via GitHub Actions on every push to main.

Manual Deployment

# Deploy to Fly.io
flyctl deploy

Technical Highlights

  • Native Content Adapters: Podcast feeds generated via _content.js
  • Optimized Search: Gzipped FlexSearch index (index.json) with German stemming/stopwords
  • Remote Resources: Podcast metadata and chapters fetched during build
  • Zero Python: Fully native Hugo build pipeline

License

Content licensed under Creative Commons BY-SA.

About

The podcasting enabled CMS powering binaergewitter

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 51