Today, I’m excited to announce Hyperapp 1.0!

This milestone means the API has reached stability and the churn is finally over. It took us almost a year to arrive at the current API and while it will never be perfect, done is better than perfect and I am extremely pleased with the result.

Thank you, everyone, for contributing your time, your feedback, and your code to Hyperapp! ❤️

What is Hyperapp?

If you haven’t heard about Hyperapp, then let me be the one to tell you about it. Hyperapp is a modern JavaScript library for building fast and feature-rich applications in the browser. It’s the smallest out there (1.4 kB), it’s simple, and fun to use.

Hyperapp’s architecture borrows from React, Redux, and Elm, bringing my own ideas and community-contributed feedback into the mix. Here is an example that shows all the moving parts working together. Try it live on CodePen.

Yes, that’s JSX. But JSX is neither a dependency or required to use Hyperapp. Alternatives include hyperscript (via the built-in h function), hyperapp/html, hyperx and t7.

Hyperapp was born out of the attempt to do more with less. I’ve always wanted to minimize dependencies and write simpler software, and Hyperapp has given me faith that it’s actually possible. Out of the box, Hyperapp combines state management with a VDOM engine that supports keyed updates & lifecycle events — all with no dependencies.

What’s coming next?

Some of the cool things planned for the first quarter of 2018 are submitting a Hacker News PWA to https://hnpwa.com and adding a new example implementation to RealWorld.

I also want to refine the documentation and work more on the ecosystem and tools: scaffolding, bundling, DevTools integration, etc. If you have ideas for improvements please get involved, hop on Slack or file a bug report on GitHub. We are on Reddit too!