What Django is
corebeginnerDjango is a Python web framework: tools and conventions for turning an HTTP request into a response, backed by a database, without wiring the plumbing yourself. Install with pip, then build on top of it.
Think of it as
Django is a kitchen that already has a stove, a fridge, and a set of knives laid out in the same drawer every time. You still cook the meal — the models, views, and templates are yours — but you never have to build the kitchen first. A bare Python web server, by contrast, is an empty room: functional, but you assemble routing, sessions, and a database layer from scratch before writing a single feature.
What we're doing: Scaffold a new Django project and see the pieces it generates before any app-specific code is written.
- 2
- startproject generates a runnable project: manage.py plus a mysite/ package holding settings.py, urls.py, asgi.py, wsgi.py.
- 4
- runserver starts a development server — no separate web server or database setup needed to see it working.
Why this works: Every Django project starts from the same generated skeleton, which is the point: settings, URL routing, and the WSGI/ASGI entry points are already wired together and agree with each other, so the first thing you run is a working (if empty) site rather than a pile of decisions to make before anything responds to a request.
Treating Django as just a template engine
Wrong
Better
What you see: Reimplementing URL dispatch or a query layer from scratch, then fighting Django's own conventions when the two don't agree.
Why: Django's pieces assume the others are present — the admin site assumes the ORM, the ORM assumes migrations, sessions assume middleware is installed. Using only the template layer throws away the batteries-included benefit that is Django's main reason to reach for it over a smaller framework.
- HTTP request — from a browser or client
- Django — routes, queries, renders
- Database — via the ORM
- HTTP response — HTML, JSON, a redirect
Remember: Django is a full Python web framework — routing, ORM, admin, auth, and templates all included and wired together, not a library you assemble piece by piece.
See also: mtv architecture · batteries included · project vs application

