Skip to main content

Ready-to-use and customizable users management for FastAPI

Project description

FastAPI Users

FastAPI Users

Ready-to-use and customizable users management for FastAPI

[!NOTE] This project is now in maintenance mode. While we'll continue to provide security updates and dependency maintenance, no new features will be added. We encourage you to explore the project and use it as-is, knowing it will remain stable and secure.

We're currently working on a new Python authentication toolkit that will ultimately supersede FastAPI Users. Stay tuned for updates!

build codecov PyPI version Downloads

All Contributors


Documentation: https://fastapi-users.github.io/fastapi-users/

Source Code: https://github.com/fastapi-users/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.

Features

  • 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
    • Transports: Authorization header, Cookie
    • Strategies: JWT, Database, Redis
  • Full OpenAPI schema support, even with several authentication backends

Contributors and sponsors ✨☕️

Thanks goes to these wonderful people (emoji key):

François Voron
François Voron

🚧
Paolo Dina
Paolo Dina

💵 💻
Dmytro Ohorodnik
Dmytro Ohorodnik

🐛
Matthew D. Scholefield
Matthew D. Scholefield

🐛 💻
roywes
roywes

🐛 💻
Satwik Kansal
Satwik Kansal

📖
Edd Salkield
Edd Salkield

💻 📖
mark-todd
mark-todd

💻 📖
lill74
lill74

🐛 💻 📖
SelfhostedPro
SelfhostedPro

🛡️ 💻
Oskar Gmerek
Oskar Gmerek

📖
Martin Collado
Martin Collado

🐛 💻
Eric Lopes
Eric Lopes

📖 🛡️
Beau Breon
Beau Breon

💻
Niyas Mohammed
Niyas Mohammed

📖
prostomarkeloff
prostomarkeloff

📖 💻
Marius Mézerette
Marius Mézerette

🐛 🤔
Nickolas Grigoriadis
Nickolas Grigoriadis

🐛
Open Data Coder
Open Data Coder

🤔
Mohammed Alshehri
Mohammed Alshehri

🤔
Tyler Renelle
Tyler Renelle

🤔
collerek
collerek

💻
Robert Bracco
Robert Bracco

💵
Augusto Herrmann
Augusto Herrmann

📖
Smithybrewer
Smithybrewer

🐛
silllli
silllli

📖
alexferrari88
alexferrari88

💵
sandalwoodbox
sandalwoodbox

🐛 📖
Vlad Hoi
Vlad Hoi

📖
Joe Nudell
Joe Nudell

🐛
Ben
Ben

💻
BoYanZh
BoYanZh

📖
David Brochart
David Brochart

📖 💻
Daan Beverdam
Daan Beverdam

💻
Stéphane Raimbault
Stéphane Raimbault

⚠️ 🐛
Sondre Lillebø Gundersen
Sondre Lillebø Gundersen

📖
Maxim
Maxim

📖 🐛
scottdavort
scottdavort

💵
John Dukewich
John Dukewich

📖
Yasser Tahiri
Yasser Tahiri

💻
Brandon H. Goding
Brandon H. Goding

💻 📖
PovilasK
PovilasK

💻
Just van den Broecke
Just van den Broecke

💵
jakemanger
jakemanger

🐛 💻
Ikko Ashimine
Ikko Ashimine

💻
Matyáš Richter
Matyáš Richter

💻
Hazedd
Hazedd

🐛 📖
Luis Roel
Luis Roel

💵
Alexandr Makurin
Alexandr Makurin

💻 🐛
Leon Thurner
Leon Thurner

📖
Goran Mekić
Goran Mekić

📦
Gaganpreet
Gaganpreet

💻
Joe Taylor
Joe Taylor

💻
Richard Friberg
Richard Friberg

🐛
Kenton Parton
Kenton Parton

💵
Adrian Ciołek
Adrian Ciołek

🐛
⭕Alexander Rymdeko-Harvey
⭕Alexander Rymdeko-Harvey

📖
schwannden
schwannden

🚧 💻
Jimmy Angel Pérez Díaz
Jimmy Angel Pérez Díaz

🛡️
Austin Orr
Austin Orr

🚧
Carlo Eugster
Carlo Eugster

🛡️
Vittorio Zamboni
Vittorio Zamboni

💻
Andrey
Andrey

📖
Can H. Tartanoglu
Can H. Tartanoglu

🐛
Filipe Nascimento
Filipe Nascimento

🛡️
dudulu
dudulu

💵 🐛 💬
Toni Alatalo
Toni Alatalo

💻 📖
Börge Kiss
Börge Kiss

📖
Guilherme Caminha
Guilherme Caminha

📖
Téva KRIEF
Téva KRIEF

💻
Essa Alshammri
Essa Alshammri

📖
0xJan
0xJan

🐛
Justin Thomas
Justin Thomas

💻
Adam Israel
Adam Israel

💻
Nerixjk
Nerixjk

🐛 💻
Mike Fotinakis
Mike Fotinakis

💻 🐛
lifengmds
lifengmds

💵
raindata5
raindata5

📖
Mark Donnelly
Mark Donnelly

📖
Alexander Zinov
Alexander Zinov

💻
nimaxin
nimaxin

📖
Muhammad Daffa Dinaya
Muhammad Daffa Dinaya

🐛

This project follows the all-contributors specification. Contributions of any kind welcome!

Development

Setup environment

We use Hatch to manage the development environment and production build. Ensure it's installed on your system.

Run unit tests

You can run all the tests with:

hatch run test

Format the code

Execute the following command to apply linting and check typing:

hatch run lint

Serve the documentation

You can serve the documentation locally with the following command:

hatch run docs

The documentation will be available on http://localhost:8000.

License

This project is licensed under the terms of the MIT license.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

fastapi_users-15.0.2.tar.gz (120.6 kB view details)

Uploaded Source

Built Distribution

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

fastapi_users-15.0.2-py3-none-any.whl (38.6 kB view details)

Uploaded Python 3

File details

Details for the file fastapi_users-15.0.2.tar.gz.

File metadata

  • Download URL: fastapi_users-15.0.2.tar.gz
  • Upload date:
  • Size: 120.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.2 cpython/3.10.19 HTTPX/0.28.1

File hashes

Hashes for fastapi_users-15.0.2.tar.gz
Algorithm Hash digest
SHA256 4cdcc471a5b9e48de3ec4e7dc97e7b7afb610dda5ec6d022d3ddc0a0c0699323
MD5 dc37168edbc0c792ac79ddd5db55f6e9
BLAKE2b-256 edd5e8f7b598c6b81e3e2955506e47b4c778a858b994ac435c0c85dd37923f40

See more details on using hashes here.

File details

Details for the file fastapi_users-15.0.2-py3-none-any.whl.

File metadata

  • Download URL: fastapi_users-15.0.2-py3-none-any.whl
  • Upload date:
  • Size: 38.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Hatch/1.16.2 cpython/3.10.19 HTTPX/0.28.1

File hashes

Hashes for fastapi_users-15.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e52f7124f44ac3042b3b0866476bcd5818513609b225b4e485e8ac69f8d49161
MD5 e1c7d856b310cefd14bc7810f1a45df1
BLAKE2b-256 3cc1df04587c4125de11a10a663197c6715537eb16dffb9a6823417eeee675d5

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