···2233All notable changes to this project will be documented in this file.
4455+## [2.3.0] - 2025-11-29
66+77+### Added
88+99+- **README improvements**: Added "Why Use This Library?" section explaining the
1010+ BFF pattern, use cases, tradeoffs, and when to consider alternatives
1111+512## [2.2.1] - 2025-11-29
613714### Added
+30
README.md
···66Framework-agnostic OAuth integration for AT Protocol (Bluesky) applications.
77Works with standard Web Request/Response APIs - no framework dependencies.
8899+## Why Use This Library?
1010+1111+This library implements the
1212+[Backend-for-Frontend (BFF) pattern](https://atproto.com/specs/oauth#confidential-client-backend-for-frontend)
1313+for AT Protocol OAuth. Your server handles OAuth and keeps tokens secure, while
1414+clients receive encrypted session cookies.
1515+1616+**Use this library when you want:**
1717+1818+- **Server-side token management** - OAuth tokens never leave your server,
1919+ reducing attack surface
2020+- **Cookie-based sessions** - Works naturally with web apps and mobile WebViews
2121+- **Framework flexibility** - Uses standard Request/Response APIs, works with
2222+ Hono, Fresh, Express, or any framework
2323+- **Simplified mobile auth** - Mobile apps complete OAuth in a secure WebView,
2424+ no token handling required
2525+- **Serverless-friendly** - Designed for edge runtimes like Val Town and Deno
2626+ Deploy
2727+2828+**Consider alternatives when:**
2929+3030+- You need tokens on the client device - use
3131+ [@atproto/oauth-client-browser](https://www.npmjs.com/package/@atproto/oauth-client-browser)
3232+ or
3333+ [@atproto/oauth-client-expo](https://www.npmjs.com/package/@atproto/oauth-client-expo)
3434+- You're building a CLI tool - use
3535+ [@atproto/oauth-client-node](https://www.npmjs.com/package/@atproto/oauth-client-node)
3636+- You need the official Bluesky SDK - see the
3737+ [AT Protocol SDK](https://atproto.blue/)
3838+939## Documentation
10401141- **[Web Authentication Guide](./docs/web-authentication.md)** - Cookie-based