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.3.0.tar.gz (519.0 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.3.0-py3-none-any.whl (647.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: masonite_framework-5.3.0.tar.gz
  • Upload date:
  • Size: 519.0 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.3.0.tar.gz
Algorithm Hash digest
SHA256 e50a00a73c8913961a507675230fc40077a0cc4706d822e185afa2ca3b04508d
MD5 ed098231f00c7ad5b894ee3762daf27f
BLAKE2b-256 2552655ff2270eb421e95833766793251c6f7b8c95fb695608d1466692a4fe7f

See more details on using hashes here.

Provenance

The following attestation bundles were made for masonite_framework-5.3.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.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for masonite_framework-5.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3bb626c414c3efbceab9602d9fd5215af6abf8cc109d9bd76a8b6792aef7adf6
MD5 dcca74c20b54dfbd6fdf9df96160a0c2
BLAKE2b-256 9e896a93fd5128099f9a5adb6bb7d92fd1e9a5c06844cea0f2bbf5276dc8168f

See more details on using hashes here.

Provenance

The following attestation bundles were made for masonite_framework-5.3.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