github Darknetzz/jotty-android v1.1.1
v1.1.1 - shared UI components, tests and more

latest releases: v1.2.3, v1.2.2, v1.2.1...
9 hours ago

Added

  • Unit tests — Tests for NoteEncryption (frontmatter parsing, body-only detection, BOM handling), NoteDecryptionSession (CRUD, clear), and XChaCha20Encryptor (frontmatter round-trip).
  • Shared UI components — Reusable LoadingState, ErrorState, EmptyState, and SwipeToDeleteContainer composables in ui/common/ (DRY refactor).
  • String resources — All user-visible strings moved to res/values/strings.xml for i18n readiness.

Changed

  • Security: release logging — HTTP body logging (HttpLoggingInterceptor) now only runs in debug builds; release builds no longer log API keys or response bodies.
  • Null safety — Removed all !! (non-null assertions) across MainScreen, ChecklistsScreen, and NotesScreen; replaced with safe-call patterns and local val bindings.
  • Deep link handlingdeepLinkNoteId is now an Activity-level property updated in both onCreate and onNewIntent, so deep links work correctly after process death or re-delivery.
  • Composable rename — Root UI composable renamed from JottyApp to JottyAppContent to distinguish from the Application class.
  • Thread safetyNoteDecryptionSession now uses ConcurrentHashMap instead of plain MutableMap.

Technical

  • ProGuard — Added keep rules for all Jotty API models (data.api.*), encryption models (data.encryption.*), and JottyInstance to prevent Gson serialization issues in minified builds.
  • AGENTS.md — Updated with new conventions (null safety, string resources, shared composables), test instructions, and clarified dual JottyApp files.

Don't miss a new jotty-android release

NewReleases is sending notifications on new releases.