Software Alternatives, Accelerators & Startups

CherryPy VS FastAPI

Compare CherryPy VS FastAPI and see what are their differences

CherryPy logo CherryPy

CherryPy allows developers to build web applications in much the same way they would build any other object-oriented Python program.

FastAPI logo FastAPI

FastAPI is an Open Source, modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints.
  • CherryPy Landing page
    Landing page //
    2023-09-18
  • FastAPI Landing page
    Landing page //
    2023-05-14

CherryPy features and specs

  • Simplicity
    CherryPy is known for its minimalistic and straightforward approach, making it easy to learn and use for rapid development.
  • Pythonic Design
    It is designed to be very Pythonic, allowing developers to leverage Python idioms and structures which results in more readable and maintainable code.
  • Built-in Server
    CherryPy has a built-in HTTP server, so developers don’t need to set up an external server like Apache or Nginx for testing or simple deployments.
  • Object-Oriented Programming
    Supports object-oriented programming, which allows developers to structure their web application code efficiently and logically.
  • Versatile
    Suitable for building small-to-medium scale web applications and services. It can be used for both RESTful interfaces and traditional websites.

Possible disadvantages of CherryPy

  • Limited Ecosystem
    Compared to larger frameworks like Django or Flask, CherryPy has a smaller community and fewer third-party plugins or extensions.
  • Basic Features
    Lacks some advanced out-of-the-box features that larger frameworks provide, which might require additional development effort.
  • Scalability Challenges
    While suitable for many projects, CherryPy might not be the best choice for highly-scalable, high-performance applications out of the box.
  • Documentation
    Though documented, some developers find CherryPy’s documentation less comprehensive than that of more popular frameworks, potentially making troubleshooting and learning harder.
  • Community Support
    With a smaller user base, community support and resources such as tutorials, guides, and forums are more limited compared to more popular frameworks.

FastAPI features and specs

  • High Performance
    Built on Starlette and Pydantic, FastAPI is one of the fastest frameworks for Python, providing high performance due to its asynchronous request handling.
  • Automatic Interactive API Documentation
    FastAPI automatically generates interactive API documentation via Swagger UI and ReDoc, which are very helpful for development and testing.
  • Type Checking and Validation
    With Pydantic models and Python type hints, FastAPI provides automatic data validation and type checking, reducing the chance of runtime errors.
  • Ease of Use
    Its syntax and design make it easy to learn for Python developers, offering a smooth development experience while reducing boilerplate code.
  • Asynchronous Support
    FastAPI supports asynchronous programming, allowing for better performance for I/O-bound operations, making it optimal for handling many simultaneous connections.
  • Extensive Documentation
    It has comprehensive and well-structured documentation, which is very useful for both beginners and advanced users.
  • Community and Ecosystem
    FastAPI has a growing community and ecosystem, with many plugins and integrations available to extend its functionality.

Possible disadvantages of FastAPI

  • Learning Curve for Asynchronous Programming
    Although FastAPI itself is easy to learn, grasping the concepts of asynchronous programming in Python can be challenging for beginners.
  • Complex Dependencies
    Using Pydantic for advanced validation can make the request models complex, requiring a deeper understanding of Pydantic and its functionalities.
  • Early Stage Libraries
    Some third-party libraries and extensions specifically tailored for FastAPI might still be in early stages of development and lack long-term stability.
  • Limited Real-World Examples
    Although the documentation is extensive, there might be limited real-world examples and case studies readily available compared to more mature frameworks.
  • Deployment Complexity
    Deploying FastAPI applications might be more complex in comparison to traditional synchronous frameworks, mainly due to the need for asynchronous server setups.

CherryPy videos

Python Frameworks | Top 5 Frameworks In Python | Django, Web2Py, Flask, Bottle, CherryPy | Edureka

FastAPI videos

FastAPI from the ground up

More videos:

  • Tutorial - 30 Days of Python - Day 14 - Web App with Flask, FastAPI, ngrok, and Invictify - Python TUTORIAL
  • Review - [PT] Python - API com FastAPI - Chat | twitch.tv/codeshow

Category Popularity

0-100% (relative to CherryPy and FastAPI)
Python Web Framework
37 37%
63% 63
Developer Tools
8 8%
92% 92
Web Frameworks
17 17%
83% 83
API Tools
0 0%
100% 100

User comments

Share your experience with using CherryPy and FastAPI. For example, how are they different and which one is better?
Log in or Post with

Reviews

These are some of the external sources and on-site user reviews we've used to compare CherryPy and FastAPI

CherryPy Reviews

25 Python Frameworks to Master
The main task of CherryPy is to handle HTTP requests and match them with the adequate logic written by the developers. This means that by default, CherryPy doesn’t provide database access or HTML templating, leaving all the logic of the application to you.
Source: kinsta.com
Exploring 5 Alternatives to Flask in Python for Web Development
CherryPy is a high-performance web framework in Python that uses a multi-threaded server to handle requests. It provides a powerful API that enables developers to build web applications quickly and efficiently. CherryPy also has support for various third-party plugins and tools that can be easily integrated into the framework. To install CherryPy, use the following command:
Source: msalinasc.com
Top 8 Python Tools For App Development
About: CherryPy is an object-oriented web framework in Python. It allows the users to develop web applications in a similar way they would develop any other object-oriented Python programs. Some of the features of this framework are: –

FastAPI Reviews

The 20 Best Laravel Alternatives for Web Development
FastAPI, as the name hints, is a swift mover. Built on Starlette, it’s all about speed and performance with Python. Crafting API masterpieces at the speed of light, now that’s something.
25 Python Frameworks to Master
Since its release in 2018, it has rapidly gained popularity due to its great performance and simplicity. In fact, according to PyPi Stats, FastAPI has over 9 million monthly downloads, surpassing even full-stack frameworks like Django.
Source: kinsta.com
3 Web Frameworks to Use With Python
myapp/ is the main directory of your FastAPI application. It includes all the other files and directories needed for the application.static/ is a directory used to store static assets such as CSS, JavaScript, and image files. These assets are served directly by the web server and are typically used to add visual styling and interactivity to the application.css/, img/, js/...
Best Alternatives to FastAPI App Free for Windows (2021)
FastAPI Alternative – So many alternatives app to FastAPI that you must to know out there. And, looking for an ideal software was not easy matter. Lucky you, at this page you can find the best replacement app for FastAPI. So what you are waiting for, get the latest FastAPI alternative app for Windows 10 from this page.
Top 5 Back-End Frameworks to Consider for Web Development in 2021
FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. It is fast when compared to other major Python frameworks like Flask and Django. FastAPI gives great flexibility to fulfill businesses’ API needs in today’s evolving world.

Social recommendations and mentions

Based on our record, FastAPI seems to be a lot more popular than CherryPy. While we know about 288 links to FastAPI, we've tracked only 2 mentions of CherryPy. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

CherryPy mentions (2)

  • How to serve Django for an Electron app
    Generally, what needs to be done to create an Django/Electron app is to package (I'm using pyInstaller)the Django app into an stand-alone executable and then bundle that into an Electron app. The question is which server should be used for this case to server Django before packaging it with pyInstaller? At the moment I'm using cherryPy as a WSGI web server to serve Django. Source: about 3 years ago
  • Flask, CherryPy and static content
    I know there are plenty of questions about Flask and CherryPy and static files but I still can't seem to get this working. Source: about 3 years ago

FastAPI mentions (288)

  • How to Set Up CI/CD for a Python Backend Application on Fly.io Using GitHub Actions
    The backend of this accountability AI application is built using FastAPI, a high-performance framework for Python. The app allows users to communicate with the AI, which helps them stay accountable by generating responses based on their input. Below is a breakdown of the key components used in the code:. - Source: dev.to / 9 days ago
  • 🚀 Building Recallr: How I Turned PDFs into Anki Flashcards with AI
    Until I realized Anki has their own API Interface, which made me realize that I can automate this task, efficiently, while also getting hand on experience using FastAPI and LLMs (but am I going to change the stack later?.. Lets see). - Source: dev.to / 6 days ago
  • Building Weather & History Story Cards with Python and FastAPI
    By the end of this tutorial, you’ll see how I used FastAPI and Jinja2 to turn raw JSON into a dynamic timeline of weather and history that feels informative and fun. - Source: dev.to / 21 days ago
  • Build Code-RAGent, an agent for your codebase
    The only thing left to do then was to build something that could showcase the power of code ingestion within a vector database, and it immediately clicked in my mind: "Why don't I ingest my entire codebase of solved Go exercises from Exercism?" That's how I created Code-RAGent, your friendly coding assistant based on your personal codebases and grounded in web search. It is built on top of GPT-4.1, powered by... - Source: dev.to / 22 days ago
  • Understanding the Relation Between FastAPI and Uvicorn
    FastAPI and Uvicorn are two essential building blocks when developing high-performance Python APIs. - Source: dev.to / 23 days ago
View more

What are some alternatives?

When comparing CherryPy and FastAPI, you can also consider the following products

Django - The Web framework for perfectionists with deadlines

Flask - a microframework for Python based on Werkzeug, Jinja 2 and good intentions.

Bottle - bottle.py is a fast and simple micro-framework for python web-applications.

ExpressJS - Sinatra inspired web development framework for node.js -- insanely fast, flexible, and simple

web2py - Web2py is an open source web application framework.

Laravel - A PHP Framework For Web Artisans