Introducing
The Slant team built an AI & it’s awesome
Find the best product instantly
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now
4.7 star rating
0
What is the best alternative to jam.py?
Ad
Ad
Falcon
All
5
Experiences
Pros
3
Cons
1
Specs
Top
Con
Limited in scope
Being designed around building REST APIs and the fact that it's minimalistic with very few dependencies makes Falcon opinionated (you should build a REST API) and limited in scope (you shouldn't be using Falcon to build a news site, blog or ecommerce platform).
See More
Top
Pro
Built to build REST APIs
Falcon is designed entirely around building REST APIs. It achieves this helps a lot with it being lightweight and simple. It also helps developers take some design choices which would otherwise not be possible with a more general-purpose framework,
See More
Top
Pro
Lightweight with minimal dependencies
Falcon is a very lightweight framework. This can be noticed simply by looking at the dependency list: other than the python standard library, six and mimeparse are the only dependencies.
See More
Top
Pro
Performance is really awesome
See More
Specs
Platforms:
Windows, Linux, Mac
Technology:
Javascript
Hide
Get it
here
26
4
FastAPI
All
17
Experiences
Pros
15
Cons
1
Specs
Top
Pro
Dependency injection
It has a simple but powerful dependency injection system, it can be used to handle authentication, per-user rate limiting, authorization controls (e.g. with roles), etc.
See More
Top
Con
Smaller community
Since FastAPI is relatively new, its community is smaller than Django Rest Framework. But it can grow with time.
See More
Top
Pro
Standards
It is based on standards: OpenAPI, JSON Schema and OAuth 2.0.
See More
Top
Pro
Data validation
It validates the data using the types you declared. Even in deeply nested JSON requests.
See More
Top
Pro
High-performance
It's based on Starlette and Pydantic, so, it's one of the fastest Python frameworks.
See More
Top
Pro
Editor completion
It is based on Python type declarations, so, editors and tools can give great support. Including type checks and autocompletion everywhere.
See More
Top
Pro
One of the fastest growing communities
See More
Top
Pro
Fast is really fast (!)
It's easy to develop API based applications in Python on deadlines for Android and IOS Development.
See More
Top
Pro
Automatic docs
It generates interactive API documentation automatically from your code.
See More
Top
Pro
Database independent
It's independent of database or ORM, but compatible with all of them. Including relational databases and NoSQL.
See More
Top
Pro
Async IO / optional
It's based on Async IO, which gives it high concurrency. But you can use non-async libraries and it runs them appropriately.
See More
Top
Pro
World class documentation
It has some of the best documentation of any framework.
See More
Top
Pro
WebSockets
Because it's an async framework, it can handle async-native protocols like WebSockets.
See More
Top
Pro
OAuth 2.0
It has integrated support for OAuth 2.0. Including declaring required scopes per endpoint. So, you can easily integrate it with external OAuth 2.0 providers or build your own with it.
See More
Top
Pro
Background tasks
Included support for background tasks, thanks to being based on Starlette.
See More
Top
Pro
Supports GraphQL
Python's graphene library is included as an optional dependency meaning that GraphQL API's are supported out of the box, with no additional tweaking needed.
See More
Specs
Platforms:
Cross-platform
License:
MIT
Type:
standard and feature rich micro-framework
Initial Release:
2019
See All Specs
Hide
See All
Experiences
Free
193
29
web2py
All
13
Experiences
Pros
11
Cons
2
Top
Pro
Documentation is written in form of a book which is good for beginners
web2py documentation does not follow the common pattern of using Sphinx, MkDocs or ReadTheDocs which is goos for exeperienced developers. Although documentation in form of a book is very easy and good for beginners. Turning web2py the most easy and comprehensive framework to learn and also to teach.
See More
Top
Con
Abandoned framework with (almost) no community
See More
Top
Pro
Web2py apps run on GAE, AWS, VPNs, PythonAnywhere, etc
Web2py apps are designed to be portable. With some minor restrictions web2py apps can run on any VPS on SQL databases and/or Mongo, as well as on Google App Engine with the Google Datastore. It is truly code ones and run everywhere. For example at Camio.com we use web2py internally to access a GAE datastore which contains more images than Instagram.
See More
Top
Con
The web IDE is not a full-featured IDE
web2py includes an "admin" app that serves as a web-based IDE for web2py applications. It includes many features, such as application creation, compiling, and packaging; an error ticketing system; a code editor; a debugger; a controller doctest runner; Git and Mercurial integration; and one-click deployment to PythonAnywhere, Google App Engine, and OpenShift. However, particularly with regard to code editing and debugging and version control integration, it is not as full-featured as some of the more popular desktop IDEs such as PyCharm. So, developers expecting a PyCharm-like experience may be somewhat disappointed. In any case, use of the web-based IDE is completely optional.
See More
Top
Pro
User support
The web2py community is open and friendly and it gives concrete support to newbies and old timers. It's not difficult to get answers from the BDFL Massimo Di Pierro himself.
See More
Top
Pro
Maintainable over time
One really positive aspect of web2py application is their maintainability over the years. Old code works even if the framework is updated to the latest version. Not only that, if code is written well it is very short and a new team can pick it up over in little time.
See More
Top
Pro
PyCharm supports web2py
While web2py has its own web based IDE which is convenient, it works with WinIDE, PyCharm, and Eclipse. The first two explicitly support web2py. The latter requires some configuration.
See More
Top
Pro
Easy to learn without losing any power
web2py is very easy to learn for beginners, yet it has a great deal of power and flexibility as application needs become more complex. It includes an impressively comprehensive set of features, making development very productive without the need to integrate a lot of third-party libraries.
See More
Top
Pro
Can be tuned to be really fast in production
The framework is really fast in production after some optimization and fine tuning which can minimize the memory footprint in order to make it run on a really small VPS or slice.
See More
Top
Pro
Easily extendable
Allows users to easily extend functionality by using external libraries.
See More
Top
Pro
No need to import the API to access the models and controllers context at every request
Models and controllers live in the context of the HTTP request. So the developer does not have to import the API to access this context at every request. In other words, the models, controllers and templates in web2py use a domain specific language which uses pure web2py syntax and allows to import any module but exposes a few additional objects.
See More
Top
Pro
Includes a web-based IDE for creating and managing applications
web2py includes an "admin" app that serves as a web-based IDE for web2py applications. It includes many features, such as application creation, compiling, and packaging; an error ticketing system; a code editor; a debugger; a controller doctest runner; Git and Mercurial integration; and one-click deployment to PythonAnywhere, Google App Engine, and OpenShift. It is not intended as a full desktop IDE replacement, but it includes some helpful web2py specific functionality and can be convenient for basic editing and debugging tasks and quick prototyping, even for those who primarily work with a more full-featured desktop IDE or editor.
See More
Top
Pro
web2py supports the classic editor Vim
See More
Hide
See All
Experiences
Get it
here
67
16
Flask
All
11
Experiences
Pros
6
Cons
4
Specs
Top
Pro
Minimalist without losing power
Flask is very easy to get up and going, with vanilla HTML or with bootstrap pieces. It doesn't take much lines of Python to load Flask to get headers working, etc, and since it's all modular you don't have to have something you don't want in your application.
See More
Top
Con
Not async-friendly
Flask is explicitly not designed to handle async programming.
See More
Top
Pro
Lots of resources available online
Flask is one of the most popular Python web frameworks, if not the most popular one. As such, there's plenty of guides, tutorials, and libraries available for it. A large number of important Python libraries, such as SQLAlchemy have libraries for Flask, which add valuable bindings to make the development process and the integration between these libraries and Flask as easy as possible.
See More
Top
Con
Setting up a large project requires some previous knowledge of the framework
Setting up a large project with Flask is not that easy considering how there's no "official" way of doing it. Blueprints are a useful tool in this regard but require some additional reading and are a bit tricky to get right for a beginner. The lack of some defaults can also be problematic. Having to choose between different libraries for a certain task is never easy, especially if you have never worked with Flask before.
See More
Top
Pro
Extremely easy to build a quick prototype
Even though it's pretty minimalistic out of the box, Flask still provides the necessary tools to build a quick prototype for a web app right after a fresh install. With all the main components pretty much packed in the flask package, building a simple web app in a single Python file is as easy as it gets.
See More
Top
Con
Threadlocals and globals used everywhere
The default way of creating applications in flask makes it hard to use reusable and clean code.
See More
Top
Pro
Very flexible
Flask gives developers a lot of flexibility in how they develop their web applications. For example, the choice of not having an ORM, but instead choosing one suited to the task, or another area where Flask gives a lot of options to developers is the templating. They can use Jinja2, Flask's default templating language or choose from a number of different templating languages they desire.
See More
Top
Con
HTML-oriented, not API-oriented
Not necessarily designed for making APIs, though that is possible
See More
Top
Pro
Great documentation
The official documentation is very thorough and complete. Everything is explained in-depth and followed by extremely well-explained tutorials that tackle real-world problems.
See More
Top
Pro
Able to use ORM or "true SQL"
See More
Specs
License:
BSD License
Written in:
Python
Hide
See All
Experiences
Get it
here
306
67
Django
All
13
Experiences
Pros
8
Cons
4
Specs
Top
Con
Can feel bloated for small projects
Django's sheer scale and functionality can feel clunky and bloated for small applications. It has too many bells and whistles which can get in the way when developing a small scale application.
See More
Top
Pro
Developing a simple prototype can be very fast
Django's philosophy of batteries included means that experienced developers won't have to plan too much ahead on what kind of application infrastructure they need and instead just start developing web applications quickly.
See More
Top
Con
The documentation does not cover real-world scenarios
It is a larger documentation indeed, however is not deep and covers non real problems or even don't show any examples. You'll be better with Google or Stackoverflow
See More
Top
Pro
ORM support out of the box
Django supports Object-Relational Mapping. With models defined as Python classes which are actually subclasses of Django's django.db.models.Model. Each attribute of the model is then represented as a database field. Queries are lazily executed and Django gives developers an automatically-generated database-access API.
See More
Top
Con
Routing requires some knowledge of regular expressions
Given a GET request for /topics/426/viewpoints/1/sections/create, how does Django decide which bit of Python code is invoked to handle it? It compares the request path to your giant pile of regular expressions. And then if there's some other regular expression starts matching /top and all your requests for /topics/ start going there, good luck figuring out why. You won't be informed of any conflict until you notice you seem to be getting the wrong pages back. The structure of URL paths is almost universally hierarchal. There is no call to have anything as ridiculously flexible (and notoriously hard-to-read) as regular expressions to organize request routing.
See More
Top
Pro
Top notch documentation and help from community
The official Django documentation is probably some of the best around. Well written, thorough and they explain every little detail of the framework. Django is also a very popular tool, with an extensive community and a lot of experienced developers that have been using it for years. This means that there are a lot of guides and tutorials out there for new and experienced developers alike.
See More
Top
Con
Template errors fail silently by default
If you make a typo in a template variable, or change a view so that variable is no longer passed to the template, you won't get an error message pointing out that something has gone wrong. That reference will just be treated as if it is an empty string instead. There is a way to configure this, but since so many templates have been written assuming this behavior, nobody ever enables template errors because it would break so much of the existing support tools (e.g. the built-in admin interface).
See More
Top
Pro
Highly customizable
Django is in itself a highly customizable web framework. The database, template framework and ORM can all be swapped out.
See More
Top
Pro
Has an admin panel out of the box
Django comes with a highly customizable admin panel and authentication out of the box. This makes the development and production of a simple CMS extremely easy.
See More
Top
Pro
Mature software with many plugins developed over the years
Django was first released in 2005, it has had a lot of time to mature and become better with each release. It also has by far the largest community out of all python frameworks who have continuously over the years built and maintained many powerful plugins.
See More
Top
Pro
Clear and defined MVC organization
Django follows some pretty well established MVC patterns. With everything in place and where requests follow a clear path through urlresolvers, middleware, view and context processors.
See More
Top
Pro
Simple database management
Just a few lines of code can instruct Django to create all the tables and fields required in your database automatically. Schemas are managed with "migrations", that are also created automatically, and can be rolled out from your development box and implemented on production systems with just a single command. This performs any database changes required, from table creation, indexes, renaming fields, and pre-populating initial data. Each migration builds on the previous migrations, so you can trace the evolution of your data and even recreate the layout of your database at any point in the lifecycle of your application.
See More
Specs
Multi Language Support:
Excellent
Written in:
Python
Default Template Engine:
Django
Default ORM:
Django ORM
See All Specs
Hide
See All
Experiences
Get it
here
531
115
Built By the Slant team
Find the best product instantly.
4.7 star rating
Add to Chrome
Add to Edge
Add to Firefox
Add to Opera
Add to Brave
Add to Safari
Try it now - it's free
{}
undefined
url next
price drop