Skip to content
Mark Downie edited this page Jun 12, 2026 · 40 revisions

DasBlog - The DasBlog blogging Engine reintroduced with ASP.NET Core.

One of the primary goals of this project is to preserve the essence of the original DasBlog engine while taking advantage of the modern cross platform goodness of .NET. If you are a DasBlog classic user the transition to the new DasBlog should be really straightforward.

Key capabilities

  • Create and edit blog posts from the browser or tools like Open Live Writer
  • Theme management with a built-in editor for creating, customizing, and switching themes
  • Comment moderation, categories, and RSS/Atom feeds
  • Search and archive browsing
  • Social sharing (Twitter/X, Facebook, LinkedIn, Reddit, BlueSky)
  • Sitemap generation
  • Flexible deployment to Azure, Linux, Windows, or localhost

Project values

DasBlog is built for the open web.

  • Every post is public by default and lives at a stable URL.
  • The project will not ship paywalls, member-only content, or paid-subscription tiers.
  • Where it makes sense, DasBlog favors open standards (RSS, Atom, oEmbed, MetaWeblog) so your content stays portable and your readers stay free to choose how they receive it.
  • Your posts are XML files on your disk. No database, no lock-in, no third-party account required to read or write.

Our guiding principles

These principles guide what we build and what we deliberately leave out. They follow on from a fundamental thought on software engineering:

  • Preserve compatibility with classic DasBlog content and tooling. Existing posts, configuration, and Open Live Writer / MetaWeblog clients keep working. Migrating a classic blog should be a copy, not a rewrite.
  • Persistence stays simple. Posts and configuration are XML files on disk. No database, no ORM, no external state store.
  • Brownfield-friendly. Every change should be safe to drop into a running production blog. Schema changes are additive or come with a migration.
  • Prefer well-maintained packages over reinvention. If a problem is solved cleanly upstream, we take the dependency instead of carrying our own copy.
  • Themes are code. Razor views, not configuration files dressed up as templates.
  • Idiomatic modern .NET. Constructor injection, async by default, central package management, target the current LTS or later.

Documentation

Page Description
Install NuGet template, local, Azure, cloud hosting
Azure App Services Step-by-step Azure deployment guides
CLI Reference Command line tools for configuration
Configure your blog Security, settings, themes, static pages, ActivityPub, CDN
Create a blog post Browser editor, Open Live Writer
Designing a theme Theme editor, Razor views, built-in themes
Tag Helpers & Partial Views Components for theme development
Architecture Solution structure and project roles
Migrating from DasBlog Three-step migration from classic DasBlog

Clone this wiki locally