Roadmap
Incarnative.js is built in phases, Vue 3 support first and end-to-end, before the surface broadens to more styling, tooling, platforms, and a second frontend framework. This page summarizes where each phase stands.
- Phase 1
Rust host & FFI bridge core
ShippedThe QuickJS runtime, the retained render tree, and the GPUI rendering pipeline underneath every app.
- Phase 2
JS core bridge & Vue 3 custom renderer
Shippedincajs and incajs/vue, a custom Vue 3 renderer.
- Phase 3.1–3.3
Developer tooling & packaging
Shippedinca dev, inca build, and inca package, with per-platform prebuilt host binaries. This is the v0.0.1 release milestone. The current bundler adapter is Vite; a future adapter/rspack would sit alongside it as a sibling module.
- Phase 3.4
HMR
In progressFunctional behind an opt-in flag (--experimental-hmr / INCA_EXPERIMENTAL_HMR). Plain inca dev still does a full reload.
HMR guide - Phase 4
Input & text editing
In progressPointer and keyboard input are done. Scrolling is done. Text editing (selection, caret, IME composition) is not built yet.
Elements & Styles - Phase 5
Accessibility
Not startedA semantics layer, platform accessibility APIs, and keyboard reachability. Waits on the input/focus model above being stable.
- Phase 6
Runtime standard library
Not startedTimers, fetch/WebSocket, filesystem access, and engine resource limits.
- Phase 7
Majority style & Tailwind coverage
Not startedMost layout, spacing, and typography utilities, mapped directly onto native styles.
- Phase 8
Developer tools
Not startedThe real Vue DevTools running against an app.
- Phase 9
Application shell & platform integration
Not startedMultiple windows, native menus beyond the current Quit item, dialogs, clipboard, notifications.
- Phase 10
React custom renderer
Not startedincajs/react alongside incajs/vue.
- Phase 11
Cross-platform support
Not startedConfirmed Linux rendering and a Windows backend.
- Phase 12
100% style & Tailwind parity
Not startedState variants, responsive breakpoints, dark mode, and the remaining CSS surface.
- Phase 13
App-owned Rust extensions
Not startedApps linking their own Rust code into the host binary.