Skip to main content

SimplesAPI is intended to be the easiest API to implementation in Python

Project description

SimplesAPI

SimplesAPI is a Python-based application framework designed to simplify the implementation of various functionalities such as database connections, structured logging, event dispatching, bucket access, and queue processing. By reducing code repetition and enhancing code readability, SimpleAPI allows developers to focus on solving business problems and rapidly create Proof of Concepts (POCs).

image

Features (WIP)

  • Database Connections: Seamlessly connect to different types of databases with minimal configuration.
  • Structured Logging: Implement structured and meaningful logs effortlessly.
  • Event Dispatching: Send and handle events with ease.
  • Bucket Access: Access and manage data stored in buckets.
  • Queue Processing: Send messages to and retrieve messages from processing queues.
  • Code Simplicity: Reduce boilerplate code to keep your codebase clean and maintainable.
  • Rapid POC Development: Quickly develop and iterate on Proof of Concepts.

Installation

To install SimplesAPI, simply run:

pip install simplesapi

Getting Started

Basic Setup

The main entry point of your application (main.py) should be set up as follows:

from simplesapi.app import SimplesAPI
app = SimplesAPI(routes_path="routes")

Folder Structure

SimpleAPI uses a folder structure to define routes. For example, to create a GET route for /users/{userId}, the folder structure should be:

routes/health-check__GET.py
routes/users/POST.py
routes/users/[userId]__GET.py
routes/users/DELETE.py
routes/users/PATCH.py

Route Handler

Inside the route file ([userId]__GET.py), you should define an asynchronous handler function:

async def handler(userId: str):
    return {"id": userId}

Running

uvicorn main:app

Contributing

We welcome contributions to SimpleAPI! Please read our contributing guidelines before submitting a pull request.

License

SimpleAPI is licensed under the MIT License. See the LICENSE file for more details.

Contact

For any questions or feedback, please contact in project Github.

By leveraging SimpleAPI, developers can streamline their application development process, focus on core business logic, and quickly bring their ideas to life.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

simplesapi-0.0.0a13.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

simplesapi-0.0.0a13-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file simplesapi-0.0.0a13.tar.gz.

File metadata

  • Download URL: simplesapi-0.0.0a13.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.0 Windows/11

File hashes

Hashes for simplesapi-0.0.0a13.tar.gz
Algorithm Hash digest
SHA256 907ac2cd68cc721a4d5fba94cd8b11530ba98a5638673185f8bb562225b6c5ba
MD5 27c5447d1f5055448df33d12204c60ad
BLAKE2b-256 1c6f497f80cc5e9d1b17d24a52e61941110e2ab7015516afcd5be6cd9891b034

See more details on using hashes here.

File details

Details for the file simplesapi-0.0.0a13-py3-none-any.whl.

File metadata

  • Download URL: simplesapi-0.0.0a13-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.0 Windows/11

File hashes

Hashes for simplesapi-0.0.0a13-py3-none-any.whl
Algorithm Hash digest
SHA256 d55b690bb1cb1458e6023472c971941fbda36cf31c5c25aadd4889f300c892cb
MD5 6abe4bae58d8d5cdc170b57f8ad5a1de
BLAKE2b-256 dbc1f2fb09b6abc16de7b4528e828afb800b698c69fcbaa3c587a28e15cb99d0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page