Skip to main content

Quickly build a professional web app using Django.

Project description

Forge

Quickly build a professional web app using Django.

Forge is a set of opinions. It guides how you work, chooses what tools you use, and makes decisions so you don't have to.

At it's core, Forge is Django. But we've taken a number of steps to make it even easier to build and deploy a production-ready app on day one.

If you're an experienced Django user, you'll understand and (hopefully) agree with some of Forge's opinions. If you're new to Django or building web applications, we've simply removed questions that you might not even be aware of.

Forge will get you from zero to one on a revenue-generating SaaS, internal business application, or hobby project.

Quickstart

Start a new project in 5 minutes:

curl -sSL https://forgepackages.com/quickstart.py | python3 - my-project

Forge Django quickstart

What's included

Things that come with Forge, that you won't get from Django itself:

  • Configure settings with environment variables
  • A much simpler settings.py
  • Extraneous files (manage.py, wsgi.py, asgi.py) have been removed unless you need to customize them
  • Start with a custom user model (users.User)
  • Start with a "team" model (teams.Team)
  • Send emails using Django templates (ex. templates/email/welcome.html)
  • A starter forge_base.html
  • Default form rendering with Tailwind classes
  • Login in with email address (in addition to usernames)
  • Abstract models for common uses (UUIDs, created_at, updated_at, etc.)
  • Test using pytest and pytest-django
  • Static files served with WhiteNoise

We're also able to make some decisions about what tools you use with Django -- things that Django (rightfully) doesn't take a stance on:

Lastly, we bring it all together with a forge CLI:

Local development

  • forge work - your local development command (runs runserver, Postgres, and Tailwind at the same time)
  • forge test - run tests using pytest
  • forge format - format app code with black and isort
  • forge pre-commit - checks tests and formatting before commits (installed as a git hook automatically)
  • forge django - passes commands to Django manage.py (i.e. forge django makemigrations)

Deployment

  • forge pre-deploy - runs Django system checks before deployment starts
  • forge serve - a production gunicorn process

Misc.

  • forge init - used by the quickstart to create a new project, but can be used by itself too

Inspired by

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

forge-0.13.0.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

forge-0.13.0-py3-none-any.whl (30.9 kB view details)

Uploaded Python 3

File details

Details for the file forge-0.13.0.tar.gz.

File metadata

  • Download URL: forge-0.13.0.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.13.0-1025-azure

File hashes

Hashes for forge-0.13.0.tar.gz
Algorithm Hash digest
SHA256 8373eb54088d72fa903380a58e030e249ecaec96f6e9c4fe8f7a55a3f0a9b934
MD5 a7b6f647d79402947545e0b9d528ed4a
BLAKE2b-256 cea3e5fb3e552125d3d95971f786783fdd15d450d95be5f3a74fd16c997cd157

See more details on using hashes here.

File details

Details for the file forge-0.13.0-py3-none-any.whl.

File metadata

  • Download URL: forge-0.13.0-py3-none-any.whl
  • Upload date:
  • Size: 30.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.13 CPython/3.10.4 Linux/5.13.0-1025-azure

File hashes

Hashes for forge-0.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5bb4a2c2797c28585bbaca88a43dcf555e5d58cc796940869a172346f4c5dd95
MD5 5bccce5cf0e27b6d0c58e922eb4d016b
BLAKE2b-256 654389aa6bce0c33e00aa157eb3b7b83ceb430a14be7aefede2b74fdd80de03d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page