Skip to content

Add a migration guide from fastapi-users - #39

Merged
mdfarhankc merged 1 commit into
mainfrom
docs/migrating-from-fastapi-users
Sep 19, 2026
Merged

mdfarhankc merged 1 commit into
mainfrom
docs/migrating-from-fastapi-users

Conversation

@mdfarhankc

Copy link
Copy Markdown
Owner

Summary

fastapi-users is in maintenance mode with no new features, so its users are the audience most likely to be looking for a replacement, and they had nothing to follow. This adds that guide.

Changes

  • New page: docs/migrating-from-fastapi-users.md, second in the nav after Getting Started, and in the generated llms.txt.
  • Leads with the deciding fact: both libraries hash with argon2-cffi and bcrypt (fastapi-users via pwdlib), so existing password hashes verify unchanged and nobody resets a password.
  • Mapping tables: concepts (user manager, backends, strategies, dependencies, schemas, hooks) and every route, generated from this library's actual OpenAPI paths.
  • Setup side by side, plus SQL for moving users and OAuth accounts (oauth_name to provider, integer expires_at to a timestamp).
  • Honest about gaps: no user-admin CRUD routes (with a worked replacement using the adapter), no linking an OAuth account while signed in, no MFA. Flags that issued access tokens and in-flight verification links do not survive the cutover.
  • README gets a short "Coming from fastapi-users?" pointer.

Claims about fastapi-users were checked against their current documentation and the fastapi-users-db-sqlalchemy source, not from memory.

Test plan

  • mkdocs build --strict clean; page appears in nav, llms.txt, and llms-full.txt
  • Route mapping checked against the app's OpenAPI paths
  • Code snippets use real APIs (CurrentUser, SuperUser, parse_user_id, hooks.on, include_routers)
  • Docs-only change; no library code touched

fastapi-users is in maintenance mode with no new features, so its users
are the audience most likely to be looking for a replacement, and they
had nothing to follow.

The guide maps concepts and every route, shows the setup side by side,
and gives the SQL to move users and OAuth accounts across. It leads
with the fact that decides the whole migration: both libraries hash
with argon2-cffi and bcrypt, so existing password hashes verify
unchanged and nobody has to reset a password.

It is equally explicit about what this library does not have: no user
admin CRUD routes (with a worked replacement), no linking an OAuth
account while signed in, and no MFA. It also flags that issued access
tokens and in-flight verification links do not survive the cutover.
@coderabbitai

coderabbitai Bot commented Sep 19, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: 3d3257cd-223c-4f7c-8af4-b94ee14deba9


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@mdfarhankc
mdfarhankc merged commit 00c6d06 into main Sep 19, 2026
7 checks passed
@mdfarhankc
mdfarhankc deleted the docs/migrating-from-fastapi-users branch September 19, 2026 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant