Skip to main content

👋 Introduction

DjangoStack creates a ready-to-run website project: a Django backend, a frontend, Postgres and Docker Compose, from one command. Every piece is an open-source project you can read, change or remove.

  • Django Headless serves your content models as a REST API.
  • Django Content Studio is the admin where editors write and publish.
  • Astro renders the site by default; Next.js, SvelteKit, Nuxt and Django's own templates are the alternatives.
  • Postgres stores the content, and also the shared cache and the task queue, unless you pick Valkey for them.

DjangoStack is the glue between them. It is not a CMS of its own: the content models live in your project, and features of the API or the admin belong in Django Headless and Django Content Studio.

Status​

DjangoStack is in early development. Version 0.1 creates projects with the Astro frontend and runs them with Docker Compose. Production deployment, the Next.js frontend and the optional services follow in later releases.

Start with Getting started.

Packages​

PackageRegistryPurpose
@django-stack/clinpmCreates and manages projects (init, doctor)
@django-stack/utilsnpmThe API client, content helpers, SEO, images and webhook signatures
@django-stack/reactnpmReact components for blocks, rich text and images
@django-stack/nextnpmNext.js route handlers, metadata and security headers
@django-stack/sveltenpmSvelte components for blocks, rich text, images and SEO
@django-stack/vuenpmVue components for blocks, rich text and images
django-stackPyPISettings from environment variables, API defaults, health checks and system checks