explaingit

liangliangyy/djangoblog

7,374PythonAudience · developerComplexity · 3/5LicenseSetup · moderate

TLDR

A self-hosted blogging platform built with Django and Python, covering Markdown writing, comments, social login, Redis caching, and automatic search-engine notifications, deployable via Docker or Kubernetes.

Mindmap

mindmap
  root((repo))
    What it does
      Self-hosted blog
      Markdown writing
    Features
      Comments system
      Social login
      Search support
      Dark and light theme
    Performance
      Redis caching
      SEO notifications
    Tech stack
      Python Django
      Redis
      Docker
    Deployment
      Traditional server
      Docker
      Kubernetes
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Host your own blog with Markdown editing, threaded comments, dark mode, and Google or GitHub social login without paying a third-party platform.

USE CASE 2

Deploy a production blog with Redis page caching and Elasticsearch full-text search on your own server or a Docker host.

USE CASE 3

Automatically notify Google and Baidu when you publish new posts to speed up search engine indexing.

Tech stack

PythonDjangoRedisElasticsearchDockerKubernetes

Getting it running

Difficulty · moderate Time to first run · 1h+

README is primarily in Chinese, requires Redis for page caching and optionally Elasticsearch for full-text search.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

DjangoBlog is a full-featured blogging platform you can host yourself, built with Python and a web framework called Django. If you want to run your own blog without depending on services like WordPress.com or Medium, this gives you the software to do it on your own server. It has been around long enough to gather over 7,000 stars on GitHub, which suggests a fairly active community of people using and contributing to it. The platform covers everything you would expect from a modern blog: writing and publishing articles, organizing posts by category and tag, a comment section where readers can reply to each other, and a sidebar you can configure to show recent posts, most-read articles, or a tag cloud. Authors write in Markdown, a simple text format that lets you add bold, headings, and code blocks without touching HTML. The built-in editor highlights code automatically, which is useful for technical writing. Search is handled by either Whoosh (a lightweight option that needs no extra setup) or Elasticsearch (a heavier tool suited for larger sites). Social login is built in, so visitors can sign in with Google, GitHub, Facebook, Weibo, or QQ without creating a separate account. The site supports light and dark themes and can switch automatically based on a visitor's system setting. On the performance side, DjangoBlog uses Redis to cache pages so repeat visitors get fast responses without hitting the database every time. It also notifies Google and Baidu automatically when new content is published, which helps with search indexing. The plugin system lets you add features such as view counting, reading-time estimates, image lazy loading, and Cloudflare cache management without touching the core code. Deployment is supported via a traditional server setup, Docker containers, or Kubernetes. The README is written almost entirely in Chinese, so non-Chinese readers may need a translation tool to follow the setup instructions. The project is released under the MIT license, meaning you can use and modify it freely.

Copy-paste prompts

Prompt 1
I want to deploy djangoblog on my own server using Docker. Walk me through the compose file, required environment variables, and creating the first admin account.
Prompt 2
How do I switch djangoblog from Whoosh to Elasticsearch for search? What settings do I need to change and how do I index existing posts?
Prompt 3
How do I add Google OAuth social login to djangoblog? Walk me through creating the Google app credentials and wiring them into the Django settings.
Open on GitHub → Explain another repo

← liangliangyy on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.