eenk and eenky were put together by Tom Granger from the building blocks provided by amazing open-source projects and libraries, listed below. Thank you for sharing your work and making this project possible at all!
And of course, thanks to inkle for creating Ink and Inky and making them open-source in the first place ♥.
eenk Firmware Creditslink_2
The eenk core firmware runtime and hardware ecosystem are made possible by the following open-source projects, libraries, and creators:
- Papyrix - Developed by Pavel Liashkov is the lightweight custom Xteink firmware that served as the basis for eenk, providing the core text rendering engine (
GfxRenderer), text layout system, bitmap font format (EpdFont), and a lot of inspiration :)
- inkcpp - Developed by JBenda. Low-memory C++ runtime engine for executing compiled Ink story binaries. It's the magic that makes it all possible. Used via the eenk-patches fork.
Other building blockslink_2
- Free-Ink SDK - Created by the Free-Ink team. Hardware abstraction SDK providing low-level display drivers (UC8253, UC8279, SSD1677, UC8179), power control, battery monitoring, and device detection for Xteink hardware. Additionally the FreeInkBook reading engine is used for the EPUB reader functionality.
- esptool-js - Espressif Systems. Web Serial JavaScript library enabling browser-based firmware flashing.
- Arduino-ESP32 / ESP-IDF - Espressif Systems. Core ESP32 hardware platform, peripheral drivers, and framework.
- PlatformIO - PlatformIO team. Build automation system for embedded hardware and host compilation.
- SDL2 - Sam Lantinga & Simple DirectMedia Layer team. Cross-platform graphics library powering eenky's native desktop simulator.
- Antigravity - Google. A coding assitant that allowed me to bring this small "what if" project to life relatively quickly. It also enabled a lot of feature creep.
eenky IDE Creditslink_2
The eenky authoring environment and developer tools are built upon the following open-source software projects and tools:
- Inky - Created by inkle Ltd.. The original Ink editor upon which
eenky is forked and extended. It all started here.
- CodeMirror 6 - Developed by Marijn Haverbeke. Extensible code editor component powering the Ink syntax editing experience.
- codemirror-lang-ink - Michael Newton. Ink language support for CodeMirror, and the reason why I chose to modernize Inky with CodeMirror.
Story compilation pipelinelink_2
Other building blockslink_2
- Electron - OpenJS Foundation / GitHub. Cross-platform desktop application framework.
- esptool-js - In-browser and Electron USB serial device manager and flasher.
- Vue.js 3 - By Evan You and the Vue core team. Progressive reactive frontend framework powering the modernized UI.
- Vite - Also by Evan You and the Vite core team. Fast frontend build tooling.
- Pinia - By Eduardo San Martin Morote. Intuitive state management store for Vue 3.
- Material Symbols Outlined - Google. Icon font powering interface icons across the eenky IDE and web tools.