Hello DEV community! My first post here.
I'm a python veteran and have built many web services with various python frameworks for a long time. In recent years the codebase that I usually start with has stabilized into a coherent set of source files and components that I recently open-sourced.
RESTPie3 is a practical and flexible starter codebase that provides the essential REST service features in a nice package: a master daemon, database, sessions, cache, queues, background workers, authentication, authorization, cron, logging. You can dockerize the service into cloud or simply deploy via rsync into vps.
RESTPie3 relies on a few solid components such as Flask, uWSGI, PostgreSQL and Redis that have served me well over the years. Nothing that extraordinary in this starter, just a simple and sane way to build a REST service as I see it.
Also there is no front-end in this starter, as it is intended to function as a pure REST server. However, I have also authored sample SPA front-ends in both Vue and React that talk to a REST server.
Full documentation at Github README. Go and fork.
RESTPie3 - Python REST API Server Starter Kit
This is a lightweight REST API server implemented in Python3 offering essential web service features in a simple package. This is not a framework just a practical and clean codebase that relies on few core components that do the job well. Fork and create your own REST API server quickly.
Open sourced on Sep 2018 after years of production use at multiple sites.
Table of contents
- Features
- Building blocks
- What about the front-end?
- Source files
- Run locally with Docker
- Develop locally with Docker
- API methods
- Authentication & authorization
- Session data
- Redis storage
- Background workers & cron
- Logging
- Tests
- Deploy to VPS
- Setup VPS server
- Nginx
- Security
- Scaling up
- Need help?
- License
- Screenshot
Features
A quick list of the features of this Python API server:
- Simple and flexible server with minimum dependencies
- Process-based request workers, not thread-based nor async
- Secure server-side sessions withβ¦
Top comments (1)
I'll definitely have to check this out. It seems to have so many of my favorite bits in it already.