Welcome to Sonet, a next-generation social network application owned by Entativa. Sonet offers a seamless multimedia experience with features like posting, viewing short videos (Pixes), messaging, managing a professional dashboard, and offering premium monetization tools.
- UI Framework: Modern Android UI built with Jetpack Compose.
- Language: Kotlin.
- Navigation: Jetpack Navigation Compose, properly structured into domain-specific modules (
settingsNavGraph,profileNavGraph, etc.). - State Management: A centralized Reducer pattern acting as the single source of truth across the application (similar to React's Context API +
useReducer), managed viaSessionViewModel. - Offline Caching: Built with Room Database to provide an instant feed experience on app launch or during offline periods.
- Data Pagination: Handles infinite feeds with Paging 3, dynamically loading data via a
RemoteMediator. - Quality Assurance: Protected with JUnit4 and Robolectric tests, verifying centralized state and data integrity.
- Backend Integration: Planned integration with a blazing fast Rust backend using gRPC.
- Home & Explore: Scroll through posts, stories, and generic social feeds.
- Pixes: A TikTok/Reels-like endless video scrolling experience.
- Messages: Real-time chat application features.
- Premium & Monetization: Professional dashboard and features aimed at content creators.
- Settings & Security: Extensively configured privacy, security, and time-management settings.
- Open the project in Android Studio.
- Build and run the
appmodule on an emulator or physical device. - For backend connection, ensure the gRPC Rust server is running (see
RUST_BACKEND_GRPC.md).