DEV Community

Joseph Mancuso for Masonite

Posted on

Next version of Masonite - v2.1 released! The Modern Python Web Framework

Introduction

Masonite 2.1 has been released! Masonite is an amazing MVC and true batteries included web framework.

For those familiar with 2.0, 2.1 changes how several classes are inherited in the application to assist in some of the challenges we saw hot fixing Masonite. It also improves some of the quirks with the framework that we noticed devs were doing. If you are coming from 2.0 then be sure to read the What's New - Masonite 2.1 docs as well as the official Upgrade Guide from 2.0 to 2.1.

Testimonials and Feedback

Most developers who use the framework have really amazing things to say about it. Some of the feedback I have gotten over the past 6 months include:

René Moser [Nov 21st at 8:03 AM]
"really enjoying doing things in Masonite, finally I can make things real"

When choosing Masonite over Django for a bid for a development contract (which he won):

Abram Isola [Sep 20th at 1:55 PM]
My deciding factors:

  1. The application has to hook into an existing database with an existing schema AS WELL as manage a database of its own. This almost certainly knocks out Django because of its models. Using masonite allows me to use an ORM (Orator) that is flexible enough for me to access several different databases while managing the schema in only one of them. Huge time save.
  2. The craft command allows me to generate (or write generators for) most of my code that I'll be doing for them. Huge time save.
  3. Masonite's folder structure lends itself to the architecture that I've chosen for this project.
  4. Masonite's release cycle make's it a safe choice for large companies. Upgrading can usually be automated with a simple script. Huge time save. (IDEA: We should build this into craft somehow.)
  5. Masonite's flexible middleware allows me to very easily manage the levels of access controls that they want in a modular way.
  6. Masonite's upload drivers allow me to manage the connections to their various upload services very easily.
  7. I just wanted to do it because I like Masonite better than others

When talking about Masonite vs their current work software in Django:

Dean Raemaekers [Sep 17th at 11:24 AM]
What I've built in Masonite so far can do some things that the actual official software can't do. And that was done in a few days.

and here are some others:

Dean Raemaekers [Sep 14th at 1:42 PM]
I still like Django but Masonite just has more of a wow factor for me... It's new but it feels so mature

Dean Raemaekers [Sep 12th at 11:51 AM]
Wow. I am finished the first part of the app that I wanted to write. That was really quick. Yes, Masonite makes projects quick to develop.

Caleb Meyer [Aug 20th at 5:26 PM]
I've never written any laravel (PHP makes me shudder), but I've been doing ruby and rails for about 5 years now, and this is the first python framework that's made any sense from that perspective.

Tony Hammack [Aug 16th at 9:23 PM]
I heard your talk on Podcast.init two days ago. I checked out Masonite yesterday, and I ported my Flask app over in under 30 min. It took me 6 hours of figuring out how to get my flask set up and refactor it to get to a production level.

Although I have gotten better at python, I have to say that this framework is the easiest I have ever worked with. The documentation is so darn helpful. The amount of useful code comments and docstrings is amazing. I hope other packages adopt this strategy. Great job!

Features

Out of the box it has:

  • An active record style ORM
  • A companion scaffolding CLI tool
  • A very explicit IOC container to manage application dependencies
  • Built in support for many of the services we all need like Amazon s3 upload and disk support
  • Built in support for websockets / Pusher support
  • SMTP and Mailgun email support out of the box
  • explicit use cases of design patterns. Most developers who use Masonite learn these design patterns and how they are used which naturally makes them learn design patterns in a practical sense and through example and real world scenarios
  • Built in database seeding to very quickly seed data into your table
  • Built in Queue support for queuing jobs with RabbitMQ and other queue services
  • Nearly 600 pages of extensive documentation.
  • And a whooole lot more.

Masonite had an awesome time with the last 2.0 release in June and gained a bit of a following and some awesome contributing community members.

Here are the main links to check it out:

Top comments (1)

Collapse
 
rf_schubert profile image
Raphael Schubert

Yes! I started with Masonite a little time ago, and its awesome how it helps we improve our design pattern as it is so easy and has simple yet powerful builtin methods!

I'm in love with it! recommend to other devs learn about Masonite...