Where SmallStack Fits
Django powers everything from tiny internal tools to Instagram-scale platforms. SmallStack is opinionated about which of those it targets. Here's an honest look at 10 common Django use cases — where SmallStack shines and where it doesn't.
Full Web Applications
Server-rendered Django apps with templates, auth, and admin
This is exactly what SmallStack was built for. You get a complete, production-ready Django app with authentication, user profiles, admin panel, background tasks, activity tracking, and deployment tooling — all wired together and working out of the box.
Strengths
- Complete auth system with login, signup, password reset
- User profiles with auto-creation signals
- Activity dashboard with request tracking
- Background tasks via Django 6's built-in framework
- Dark/light theming with CSS variables
- Zero-downtime Kamal deployment, ready to go
Limitations
- Admin-style layout may not suit every product design — Pro 1.0: flexible themes
- No built-in multi-tenancy or team/org model
Internal Business Tools
Company admin panels, workflow systems, support dashboards
This is SmallStack's home turf. Internal tools don't need flashy marketing pages — they need solid auth, a clean data-focused UI, audit trails, and reliable deployment. SmallStack delivers all of that with minimal setup. The admin-style layout with sidebar navigation is exactly what internal tool users expect.
Strengths
- Admin-style UI feels natural for internal tools
- Staff/superuser permissions built in
- Activity tracking provides accountability
- Help system for internal documentation
- Single VPS deployment keeps infra simple and cheap
- Automatic database backups protect business data
Limitations
- No SSO/SAML/LDAP integration out of the box
- No fine-grained object-level permissions
Automation & Background Jobs
Email sending, report generation, scheduled tasks, data processing
SmallStack uses Django 6's built-in task framework with a database-backed worker — no Celery, no Redis, no message broker. Tasks are defined as decorated functions and run by a simple worker process. For most applications, this is all you need. It's already configured and the worker runs alongside your web process in production.
Strengths
- Django 6 task framework — no extra dependencies
- Database-backed queue — no Redis or RabbitMQ
- Worker process included in Kamal deployment
- Cron scheduling for backups and maintenance
- Email tasks already implemented as examples
Limitations
- Database-backed queue has lower throughput than Redis
- No task chaining, groups, or complex workflows — v1.5 planned
- Single worker — no distributed task execution
- For high-volume task processing, Celery is still better
Data-Driven Business Applications
Inventory systems, logistics, enterprise dashboards, ERP-style tools
CRUD-heavy business apps are SmallStack's bread and butter. The admin-style sidebar layout, Django Admin for quick data management, and the activity tracking system make it natural to build internal business tools. Add your models, wire up views, and you have a working business application with audit trails and user management from the start.
Strengths
- Admin-style layout designed for data-heavy interfaces
- Django Admin for instant CRUD on any model
- Activity tracking doubles as an audit log
- Background tasks for report generation and data processing
- SQLite backup system protects business data
Limitations
- No built-in reporting or charting library
- No import/export (CSV, Excel) tooling included
- Complex multi-table workflows need custom development
Backend API for Frontend Frameworks
Django as a REST/GraphQL API server for React, Vue, or mobile
SmallStack's core is server-rendered templates, but API support is on the roadmap. The Django ORM, auth system, background tasks, and deployment pipeline all work for API-first projects today — what's missing is the API layer itself. We're evaluating DRF and Django Ninja to find the right fit for SmallStack's philosophy of simplicity without sacrificing capability.
What works today
- Django ORM, migrations, and model layer are solid
- Auth system can back JWT/OAuth with additional packages
- Background tasks work regardless of frontend
- Kamal deployment works for any Django app
Now shipping in v1.0
- API framework integration with Django REST Framework
- CORS configuration and token-based auth
- API documentation and example endpoints
- Guidance for hybrid apps (templates + API)
Content Management Systems
Content-driven websites, blogs, editorial platforms
SmallStack's built-in help system already renders Markdown content from files with YAML front-matter, navigation, and search. For a simple docs site or blog, you're surprisingly close. For a full editorial CMS with rich content models, you'll want Wagtail — but SmallStack makes a good foundation to build on.
Strengths
- Markdown rendering with syntax highlighting built in
- Help app with sections, navigation, and search
- Slide deck system for presentations and feature tours
- Clean template inheritance for custom page layouts
Limitations
- No rich text editor or WYSIWYG
- No content scheduling, drafts, or editorial workflow — v1.5 planned
- File-based content — no database-driven CMS models — v1.5: evaluating both approaches
- For serious CMS needs, Wagtail or Django CMS is better
Machine Learning & Data Science Backends
Prediction APIs, recommendation engines, analytics dashboards
If your ML project needs a web UI for results, model management, or a dashboard alongside the API, SmallStack provides a solid base. The background task system can handle model inference jobs. But if you're building a pure prediction API with no web interface, a lighter framework is more appropriate.
Strengths
- Python-native — works with any ML library
- Background tasks for model training and inference
- Dashboard UI for monitoring and results display
- Auth system for gating access to models/data
Limitations
- No API serialization layer (DRF) included — shipped in v1.0
- No GPU or compute scaling patterns
- Heavy ML dependencies can bloat the Docker image
- Single-server deployment limits compute capacity
SaaS Platforms
Subscription-based products with accounts, billing, dashboards
SmallStack gives you auth, profiles, background tasks, and deployment — but SaaS products need billing, multi-tenancy, and flexible branding that SmallStack doesn't include today. You can build an MVP here, but you'll be adding a lot of plumbing yourself. SmallStack Pro 1.0 (releasing alongside SmallStack 2.0) will address several of these gaps with a flexible theme system, AI-assisted development, and managed hosting options.
What works today
- Auth, profiles, and email already wired up
- Background tasks for async processing
- Activity tracking for audit trails
- Near-zero hosting cost with SQLite on a single VPS
- Documented PostgreSQL upgrade path
Limitations
- No billing, subscriptions, or Stripe integration
- No multi-tenancy or team/org model
- No role-based access beyond Django's built-in groups
- Admin-style layout not ideal for customer-facing SaaS — Pro 1.0: flexible themes
- SQLite has write concurrency limits at scale
E-Commerce Platforms
Product catalogs, carts, checkout, order management
E-commerce requires a deep stack of specialized features — product variants, inventory, cart sessions, payment processing, shipping, tax calculation — that SmallStack doesn't include. You'd be building all of that from scratch. Django-Oscar or Saleor are purpose-built for this and will save you months of work.
What still works
- User accounts and authentication
- Deployment pipeline handles any Django app
- Background tasks for order processing emails
Limitations
- No product, cart, or order models
- No payment gateway integration
- No shipping, tax, or inventory logic
- SQLite not ideal for high-write transaction volumes
High-Traffic Web Platforms
Large-scale platforms like Instagram, Pinterest, The Washington Post
Django can absolutely scale to millions of users — Instagram proved that. But those systems require caching layers, load balancers, microservices, and database sharding that are far beyond SmallStack's scope. SmallStack is deliberately a single-server stack. It's designed to get you to production fast, not to handle Instagram-level traffic.
Where SmallStack helps
- Great starting point — scale when you actually need to
- Clean architecture makes it easier to refactor later
- PostgreSQL upgrade path is documented
- Handles more traffic than most apps ever see on a single VPS
Limitations
- Single-server deployment — no horizontal scaling
- SQLite doesn't support concurrent writes at scale
- No caching layer (Redis/Memcached) configured
- No CDN, load balancer, or microservice patterns
Start Building
SmallStack is best for server-rendered Django apps, internal tools, automation, and data-driven business applications. If that's what you're building, you'll save days of boilerplate setup.