An unofficial Douban app for browsing Groups and exploring Subjects (Books/Movies/TVs) (豆瓣非官方app,支持小组浏览和书影探索)
Disclaimer: This is a continuously evolving project focused on core features using Jetpack Compose. Some features are works in progress (WIP), and you may encounter bugs.
- Subjects (Books/Movies/TVs):
- Home feed with personal statuses, subject unions, and rank lists
- View subject interests
- Search for subjects
- View subject details, including metadata, intros, and user interactions
- Browse rank lists
- Groups:
- Browse my groups and topics
- Explore group details, topics, and comments
- Search for groups
- Enhancements:
- Pin group tabs locally for quick access
- Sort topics within each page by create time or default order
- Customizable topic notifications
- Doulists:
- View Doulists and their items (topics, subjects, reviews)
- Collect subjects and topics into Doulists
- My Doulists: Collected items + Doulists
- General:
- Ad-free and lightweight (~3MB)
- Customizable bottom navigation (hide tabs & set startup tab)
- Login support & session reuse (advanced, root required)
- Partial deep linking
- Direct official API calls
- Basic Material Design 3 (MD3) theming
- Basic image viewer
- User profile screen
- View statuses feed (legacy)
- Mobile-optimized pure Web screens (legacy)
- Download the latest release
- Requires Android 8.1+
- Feel free to file issues
- Keep the official app installed: Recommended for full platform functionality
- Troubleshooting: If the app crashes after an update, try clearing the app data
This repository contains a curated subset of code from a private project. It is automatically synced using Copybara to filter files, scrub sensitive information, and preserve the original commit history.
- Intended for personal learning & exploration
- Please avoid widespread promotion
- Foundation: Android KTX
- Architecture: Lifecycles, Navigation 3, Paging, Room, DataStore, ViewModel, WorkManager
- UI: Jetpack Compose
- Behavior: Notifications
- Third-party libraries: Kotlin Coroutines, Kotlinx Serialization, Ktor, Coil, libsu, Accompanist Permissions/WebView
Upcoming features, bug fixes, libraries, and environment changes (roughly in chronological order). Primarily for personal tracking.
- Rate subjects (#31)
Future Plans (Click to expand)
- Navigation
- Shared element transitions for images
- Add error message mappings to match official
- Groups
- Interactions
- Pin my groups
- Official-style list item actions
- Simplify topic caching
- Search:
- Topics within a group/tab
- Global topic search
- Tabbed search results
- New web-based feed for all followed topics
- Toggleable "My Group Topics" section on the home screen
- Currently use tagged but incomplete recent topics via API
- Sort by creation time or "Hotness" (replies + 1 / time)
- Notification engine with customizable intervals (15m, 30m, 1h)
- Per-group settings for sort preference and check depth (with a UI hint suggesting small values for active groups)
- Toggleable "My Group Topics" section on the home screen
- Home: Potential pagination for recommended topics
- Tab
- Track topic read status
- Dynamic topic sorting options
- Group Detail: Auto-collapse header for subscribed/pinned groups/tabs
- Topic:
- Render content using dynamic HTML/WebView
- Default hide officially-flagged "unfriendly" content
- Implement content blocking
- Reddit-style list item expand/collapse
- Interactions
- Subjects
- UserProfile: My subjects, My groups
- i18n
- Language selection
- AI translation support
- Doulists
- Edit/remove posts
- Follow Doulists
- List/post pagination
- Search suggestions
- Login: Code-based (without password)
- Shortcuts
- NetworkManager
- Widgets: Calendar today
- QR
- (Rooted users) Optional sync of more existing preferences for API request consistency
- Statuses (maintenance mode)
- Additional card types
- Pagination
- Ensure basic dark mode, landscape & tablet support
- Sync more source to public repo
- Full deep linking support
- Improve model layering
- i18n: Translations
- Test
- Official and unofficial sample apps
- Developer Guides
- Material Design
- Various social apps (UI/UX inspiration)
- HTTPCanary for analyzing API
- jadx-gui for model understanding
- Google Chrome for debugging CSS
If you find this project helpful and wish to support its development, you can treat me to a coffee via WeChat Pay:
This project is licensed under the MIT License. See the LICENSE file for the full license text.







