This is the official Bitwarden password manager for Android, a production-grade Kotlin application with a modular monorepo structure. It implements a full-featured password manager including vault management (ciphers, folders, collections, sends), autofill (standard and accessibility-based), FIDO2/WebAuthn passkey support, TOTP authenticator, password/username generator, secure credential exchange (CXF), and enterprise features like SSO, Duo, and policy enforcement. The architecture follows an MVVM pattern with Jetpack Compose UI, Dagger/Hilt dependency injection, Room SQLite for local persistence, Retrofit/OkHttp for networking, and the Bitwarden SDK for cryptographic operations. The codebase is organized into multiple Gradle modules: `app` (main app), `authenticator` (standalone TOTP app), `authenticatorbridge` (AIDL-based cross-app communication), `network` (API client), `data` (data sources and repositories), `ui` (reusable Compose components), `core` (platform utilities), `cxf` (credential exchange), and `testharness` (Credential Manager API testing). Key entry points include `MainActivity`, `CredentialProviderActivity`, `AuthCallbackActivity`, and `BitwardenApplication`. Data flows involve syncing vault data from Bitwarden servers to local Room databases, processing autofill requests from other apps via Android's Autofill and Credential Manager frameworks, and securely sharing TOTP secrets between the main app and authenticator app via the encrypted bridge. External dependencies include the Bitwarden SDK, AndroidX libraries (Compose, Navigation, Room, Biometrics, Credentials, etc.), Retrofit, OkHttp, kotlinx.serialization, and optional Firebase for push notifications and crash reporting.
Simplenote for Android is a full-featured note-taking application with real-time synchronization via the Simperium protocol. It supports markdown editing, checklists, tags, collaboration via email, public note publishing, and WordPress.com posting. The app includes a passcode lock for privacy, home screen widgets, and multiple visual themes. Authentication flows cover email/password, magic link, and WordPress.com OAuth. The architecture follows MVVM with use cases, repositories, and Dagger Hilt dependency injection, mixing Java and Kotlin. The codebase is organized into three Gradle modules: the main Simplenote app, a Wear companion app, and a reusable PasscodeLock library. CI/CD is managed via Buildkite and Fastlane, with localization through GlotPress supporting 17 languages.