Skip to content

Repository files navigation

Lomo logo

Lomo

English | 中文

Local-first Markdown memos on Android — no cloud lock-in.

Release Android License GPL-3.0 minSdk 26

Download APK · Sponsor

Menu Home Detail

Menu · Home · Detail

Features

Capture

  • Local plain text — memos are standard Markdown files
  • Voice recording — capture thoughts hands-free
  • Home screen widgets — quick capture and recent notes

Organize

  • Tags — organize with #tags, including nested tags like #tag1/tag2
  • Full-text search — indexed local search
  • Material 3 — clean UI with dynamic color

Review

  • Heatmap — GitHub-style contribution graph for writing habits
  • Daily review — flashback to this day in previous years

Sync & share

  • S3 backup (recommended) — object storage with end-to-end encryption
  • Git / WebDAV — optional built-in backup paths
  • LAN sharing — share notes to other Lomo devices on the local network

How should you sync?

Notes live entirely on your device. Pick one path:

  1. S3 (recommended) — the only built-in option with end-to-end encryption; what the author uses day to day, and the most actively maintained
  2. Any file sync — Syncthing, Nextcloud, or anything else that syncs the local folder
  3. Git / WebDAV — built-in backups (WebDAV has mainly been tested with Nutstore)
Obsidian / Rclone notes

Lomo’s S3 sync is compatible with the Obsidian Remotely Save plugin. That plugin has not been actively maintained for a long time, so for Android-to-Android syncing it is better to point Lomo’s S3 sync at the root of your Obsidian vault. Custom folder sync is supported; on Linux, Rclone is usually the better desktop companion.

Why Lomo?

I wanted a Memos / Flomo-style lightweight, timestamped capture flow — but strictly offline, with local Markdown as the single source of truth. The name is Local Memo. Lomo is fully compatible with Thino daily-note format, so you can treat it as a native Android client for Thino data.

Maintenance & development notes

Maintenance: Lomo is tailored to my own workflow and I use it heavily. As long as it stays in my daily toolchain, I plan to keep maintaining it.

Development: This project was built almost entirely with Google Antigravity and Codex. If you have concerns about AI-generated code stability, feel free to fork and adapt it.

Install

  1. Download the latest APK from Releases
  2. Install on an Android device (Min SDK 26)
  3. On first launch, choose a local folder for your memos

Building from source is covered under Building below.

Support

If Lomo is useful to you, you can support the project here: Sponsor page.

Tech stack
  • Languages: Kotlin + Rust (production native infrastructure through BoltFFI/JNI; stage-0 UniFFI/JNA remains historical evidence only)
  • UI: Jetpack Compose (Material 3)
  • Architecture: MVVM + Clean Architecture (Domain / Data / UI)
  • DI: Koin
  • Async: Coroutines & Flow
  • Data:
    • Markdown workspace storage through the Storage Access Framework
    • Rust-owned SQLite derived index and durable .lomo state
Building

Prerequisites: JDK 26 · Android SDK API 37 · Rustup · just

# Install pinned Rust tools, targets, and Android NDK
just bootstrap

# Build and validate Debug APK
just android debug

# Run Rust and Kotlin host tests
just test

# Iterative / full pre-merge gates
just check
just ci

native-bindings/src and native .so files are generated build outputs; a clean checkout is the expected input. Signed release builds use just android release and require explicit keystore configuration documented in quality/release.md.

Production FFI identity is native-bindings / com.lomo.nativebridge / liblomo_native_jni.so. Current contracts live in fixtures/contracts/; executable baselines live in fixtures/baselines/.

Android Studio may still be used for editing and device work, but repository verification and native generation must use the commands above.

License

This project is licensed under the GNU General Public License v3.0.

About

Lomo is a memos-like application for Android that uses native Markdown and is built on Jetpack Compose and Material 3.

Topics

Resources

Stars

26 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages