Introduction

coltrane is a Dynamic Site Generator that harnesses the power of Django without the hassle. It can also be used to build a static HTML site or as a third-party Django app.

⭐ Features

  • Render markdown files as HTML with automatic URL routing based on the filesystem

  • Local development server with live re-rendering of markdown and data

  • Use JSON files as data sources in content

  • Automatic generation of sitemap.xml and rss.xml files

  • Can serve non-markdown files like robots.txt

  • Deployment best practices with whitenoise and gunicorn already configured

  • Leverage custom or built-in Django template tags and filters

  • Include any third-party Django app for additional functionality

  • Optional building of static HTML files

🙋 What is a Dynamic Site Generator?

coltrane is similar to a static site generator – it takes markdown content and renders it as HTML. However, it also provides an opinionated framework for building dynamic websites.

Examples in the wild

  • GitEgo: An egocentric view of GitHub

  • python-utils: Interactive Python playground

  • unsuckjs.com: Libraries to progressively enhance HTML with minimal amounts of JavaScript

Note

Please let me know if you use Coltrane and would like to add it to this list!

🎵 What’s with the name?

coltrane is built on top of the Django web framework, which is named after Django Reinhardt. This framework is named after John Coltrane, another (more avant-garde 🎶) jazz musician.

🙏 Inspiration

https://twitter.com/willmcgugan/status/1477283879841157123 for the initial inspiration and my reaction https://twitter.com/adamghill/status/1477414858396164096.

⚙️ Dependencies

🎉 Other minimal Django projects