A set of teeny-tiny libraries for building web apps. The goal of this toolkit is as follows:
- Minimal amount of concepts to learn in order to get going, meaning the system becomes incredibly easy to reason with.
- Comes in at a miniscule size when compressed. Due to the minimal philosophy of the library and the simple concepts within the total size is tiny as well.
This mono repository contains several packages, see the overview below:
@doars/staark
a teensy-tiny library for for building web apps.@doars/staark-isomorphic
a version of staark that can used on the server for rendering a view.@doars/staark-patch
a version of staark without state management where the node tree is repeatedly patched.@doars/tiedliene
a teensy-tiny library for managing state diffs.@doars/vroagn
a teensy-tiny library for managing network requests.
If you are using the libraries and are running into an problem that you don't know how to solve, or would love to see a particular feature then feel free to create an issue.
- Toaln is a simple language learning app which utilises the power of Large Language Models to practise.
If you are using staark then please let me know, I would love to hear about it!
Curious how staark compares to other similar libraries? Checkout the performance directory where it's compared to some other libraries in build size, runtime performance, and memory usage. As a bonus the difference and similarities are also explained for some.
- How can the state of the app work together with the browser's IndexedDB API?
- Add support for
memo
nodes tostaark-patch
andstaark-isomorphic
's patch functions. - Lifecycle hooks for reacting to when nodes are first created, or an attribute is updated, or removed from the DOM.
- Have the CSV importer of
vroagn
check for a delimiter. - Add optional key parameter to the
node
function so some nodes are exempt from being re-used during morphing.