Research for Practice App - bounswe/bounswe2023group2 GitHub Wiki

Frameworks

We already decided on using FastAPI as our framework. FastAPI is a modern and efficient framework that is designed to be easy to use and quick to develop with. It includes features such as automatic documentation generation, type hints, and high-performance async support, which can make development faster and more efficient. However, FastAPI may be more difficult to learn than Flask, especially if you are not familiar with Python's async programming model.

Databases

We need a simple database for the project. here are possible database languages:

SQL languages

  • MySQL: MySQL is one of the most popular open-source SQL databases, known for its speed, reliability, and ease of use. It is commonly used in web applications and is a popular choice for small to medium-sized projects.
  • PostgreSQL: PostgreSQL is another open-source SQL database that is known for its robustness and scalability. It has a strong reputation for data integrity and is often used in large-scale applications and enterprise environments.
  • SQLite: SQLite is a lightweight, file-based SQL database that is designed for local data storage. It is commonly used in mobile apps and other lightweight applications, and is known for its simplicity and small footprint. We have already used MySQL and SQLite in our projects for another course.

NoSQL languages

MongoDB: MongoDB is a popular choice for projects that require high scalability and availability, as well as those that deal with large volumes of unstructured or semi-structured data. However, the choice of database technology ultimately depends on the specific requirements and constraints of the project, and it is important to carefully evaluate the strengths and limitations of each database system before making a decision.

Back end

We decided on using Python.

Front End

APIs

Firebase

Docker

AWS

#Git