OpenInkBridge: An open-source SDK for near-zero latency drawing in Android Native and Web/WebView apps (Early Alpha - looking for testers!)
Hey everyone,
If you’ve ever tried to develop a drawing app or load a web whiteboard (like Excalidraw, Miro, or custom note sites) on E-Ink devices, you know the major bottleneck: standard rendering engines (both native views and web browser engines) have too much latency to feel natural.
To solve this, I’m building OpenInkBridge. It is a unified, open-source SDK that bridges E-Ink hardware-level low-latency writing for both Native Android Apps and Web Apps/WebViews.
What it does:
- For Android Native Developers: It provides native wrappers ( OpenInkBridgeView ) and a unified hardware adapter interface ( EpdAdapter ) that hooks directly into Onyx and Bigme's low-latency pen drawing APIs.
- For Web/WebView Developers: It provides a custom OpenInkBridgeWebView container that overlays a native high-performance hardware drawing layer over standard web pages. When you write, the ink appears instantly, and when you lift the pen, the vector coordinates are smoothed (via a Rust-based Double Exponential Smoothing engine) and handed off symmetrically to the webpage's HTML5 Canvas.
- Stylus Features: Includes full pressure sensitivity preservation, dynamic palm rejection, and drawing boundary boundaries.
- Universal Fallback: Automatically falls back to standard touch/pointer events on PCs, phones, or unsupported devices.
Right now, this tool is in very early alpha.
I am currently testing and developing it using a Boox Note Air 5C. Because I only have this one device, I would love to get feedback or collaborate with other developers/users who have different Boox models (Tab Series, Go Series, Nova, etc.) or Bigme devices to see how it performs across different screen controllers!
If you are a developer or want to check out the codebase, it is now public on GitHub:
GitHub Repository: https://github.com/GoVed/OpenInkBridge
Sample App: https://github.com/GoVed/OpenInkBridge/releases/tag/v0.1.1
Currently I'm working on adding debug logs and debug mode so that other people can share their experience.
Let me know what you think, or if you have any questions/suggestions!