Unofficial Fur Affinity client
Windows and Android. Still rough in places, but alive and kicking.
One Flutter codebase, two distinct native faces: Fluent on desktop, Material 3 on the phone. No telemetry, no trackers, no account data collection.
The app adapts to its host platform's design language instead of pretending to look the same everywhere.
Sidebar navigation, Mica transparency, automatic Cloudflare bypass through WebView2.
Bottom navigation, wallpaper-based dynamic color on Android 12+, capsule-shaped inputs.
Not a checkbox list for its own sake — the things that actually set this apart from a bare WebView wrapper.
Login opens as an actual FA page — two-factor and captcha work exactly like in a browser. Cookies are saved and the session restores on the next launch.
Links like furaffinity.net/view/…, /user/…, /gallery/… open straight in the app, including its own furaffinity:// scheme.
Challenges are detected by locale-independent markers and the cf-mitigated header, retried passively, and escalated to a visible Turnstile dialog when needed. A challenge no longer logs you out or blocks the whole app.
Periodic polling through WorkManager (AlarmManager fallback), per-category channels, tap opens the exact submission or journal — and a service notification when Cloudflare asks for a human.
HTML parsing runs in background isolates, images load through a two-worker WebView pool, feeds and favorites fetch in parallel, and the display's max refresh rate is pinned instead of jumping between 60 and 120.
Gallery, journals, favorites with heart states, posting comments, SFW mode synced with the site's toggle, shouts wall on profiles, image downloads.
Captured from real devices — nothing mocked up.










No "100% done" where that would be a lie.
| Feature | Note | |
|---|---|---|
| Login, session restore | done | including MFA via WebView |
| Gallery, profile, journals | done | grid layout, pagination, full content |
| Search | done | history, results |
| Favorites | done | heart states restored from your favorites pages |
| Comments, faves, shouts | done | posting comments, favorites with server-confirmed state, shouts wall on profiles |
| Background notifications | done | periodic polling, no Google Play Services required |
| SFW mode | done | synced with the site's toggle, NSFW blur |
| Watchlist browsing | planned | parsers ready, no UI yet |
| Notes (PMs) | planned | parsers ready, no UI yet |
| Content filters | partial | full filters in search; browse has categories only |
No prebuilt releases yet — source build only.
flutter pub get flutter run -d windows flutter build apk --release