Django: “projects” vs “apps”

Once you graduate from using startproject and startapp, there’s nothing to stop you from combining a “project” and “app” in the same Python package. A project is really nothing more than a settings module, and an app is really nothing more than a models module—everything else is optional.

For small sites, it’s entirely reasonable to have something like:

site/
    models.py
    settings.py
    tests.py
    urls.py
    views.py

Leave a Comment