Skip to main content

Masonite is a modern and developer centric Python web framework.

Project description

Masonite

GitHub Workflow Status GitHub release (latest by date including pre-releases) License Code style: black

In Memory of Joseph Mancuso

Masonite was created by Joseph "Joe" Mancuso, who sadly passed away in November 2025.

Joe built Masonite from the ground up and poured years of work, care and enthusiasm into the framework and its community. Everything you see here exists because of him. We will continue developing and maintaining this project in his memory, keeping alive the developer-first spirit he gave it.

Thank you for everything, Joe. ❤️

About Masonite

Stop using old frameworks with just a few confusing features. Masonite is the developer focused dev tool with all the features you need for the rapid development you deserve. Masonite is perfect for beginners getting their first web app deployed or advanced developers and businesses that need to reach for the full fleet of features available. A short list of the available features are:

  • Mail support for sending emails quickly.
  • Queue support to speed your application up by sending jobs to run on a queue or asynchronously.
  • Notifications for sending notifications to your users simply and effectively.
  • Task scheduling to run your jobs on a schedule (like everyday at midnight) so you can set and forget your tasks.
  • Events you can listen for to execute listeners that perform your tasks when certain events happen in your app.
  • A BEAUTIFUL Active Record style ORM called Masonite ORM. Amazingness at your fingertips.
  • Many more features you need which you can find in the docs!

Learning Masonite

New to Masonite? Read the Official Documentation. Masonite strives to have extremely clear documentation 😃. It would be wise to go through the tutorials there. If you find any discrepencies or anything that doesn't make sense, please open an issue and we will get it cleared up!

Getting Started Quickly

If you have a working Python 3.10–3.13 installation then getting started is as quick as typing

pip install masonite-framework
masonite new blog

The masonite new wizard guides you through creating your application with arrow-key menus — pick a stack (full-stack or API), a frontend preset, a database — then it creates a virtual environment, installs the dependencies, generates your application key, initializes a git repository and offers to start the development server right away.

Prefer no questions? Every step is also a flag:

masonite new blog --api --db=postgres --no-input

project start keeps working as an alias of masonite new for existing tutorials and docs.

Upgrading from 4.x (legacy) to 5.x

Masonite has moved to the masonitedev organization and the PyPI package has been renamed from masonite to masonite-framework.

[!IMPORTANT] The legacy MasoniteFramework/masonite repository and the old masonite PyPI package (4.x and earlier) are deprecated and will no longer receive updates or security fixes. All development continues here. If you are running Masonite 4.x you should upgrade to 5.x from this repository.

  1. Uninstall the legacy package and install the new one:

    pip uninstall masonite
    pip install "masonite-framework>=5,<6"
    
  2. Imports are unchanged — you still import masonite / from masonite import .... The project and craft commands work the same way.

  3. Python 3.10–3.13 is now required (3.8/3.9 were dropped as they reached end of life).

  4. Masonite ORM 3.x and Pendulum 3.x are now required. If your app parses dates directly with Pendulum, review the Pendulum 3 changes (parsing is stricter). If you use pendulum.set_test_now() in your tests, replace it with pendulum.travel_to() or use the built-in self.fakeTime() helper.

  5. Masonite ORM is now published as masonite-framework-orm (replacing masonite-orm). It is installed automatically, but update your own requirement pins if you declare it directly — imports are unchanged (from masoniteorm...).

  6. New in 5.0: a full logging system with terminal, single, daily, stack, syslog and slack drivers, configured in config/logging.py and available through the Log facade. Unhandled exceptions are logged automatically with their traceback. See the Logging documentation.

  7. The repository now lives at https://github.com/masonitedev/masonite and the documentation at https://docs.masonite.dev — update your git remotes, issues and links:

    git remote set-url origin https://github.com/masonitedev/masonite.git
    

Contributing

Contributing to Masonite is simple:

  • Read the Contributing Guide to learn how to contribute to the core source code development of the project.
  • Open an issue or a pull request to ask questions, report bugs or propose changes.

Core Maintainers

Logo

With the move to masonite.dev, Masonite adopted a new brand: the Great Pyramid mark. The original logo from Joe's era remains part of the project's history.

Legacy (2017–2025) New (2026–)
Legacy Masonite logo New Masonite logo — the Great Pyramid mark

Security Vulnerabilities

If you discover a security vulnerability within Masonite please read the Security Policy. All security vulnerabilities will be promptly addressed.

License

The Masonite framework is open-sourced software licensed under the MIT license.

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

masonite_framework-5.1.0.tar.gz (513.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

masonite_framework-5.1.0-py3-none-any.whl (640.7 kB view details)

Uploaded Python 3

File details

Details for the file masonite_framework-5.1.0.tar.gz.

File metadata

  • Download URL: masonite_framework-5.1.0.tar.gz
  • Upload date:
  • Size: 513.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for masonite_framework-5.1.0.tar.gz
Algorithm Hash digest
SHA256 10643dfccc8d5b6edf570e16c33b62184d7e7aa7eaa592f9056008ac87da18c8
MD5 7767dc1970588bf505a5e7d836e356a3
BLAKE2b-256 5fef2276882c08904345484042c0de8e76b8376749e303f89f58ff782405cf93

See more details on using hashes here.

Provenance

The following attestation bundles were made for masonite_framework-5.1.0.tar.gz:

Publisher: pythonpublish.yml on masonitedev/masonite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file masonite_framework-5.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for masonite_framework-5.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 31cda332eed3780169bb2525fa8002d463279266599616e6f7d8ee8b1feaa3cf
MD5 49a3bf6ab840c83f3c3fe5320f659286
BLAKE2b-256 6424a3f45ec5c0396e316488c84e8d461f2e169c803d528408ef5b34e227c888

See more details on using hashes here.

Provenance

The following attestation bundles were made for masonite_framework-5.1.0-py3-none-any.whl:

Publisher: pythonpublish.yml on masonitedev/masonite

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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