← ommahida.com · projects

Inkling

An AI diary for Supernote. Write with your pen; the page drinks your ink and answers in a flowing hand.

Kotlin · Android · Claude · Source · Inspired by Riddle

01The Idea

Riddle, by Maxime Rivest, turns a reMarkable Paper Pro into Tom Riddle's diary: you handwrite on the page, the ink fades away, and an answer appears in elegant script — then vanishes too. I wanted the same thing on the tablet I actually carry, a Supernote. Inkling is that port.

my name is Om. what are you?
Hello, Om. I am the space between your thoughts and the paper. Write, and I will listen.

what an exchange looks like on the page — your ink fades, the answer writes itself in

02Two Very Different Tablets

The reMarkable runs Linux with root SSH access, so Riddle is a Rust binary reading pen input from raw evdev and drawing through the vendor's e-ink engine. Supernote devices run Android and support sideloading — no root, no raw input devices, but a full app runtime. So Inkling is a small Kotlin app: a custom view captures stylus strokes, renders them to an image when the pen rests, and a vision model reads the handwriting directly off the page. No handwriting-recognition engine anywhere — the same trick Riddle uses, translated to a different stack.

03Gestures

Write, then rest the penthe diary reads your ink and answers
Pen's eraser endunwrite strokes
Draw only a “?”the diary explains itself
Two-finger holdsettings — API key, model, persona

04How It Works

Three small pieces. InkView captures stylus strokes and runs a rest-timer; when the pen has been still for ~2.5 seconds it crops the writing to a PNG. Oracle sends that image to Claude through the official Anthropic Java SDK — one structured-output call returns both a transcription and the diary's reply, and the transcriptions become lightweight session memory so the diary remembers the conversation without resending images. ReplyView inks the reply back word by word in Dancing Script, holds it long enough to read, and fades it out in stepped gray levels — discrete steps read far better on e-ink than smooth animation.

pen rests → ink fades → PNG → Claude reads the handwriting
       → { transcription, reply } → reply written back in script → fades

05Build & Install

Kotlin + Gradle, no Android Studio required. Build the APK, sideload it onto a Supernote (Nomad and Manta support official sideloading; the original A5X/A6X need ADB), then two-finger hold to add your Anthropic API key. The key lives only on the device. The app targets minSdk 27 and is verified to compile against the Android 8.1 framework the original models run.

gradle wrapper && ./gradlew assembleRelease
adb install app/build/outputs/apk/release/app-release.apk

Full instructions in the README.

06Credits

Concept and soul: Riddle by Maxime Rivest. Reply typeface: Dancing Script (SIL Open Font License). Built with Claude Code.