HyperApp is a JavaScript library for building frontend applications.
- Declarative: HyperApp's design is based on the Elm Architecture. Create scalable browser-based applications using a functional paradigm. The twist is you don't have to learn a new language.
- Custom tags: Build complex user interfaces from custom tags. Custom tags are stateless, framework agnostic and easy to debug.
- Batteries-included: Out of the box, HyperApp has Elm-like state management and a virtual DOM engine; it still weighs
1kb
and has no dependencies.
Get started with HyperApp
Hello World
Try it online
app({
state: 0,
view: (state, actions) => (
<main>
<h1>{state}</h1>
<button onclick={actions.add}>+</button>
<button onclick={actions.sub}>-</button>
</main>
),
actions: {
add: state => state + 1,
sub: state => state - 1
}
})
Issues
No software is free of bugs. If you're not sure if something is a bug or not, file an issue anyway. Questions, feedback and feature requests are welcome too.
Documentation
The documentation is located in the /docs directory.
License
HyperApp is MIT licensed. See LICENSE.