Product Introduction
- Definition: Cobalt is an open-source, capability-isolated application platform and software development kit (SDK) specifically engineered for Kobo e-readers. It is a comprehensive ecosystem comprising a launcher, a cryptographically signed App Store, a Rust-based SDK, and a secure runtime environment.
- Core Value Proposition: Cobalt exists to transform Kobo e-readers from single-purpose reading devices into extensible, secure application platforms. It enables developers to build and users to install native, panel-optimized apps—from arXiv readers to coding agent interfaces—with a one-time USB installation and subsequent over-the-air (Wi-Fi) updates, all while maintaining device safety and returning to the stock Kobo firmware on reboot.
Main Features
- Capability-Isolated Runtime: Every Cobalt application runs as an independent, unprivileged process within a sandboxed runtime. Apps cannot directly access hardware resources like network, storage, or the frontlight. Instead, they must request capabilities through a gated API, and the runtime enforces these permissions, significantly enhancing security and stability on the device.
- Signed App Store & Over-the-Air Delivery: The platform includes a dedicated App Store that fetches a signed catalog from a fixed GitHub release. Each app package contains a signed manifest and a static ARMv7 binary. The runtime verifies all signatures—catalog, package, manifest, and binary—before execution. This model enables secure, Wi-Fi-based installation, updating, and removal of applications without ever needing a USB cable again after the initial bootstrap.
- Rust SDK with E-ink First UI Toolkit: The Cobalt SDK is built in Rust and provides a declarative framework for building native e-ink applications. It abstracts complex e-ink panel management, including partial refresh planning, touch input handling, and navigation lifecycle. Developers describe screens using a
ScreenBuilder, and the SDK handles layout, rendering optimization, and async operations like HTTPS requests and cancellable downloads, complete with browser and runtime simulators for testing.
Problems Solved
- Pain Point: Kobo e-readers are locked-down, single-function devices with no official, secure method for installing third-party applications, limiting their utility beyond ebook reading.
- Target Audience: The primary audience includes technical Kobo owners (hackers, researchers, students) seeking to expand their device's functionality; Rust developers interested in embedded or e-ink UI development; and open-source contributors looking to build or port utilities for a novel, always-on display platform.
- Use Cases: Essential scenarios include: reading arXiv preprints and technical papers directly on the e-ink panel; using the device as a secondary, low-distraction screen for interacting with AI coding agents (like Claude Code); browsing RSS feeds or Hacker News with a optimized, reader-friendly interface; and developing custom tools such as audiobook generators or home automation dashboards that leverage the device's always-on, low-power nature.
Unique Advantages
- Differentiation: Unlike traditional Kobo "nickel" menu modifications or side-loaded KoboRoot.tgz packages, Cobalt is not a firmware patch. It is a self-contained, userspace application platform that coexists with the stock OS. It offers a modern, secure app distribution model (signed store) and a structured SDK, contrasting with the often fragile, script-based methods of the past.
- Key Innovation: The platform's recovery-safe, capability-isolated architecture is its cornerstone innovation. App installation and platform updates are atomic transactions, preventing bricking from interrupted updates. The capability model ensures that even a malicious or buggy app cannot compromise the core system or other apps, a critical advancement for security on a constrained embedded device.
Frequently Asked Questions (FAQ)
- Is Cobalt safe for my Kobo e-reader? Cobalt is designed with device safety as a priority: it runs in userspace, does not modify the boot chain, and a simple reboot fully restores the stock Kobo reader. The initial installation does write to the user storage partition, and it is only fully supported on specific device/firmware combinations (like Clara BW N365, Libra 2 N418) as listed in its device matrix, minimizing risk.
- How do I install apps on Cobalt after the initial setup? After the one-time USB installation of the Cobalt platform, all applications are installed, updated, and removed directly on the device over Wi-Fi using the built-in, signed App Store. You never need to connect your Kobo to a computer again for software management.
- Can I develop my own app for Cobalt without a Kobo? Yes, the Cobalt SDK includes browser-based and runtime simulators that allow for full development and layout testing without physical hardware. However, final testing and submission for publication in the Store require running the app on a real, supported Kobo device to ensure proper panel and touch interaction.
- What Kobo models are compatible with Cobalt? As of now, Cobalt has been fully tested and is supported on the Kobo Clara BW (N365 & P365 refresh), Clara Colour (N367), Elipsa 2E (N605), Clara HD (N249), Libra 2 (N418), and Libra Colour (N428) at exact firmware versions. Support for other models requires community testing to verify hardware and kernel compatibility.
- How does Cobalt handle e-ink screen refreshes for smooth app performance? The Cobalt SDK's UI toolkit has built-in e-ink refresh planning. It intelligently determines when a full screen refresh is necessary versus when individual UI components can be updated with faster partial refreshes, as demonstrated in apps like Tic-tac-toe. This is managed declaratively by the developer, abstracting away low-level panel driving complexities.
