piedro404 / flask-structure

A Python library dedicated to exemplify and facilitate the start of Flask projects for APIs πŸ’«. Download flask-structure and streamline the "start" of your projects with ease πŸš€.

Home Page:https://pypi.org/project/flask-structure/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Flask-Structure - Base Structure for API Projects 🧱

Licença PyPI

A Python library dedicated to exemplify and facilitate the start of Flask projects for APIs πŸ’«. Download flask-structure and streamline the "start" of your projects with ease πŸš€.

Repository with the idea of ​​the Library: Flask-Api-Structure

Organized and Scalable Structure. πŸ˜ŽπŸ“±

Project that can serve as a basis and learning to understand the structure

Structure

2024-03-09_17h53_25

Details

  • Controllers: Contains controllers that manage the application logic, connecting routes to specific operations.
  • Drivers: Stores the drivers and libraries necessary to connect and operate with other services or hardware.
  • Errors: Defines specific error types and custom exceptions that can be triggered during code execution.
  • Main: The main entry point of the application. Within this folder, "Routes" manages API routes, and "Server" is responsible for starting and managing the web server.
  • Models: Contains data models, usually classes representing tables in the database.
  • Static: Stores static files such as CSS, JS, images, etc., needed to render front-end web pages.
  • Templates: Maintains HTML templates and documentation related to the structure or usage of the API.
  • Validators: Includes scripts or modules to validate input data or API requests.
  • Views: Defines different types of HTTP responses and views associated with presentation logic.

API Structure Features πŸ”¨

  • Info: Welcomes users and provides relevant information about the API and contacts.
  • Docs: A place to learn about the API and how to use it interactively and dynamically.
  • Favicon.ico: Icon to be displayed in the website window.

flask-stucture

Key Technologies Used 🌐

  • Flask: Framework used for web application development, providing a flexible and efficient structure for creating APIs and user interfaces.
  • Python: Primary programming language chosen for its versatility, simplicity, and large developer community.
  • Cerberus: Python data validation library, used to ensure the integrity and consistency of data manipulated by the application.
  • Other Libraries: The rest of the libraries can be found in requirements.txt, including various tools and utilities that complement and enhance the application's functionality.

Documentation πŸ“ƒ

API:

An API (Application Programming Interface) is a set of rules and definitions that allows communication between different software. It enables applications and services to exchange information and functionality efficiently and standardized.

Key Uses in Development:

  1. Service Integration: APIs facilitate integration between different services and platforms, allowing applications to share data and functionality.
  2. Mobile Application Development: APIs are essential for mobile app development, providing access to resources such as location, camera, notifications, among others.
  3. Access to External Data: Used to obtain data from external sources, such as social networks, databases, third-party services, providing up-to-date information.
  4. Integration with Web Platforms: APIs are crucial for integrating web applications, enabling efficient communication between the front-end and back-end.
  5. Microservices Development: In microservices architectures, APIs are essential for communication between the various distributed components of an application.
  6. Task Automation: APIs allow the automation of routine tasks, optimizing processes and improving operational efficiency.
  7. Plugin and Extension Development: Used to create plugins and extensions in various platforms, expanding the functionalities of existing software.
  8. Resource Economy: Facilitate development by allowing the reuse of already implemented functionalities, saving time and resources.

How to Run the Library Locally πŸ› οΈ

  1. Virtual Environment (Optional) For organization and ease of running the project, I suggest creating a virtual environment. To do this, use the following command:
  python -m venv .venv
  .venv\Scripts\activate
  1. Download the library:
   pip install flask-structure
  1. Run the command to create the project structure
  flask-structure create
  1. Install dependencies:
   pip install -r requirements.txt
  1. Run the application:
   python run.py
  1. Use the structure your way ;)

Demonstrated Features of the Generated Structure πŸ’»

  1. Main Route ("/"): Returns a template that renders Swagger documentation.
    (http://127.0.0.1:3000)
2024-03-09_18h21_55
  1. API Information Route ("/info"): Returns a JSON with information about the API.
    (http://127.0.0.1:3000/info)
{
    "status": True,
    "message": "Welcome to the Structure Flask API!",
    "version": "1.0v",
    "endpoints": {
        "docs": "/",
        "info": "/info",
    },
    "documentation": "/",
    "contact": {
        "email_personal": "pedro.henrique.martins404@gmail.com",
        "email_academic": "pedro.borges@alu.unibalsas.edu.br",
        "github": "piedro404",
        "linkedin": "pedrohenrique404"
    }
}

License

This project is licensed under the MIT License - see the LICENSE file for details.

About πŸ“’

Thanks to everyone, I wish you great studies. If you want, contact me at pedro.henrique.martins404@gmail.com.

About

A Python library dedicated to exemplify and facilitate the start of Flask projects for APIs πŸ’«. Download flask-structure and streamline the "start" of your projects with ease πŸš€.

https://pypi.org/project/flask-structure/

License:MIT License


Languages

Language:Python 100.0%