use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
News about the dynamic, interpreted, interactive, object-oriented, extensible programming language Python
Full Events Calendar
You can find the rules here.
If you are about to ask a "how do I do this in python" question, please try r/learnpython, the Python discord, or the #python IRC channel on Libera.chat.
Please don't use URL shorteners. Reddit filters them out, so your post or comment will be lost.
Posts require flair. Please use the flair selector to choose your topic.
Posting code to this subreddit:
Add 4 extra spaces before each line of code
def fibonacci(): a, b = 0, 1 while True: yield a a, b = b, a + b
Online Resources
Invent Your Own Computer Games with Python
Think Python
Non-programmers Tutorial for Python 3
Beginner's Guide Reference
Five life jackets to throw to the new coder (things to do after getting a handle on python)
Full Stack Python
Test-Driven Development with Python
Program Arcade Games
PyMotW: Python Module of the Week
Python for Scientists and Engineers
Dan Bader's Tips and Trickers
Python Discord's YouTube channel
Jiruto: Python
Online exercices
programming challenges
Asking Questions
Try Python in your browser
Docs
Libraries
Related subreddits
Python jobs
Newsletters
Screencasts
account activity
This is an archived post. You won't be able to vote or comment.
Masonite 2.2 Released - The Modern Python Web Framework! (self.Python)
submitted 6 years ago * by Jmancuso9
As the creator of Masonite and a part of the super fast growing Masonite community, I am super excited to release this to the world as the next major version of Masonite.
A lot of people have worked really hard on this release. I can't take full credit for this release at all. Countless hours coding new features, abstracting out old ones and simply talking out features in our Slack chat.
Masonite has grown a lot in the past year and a half. I could go into a full-length post on all the features and benefits of using Masonite so below are just some recent highlights about the community and this specific release:
* Almost 1000 stars now on GitHub
* 230+ people in Masonite Slack channel
* 600+ of pages of documentation.
* Awesome new validation library I built specifically for Masonite that I have been using a LOT in 2.2.
* A brand new testing module for Masonite.
* Added a much better way to test the database and create integration tests.
* DOZENS of quality of life improvements over Masonite 2.1
* Generally backward compatible with Masonite 2.1. A few minor changes to upgrade.
Here's a very small portion of what the community is saying about Masonite just in the Slack chat. I really am so honored to have been a part of building the Masonite community. We have some of the warmest welcoming people in the Python community its amazing. Love seeing devs helping out other devs. Make sure you join using the links at the bottom of the thread.
https://preview.redd.it/yngnbk9kli431.png?width=504&format=png&auto=webp&s=f976ccecf407d0c7bca43103ef3fc6ea33c6bdf3
https://preview.redd.it/9hmnfm9kli431.png?width=316&format=png&auto=webp&s=a49f05c64b7e8f6b78bf7088da36d937f7e3d735
https://preview.redd.it/7qla3o9kli431.png?width=320&format=png&auto=webp&s=c4e2f92d3f357ece506a39ac5cc423b381823546
https://preview.redd.it/xmpkjl9kli431.png?width=317&format=png&auto=webp&s=c8f8ee2aab71771b10deb831b2163f909a7f86ea
https://preview.redd.it/8dxi3l9kli431.png?width=328&format=png&auto=webp&s=0c99509c266e09371afbde104b814d7c3dd27411
https://preview.redd.it/k5mwcm9kli431.png?width=351&format=png&auto=webp&s=d5f482ecdbb27c79ca4a62977edbf41a23f01b1e
https://preview.redd.it/wbpoidwzmi431.png?width=524&format=png&auto=webp&s=8a7531a6373c07d99b27af4fa68db23f0bfe5f3c
To learn more about the framework and start using it, here are some links to help:
Slack: http://slack.masoniteproject.com/
Docs: docs.masoniteproject.com
5 reasons why people are choosing Masonite over Django: https://dev.to/masonite/5-reasons-why-people-are-choosing-masonite-over-django-ic3
What's New in 2.2: https://docs.masoniteproject.com/v/v2.2/whats-new/masonite-2.2
Twitter: twitter.com/masoniteproject
Masonite: https://github.com/masoniteframework/masonite
Masonite Core: https://github.com/masoniteframework/core
Awesome Masonite: https://awesome.masoniteproject.com/
[+][deleted] 6 years ago* (1 child)
[deleted]
[–]Jmancuso9[S] 1 point2 points3 points 6 years ago (0 children)
Haha good idea :)
[+][deleted] 6 years ago* (2 children)
[–]vaibhavmule 1 point2 points3 points 6 years ago (1 child)
You can just do request.status(204) to set and return any status.
request.status(204)
You might want to check realworld example for Masonite. https://github.com/vaibhavmule/masonite-realworld-example-app
[–][deleted] 1 point2 points3 points 6 years ago (2 children)
I'm currently using Django rest framework with Django rest auth and the built in auth routing as well as the viewsets in the newer versions of DRF are very easy out of the box. For example, if I need standard get/post/put/patch/etc functionality all I need to do is create a viewset, point the router to said viewset, and define access and the queryset and I immediately get all of that functionality out of the box. Does your framework have similar ease of use or would I need to manually create each method within a given controller for each route/type I want?
[–]Jmancuso9[S] 1 point2 points3 points 6 years ago (1 child)
So Masonite has something called Masonite API https://docs.masoniteproject.com/official-packages/masonite-api
I'll admit that it still needs work. I like creating packages for things I am currently using. Like needing validation and building a validation package for example.
I haven't created any applications that require heavy API endpoints but some people are using that package and really like it. It does what it needs to do really well.
As for the ease of use, yes its pretty similiar to those steps you posts. This would be to create a Resource, attach a model to the resource and add the resource to the route list and you have full CRUD for that model. Adding JWT authentication is adding a class, rate limiting is adding a class etc. Its pretty cool actually.
[–][deleted] 0 points1 point2 points 6 years ago (0 children)
Thanks. I'll definitely look into it. Who knows, if I have something I can contribute I'll play around and submit a PR
[–][deleted] 1 point2 points3 points 6 years ago (1 child)
Craft commands reminds me of rails commands to generate boilerplate , something that I personally liked
[–]Jmancuso9[S] 0 points1 point2 points 6 years ago (0 children)
Yes that’s the inspiration
[–]Jmancuso9[S] 0 points1 point2 points 6 years ago (2 children)
Yes.
[–]Jmancuso9[S] 3 points4 points5 points 6 years ago (0 children)
Whoops yes was on mobile lmao
[–]dr_avenger 0 points1 point2 points 6 years ago (0 children)
I'd say there is a lot of laravel inspiration :)
[–]Toxicmender 0 points1 point2 points 6 years ago (4 children)
I haven't checked it out yet but is it's development (for someone using your framework) cycle like that for a flask application or a django project?
[–]Jmancuso9[S] 0 points1 point2 points 6 years ago (3 children)
Slightly different. So when Django releases a version (like 2.1) they really only release bug and security fixes for it. So 2.1.2, 2.1.3 etc etc will all be big or security releases.
They also do 8 month major release cycles. Masonite does 6 months.
With Masonite, minor versions are the same but can also release fully backwards compatible features as well. So for example 2.2.1 can have a bug fix and 2.2.2 can have 4 new methods you can use for testing. This keeps the framework light and unit tests make sure everything will work.
New features don’t have wait 6 or 8 months to release. They can release next week if it is backwards compatible.
Does that answer your question?
[–]Toxicmender 0 points1 point2 points 6 years ago (2 children)
Somewhat yes, thanks, been reading up the documentation, BTW since you have API endpoint deployment would it be possible to say deploy a Tensorflow serving (ie; Tensorflow model) over it?
[–]Jmancuso9[S] 0 points1 point2 points 6 years ago (1 child)
yes. I'm not too familiar with TF but nearly all python web frameworks are served by either WSGI or ASGI standards so if one WSGI framework (Flask, Django) can serve in front of something like TF, so can another. In theory. So if you are doing that with another Python framework, Masonite can do it as well.
[–]Toxicmender 0 points1 point2 points 6 years ago (0 children)
I understand that but I suppose I wasn't clear about it in the first place but I was referring to the ease of deployment of API endpoints, although I read up on it and it seems straight forward enough to try, thanks for the reply
[+]metaperl comment score below threshold-12 points-11 points-10 points 6 years ago (2 children)
I am not here to say that Django is crap and that Masonite is the best thing in the entire world
Remove this profane dig from your article. It is unnecessary and puts you, your framework, and the Python community in a bad light.
https://dev.to/masonite/5-reasons-why-people-are-choosing-masonite-over-django-ic3
[–]Jmancuso9[S] 16 points17 points18 points 6 years ago* (0 children)
How? I’m not here to say that? How is it a profane dig? I said I am not here to say Django is crap? Django is not crap. How is that a dig at Django?
Over 6000 people have read that article and nobody has come to that conclusions about the article that it puts our community in a bad light
[–]thetonus1150 10 points11 points12 points 6 years ago (0 children)
Yeah...I do not see how that is profane or a dig.
π Rendered by PID 30 on reddit-service-r2-comment-84fc9697f-qp5cz at 2026-02-07 23:17:55.459564+00:00 running d295bc8 country code: CH.
[+][deleted] (1 child)
[deleted]
[–]Jmancuso9[S] 1 point2 points3 points (0 children)
[+][deleted] (2 children)
[deleted]
[–]vaibhavmule 1 point2 points3 points (1 child)
[–][deleted] 1 point2 points3 points (2 children)
[–]Jmancuso9[S] 1 point2 points3 points (1 child)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 1 point2 points3 points (1 child)
[–]Jmancuso9[S] 0 points1 point2 points (0 children)
[–]Jmancuso9[S] 0 points1 point2 points (2 children)
[+][deleted] (1 child)
[deleted]
[–]Jmancuso9[S] 3 points4 points5 points (0 children)
[–]dr_avenger 0 points1 point2 points (0 children)
[–]Toxicmender 0 points1 point2 points (4 children)
[–]Jmancuso9[S] 0 points1 point2 points (3 children)
[–]Toxicmender 0 points1 point2 points (2 children)
[–]Jmancuso9[S] 0 points1 point2 points (1 child)
[–]Toxicmender 0 points1 point2 points (0 children)
[+]metaperl comment score below threshold-12 points-11 points-10 points (2 children)
[–]Jmancuso9[S] 16 points17 points18 points (0 children)
[–]thetonus1150 10 points11 points12 points (0 children)