Albio.js: A Fine-Grained User Interface Compiler for Building Reactive Web Applications
CSEF · 2023 Computational Systems & Analysis Fourth Award
Overview
Many modern web programmers utilize declarative user interface (UI) libraries to imbue JavaScript with supplementary infrastructure for interactive development. However, these often interpose extraneous operations at runtime between a user’s input and the page’s output. Existing solutions that circumvent this behavior are unsuitable for smaller programs because they enforce cumbersome structures that deviate radically from conventional JavaScript. Albio is a reactivity library engineered explicitly to accommodate small web projects. The initial prototype consisted of a rudimentary compiler capable of analyzing a program and generating JavaScript modules with handlers for primitive reactivity injected into the source code. It computed reactive code during pre-compilation rather than runtime and made granular modifications to the page, improving substantially upon other libraries’ overhead. It intentionally lacked components and other constructs that convolute development to maintain ease of use. I added support for complex data binding, reactive statements, and logic blocks, and I wrote unit tests to rectify functional failings within the codebase. I also designed a set of benchmarks to quantitatively assess its execution times for various standardized operations and modified the compiler accordingly to make optimizations to the rendered code (bitmasking, for instance, yielded a 762% speedup). Albio is a high-utility alternative to popular libraries for small-scale prototyping and development—it currently demonstrates 142-678% speedups in update propagation as compared to Svelte, React, and Vue. Future iterations of Albio may be further optimized by building a more sophisticated update scheduler, increasing unit test coverage, and expanding the userbase to invite additional real-world feedback.
Source coverage
This record comes from a published award list, not a complete project archive. Its abstract comes from CSEF's public project showcase as archived by the Internet Archive before judging (https://web.archive.org/web/20230401224130/https://ca-csef.zfairs.com/showcase/ShowcaseInfo?f=838e60b7-ea75-46e8-865c-fde4864244b3); the version presented may differ.
Awards (1)
Competition history
- CSEF 2023
Resources
Related projects
ISEF · 2022
Million.js: A Fast, Compiler-Augmented Virtual DOM for Performant JavaScript UI Libraries
ISEF · 2021
Lucia: Creating Performance-Focused Web Applications
AJAS · 2022
Lucia.js: Creating Performance-Focused Web Applications
ISEF · 2016
"Whitestorm JS": A Web Browser 3D Framework
CSEF · 2014
Ex-HTML
ISEF · 2022
Subscript: A Functional Programming Language for Scripting in Data-Driven JVM Applications
ISEF · 2016
FLscript--An Experimentation of Logic and Functional Programming Language for the Web: Design and Implementation
CSEF · 2013
Developing High-Performance Hybrid iOS Apps
Closest projects by meaning, across every fair and year in the corpus.
Browse more like this
Source: California Science & Engineering Fair public projects