The perfectionist structure of Django,
hold the weight.
Measured on the standard Cicadel project and vanilla Django 6.1 with gunicorn, both on PostgreSQL with auth, sessions and CSRF. How we measured →
Apps, models, migrations, forms and accounts, built in Go. Your whole application compiles into one small binary that starts instantly and runs on modest hardware.
go run github.com/fauzaanu/cicadel/cmd/cicadel@v0.2.1 startproject myapp example.com/myapp
cd myapp && go run manage.go migrate
go run manage.go runserverRead https://cicadel.fauzaanu.com/en/0.2.1/llms.txt.
Set up a new Cicadel v0.2.1 project in ./myapp with module example.com/myapp.
Configure PostgreSQL, run the migrations and checks, start the
development server, and tell me the URL and what you set up.Inspired by Django
Cicadel borrows the ideas that made Django productive. If you know Django, you will recognise the shape. The differences are on purpose: everything is typed, explicit and checked before it runs.
manage.pymanage.gosettings.pyTyped settings, checked at startupurls.pyurls.go with named routesmodels.py + makemigrationsGORM models + recorded SQL migrations.templ componentsForm / ModelFormTyped forms and model formsdjango.contrib.authThe accounts appINSTALLED_APPSproject/apps.goHow a request flows
Every layer is plain Go. Nothing is discovered by magic: you register it, and the compiler checks it.
First steps
Create an application and set up your coding agent.
Topic guides
Understand each layer of your application.
How-to guides
Follow focused workflows for common tasks.
API reference
Look up contracts, commands and supported behavior.
Releases and stability
Current release, stability guarantee and changes.
Building the framework itself?
Design decisions, the philosophy and contributor guides live in Framework design and contributing.