Ready-to-use and customizable users management for FastAPI
Source Code: https://github.com/frankie567/fastapi-users
Add quickly a registration and authentication system to your FastAPI project. FastAPI Users is designed to be as customizable and adaptable as possible.
Extensible base user model
Ready-to-use register, login, reset password and verify e-mail routes
Ready-to-use social OAuth2 login flow
Dependency callables to inject current user in route
Pluggable password validation
Customizable database backend
Multiple customizable authentication backends
- JWT authentication backend included
- Cookie authentication backend included
Full OpenAPI schema support, even with several authentication backends
Contributors and sponsors
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
You should create a virtual environment and activate it:
python -m venv venv/
And then install the development dependencies:
pip install -r requirements.dev.txt
Run unit tests
You can run all the tests with:
The command will start a MongoDB container for the related unit tests. So you should have Docker installed.
Alternatively, you can run
pytest yourself. The MongoDB unit tests will be skipped if no server is available on your local machine:
There are quite a few unit tests, so you might run into ulimit issues where there are too many open file descriptors. You may be able to set a new, higher limit temporarily with:
ulimit -n 2048
Format the code
Execute the following command to apply
This project is licensed under the terms of the MIT license.