Flynn Buckingham


The 40 line replacement for React (+Redux) — A week later

It’s just over a week since I published A React (+ Redux) replacement in 40 lines of code, and the response of the community has been absolutely amazing!

The project went from 0 stars to over 300 within 24 hours of the article being published, and now currently resides at over 600 stars, and nearly 2 dozen forks (and counting).

Staś Małolepszy, the creator of the project has been working with the community to help improve the library, as well as discuss new features to be added.

What’s changed so far

The project is growing quickly

When I first wrote a week ago, it became apparent to me that this project would catch on quickly, especially in light of it’s size, as well as the freedom promoted by it’s license.

Since, the library has had multiple examples added, as well as specific features such as a render method, working (but optional) sanitation, as well as processing for specific kinds of values.

Interesting enough, the actual size of the library has only grown slightly, even with the addition of these critical features. As of now, the main library file only contains less than 60 lines of code. This has mostly been the result of partitioning non-essential features into files that can be included as needed.

Examples of the technology

A few people have come forward showing examples of innerself at work. As of now, the repository itself contains 3 examples of the library in action.

The first example (written by Staś Małolepszy), showcases the library in a simple ToDo list form. It was the original example that helped show people the power of innerself, and it’s ability to deal with problems in a minimal amount of code.

The second example (written by yours truly), showcases a simple application that randomly generates colored, numbered squares within the app’s state. When a box is clicked, the box is pruned from the state itself, forcing all the remaining boxes to update their numbering when rendered.

The third example (also written by Staś Małolepszy), showcases the rendering of form elements. Right now, the community is looking into a potential auto-focusing functionality to restore focus when the root is re-rendered. As of now, the focuses element needs to be manually restored.

Please note that the above examples aren’t transpiled with Babel, so they will only work in modern browsers.

But what about real world examples?

While Staś insists in the README that it’s not production safe (yet), several people (including him) have implemented the library for use in live projects

A moment lost in time (puzzle game)

I tried this game last night, and I was honestly blown away by the minimal artistic nature of it. Created by Staś, and Michał Budzyński, the game utilizes WebGL for rendering the structures. The UI is powered by innerself.

Hacker News Clone

Ben Southgate created an entire hacker-news clone using innerself, when compressed clocks in at under 4KB. This is live in production and can by visited at

My project…

I have my own on the way shortly, so be sure to follow me on Twitter if you’re interested in updates.

In closing…

The sky is the limit with innerself

I’ve been fortunate enough to be able to contribute to this project during my free time in the ways that I can, and it is great to see the overwhelming response from the community. If you get the chance, I highly recommend that you go check out the project yourself.

Innerself is a great poster-child for modern JavaScript, as it shows how much can be accomplished in with minimal amount of code.

Did you like this article? If so, be sure to leave some applause to show your appreciation, as well as share it with colleagues to help spread awareness of Innerself. If you like my content, feel free to follow me on Medium, as I appreciate every follower that I am able to get here.

Feel free to leave your comments and thoughts too, since both me Staś Małolepszy will be likely to see them shortly after.

More by Flynn Buckingham

Topics of interest

More Related Stories