Hello world
Welcome to my blog!
This is my first post using ghmd-blog, a static site generator I built to host this blog. It reads markdown from a private GitHub repository and generates clean, fast HTML that I deploy to my shared hosting via SFTP.
Why build another static site generator? I wanted full control over my content without vendor lock-in. Existing tools either didn't support private repos or locked me into specific hosting platforms.
Key Features
Here's what makes ghmd-blog interesting:
- Private GitHub repos — Your content stays private until it's published
- Self-hosted deployment — SFTP to any shared hosting, no platform dependencies
- 17 professional themes — Mix and match light/dark modes with a manual toggle (try clicking the theme button!)
- 10 font options — Separate configuration for body text and code blocks
- Tag filtering — Clickable tags for browsing related posts
- Syntax highlighting — Beautiful code blocks in any language
- Template customization — Override header/footer without touching core files
There's more — pagination, static pages, HTML page support, and auto-generated table of contents. See the full feature list on GitHub.
Code Example
Here's a quick Python snippet to show off syntax highlighting:
def greet(name: str) -> str:
"""Return a friendly greeting."""
return f"Hello, {name}! Welcome to ghmd-blog."
if __name__ == "__main__":
print(greet("World"))
What's Next?
I don't know when my next blog post will be. It might take a while ... or not. We'll see.