A framework designed to compose and run a web-server based on plugins
FPS
, fast pluggable server, is a framework designed to compose and run a web-server based on plugins.
It is based on top of fastAPI
, uvicorn
, typer
, and pluggy
.
How it works
The main purpose of FPS
is to provide hooks to register endpoints, static mounts, CLI setups/teardowns, etc.
An application can then be composed by multiple plugins providing specific/specialized endpoints. Those can be registered using fps.hooks.register_router
with a fastapi.APIRouter
.
What is coming soon
The most important parts will be to have a nice configuration system and also a logger working through multiprocesses, with homogeneous formatters to give devs/ops/users a smooth experience.
Concepts
Few concepts are extensively used in FPS
:
- a
hook
, orhook
implementation, is a method tagged as implementing ahook
specification