GithubHelp home page GithubHelp logo

piedro404 / flask-structure Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 38 KB

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/

License: MIT License

Python 100.00%
api flask python structure swagger web

flask-structure's Introduction

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": "[email protected]",
        "email_academic": "[email protected]",
        "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 [email protected].

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.