kireji.js
is an advanced cloud framework designed to solve a critical challenge in modern web development: managing deeply nested, reusable components while optimizing URL-based state management. Built with scalability and performance in mind, kireji.js
leverages cutting-edge techniques to create a fully reactive, front-controlled framework for building static applications with perfect data compression and SEO optimization - no backend needed.
-
State Compression and Permalink Generation
kireji.js
uses a recursive minimal perfect hash function to encode component state into URLs with entropy-perfect compression. Every state transition results in a unique, shareable permalink that represents the entire application state, enabling seamless sharing of complex configurations. -
Static, Backend-Free Architecture Applications built with
kireji.js
require no backend, no databases, and no user accounts. All state is stored locally and encoded directly into the address bar. Despite this, users can share exact snapshots of their work—text edits, graphic compositions, even small games—through a single URL. The illusion of user-uploaded content is created entirely within the browser. -
Optimized for Performance With just two network fetches on first visit - an HTML bootstrap and a service worker -
kireji.js
minimizes server activity and maximizes client performance. After the service worker is installed, the entire app runs offline with real-time rendering and hydration. -
Unified Component Architecture Components in
kireji.js
can request their own URL space and encode their state independently. When deeply nested, their states are composed without conflict or manual orchestration. Each component fits within a deterministic MVC-like model and can act as a standalone module or be nested within others. -
SEO-Ready and Shareable All routes render to HTML on the server and are hydrated on the client. This dual-mode rendering ensures SEO compatibility and a fast first-paint experience.
For technical deep dives, see Architecture, Versioning, and Environment Model.
kireji.js
encodes the entire runtime state of a web application into the URL using a recursive minimal perfect hash function. Each state has a 1:1 mapping to an integer, and these are translated into compact, readable URL paths using a variable-length base-64 alphabet.
Example:
https://www.example.com/ghc3w_hi4-5g4w3/ab52fa-...
This URL represents the full state of the application. When visited, it restores the hierarchy of parts to its exact configuration at the time the link was created.
kireji.js
includes a modeled system of DNS-based component resolution. Domains are mapped to reusable components, and subdomains define their subcomponents. While DNS record fetching is currently only conceptual and commented out, this prototype lays the groundwork for future decentralized component configuration.
- JavaScript (ECMAScript)
- CSS (Vanilla)
- HTML (W3C Standards)
- Service Workers for offline support
- Serverless-compatible HTML rendering
kireji.js
is written entirely with vanilla JavaScript, CSS, and HTML. No libraries, frameworks, or third-party packages are imported.
This choice was made to preserve full control over the build output and align closely with web standards - but it also reflects a deeper design philosophy: by writing the system from scratch, every optimization becomes an opportunity to simplify the equation that defines the entire runtime behavior.
kireji.js
can be reasoned about end-to-end, as a self-contained and self-descriptive system.
kireji.js
is ideal for:
- Portfolio websites with rich customization and zero backend
- Static tools like short-form editors, visual applications, or lightweight games
- Component-based UIs with complex nesting
- SEO-sensitive landing pages and documentation tools
- Any project that benefits from instant sharability without user accounts or server-side persistence
The project is currently in alpha, with the following milestones completed:
- Core framework functionality
- CI/CD pipeline
- Stateless deep linking and state compression
- Modeled DNS-based component tree
Phase | Status |
---|---|
Framework and Core Functionality | ✅ Completed |
CI/CD Pipeline | ✅ Completed |
LTS Strategy | ✅ Completed |
Debug Tools, Docs | 🚧 In Progress |
Transfinite State Space | 🚧 In Progress |
Operating System Concept | 🚧 In Progress |
Advanced DNS Integration | ⏳ Planned |
Each of these domains is backed by the same framework and renders a different themed application:
- www.core.parts – Interactive documentation
- www.desktop.parts – Browser-based operating system shell
- www.kireji.io – Document editor
- www.orenjinari.com – Third-party demo app
-
WebRTC Collaboration Future versions may allow real-time collaboration by synchronizing application states across devices and users via WebRTC, without a central backend.
-
Universal, No-Code IDE Plans include a no-code integrated development environment (IDE) for building and modifying
kireji.js
applications directly in the browser. -
Gamification and Extensibility The framework will eventually support world-building, campaign logic, and gamified authoring tools for educational or narrative experiences.
© 2013–2025 Eric Augustinowicz. All Rights Reserved. This is a personal research project in active development. It is not production-ready. Please do not copy or redistribute this codebase or its methods. All content is considered prior art.