When comparing Bottle vs Falcon, the Slant community recommends Bottle for most people. In the question“What are the best general-purpose Python web frameworks usable in production sites?” Bottle is ranked 4th while Falcon is ranked 10th. The most important reason people chose Bottle is:
Bottle works around the one-file approach, everything is done in a `bottle.py` file. This means that it's extremely easy to share and upload your application since it practically is just one python file.
Ranked in these QuestionsQuestion Ranking
Pro Single-file distribution
Bottle works around the one-file approach, everything is done in a
bottle.py file. This means that it's extremely easy to share and upload your application since it practically is just one python file.
Being a small one file distribution it includes almost every vital thing you need to support little websites (routing, templating). Everything else can be implemented using plugins.
Pro Async, *let friendly
Using it with gevent is a breeze. It's a WSGI app so it's easy to make it work with anything.
Pro Truely magnificient.
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,
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.
Con Very hard to develop projects that are not smaller than 1000 lines
While Bottle is a great framework for building small applications (generally less than 1000 lines of code), it starts getting very hard to manage your application if you want to go even a bit larger than that.
The fact that it follows a single-file distribution model and that it's missing something like Flask's blueprints only make this problem worse.
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).