HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
crisdosaygo
vanillaview
JavaScript2021–2021
crisdosaygo / vanillaview

vanillaview

Easy to use views with vanilla JS semantics

2Distinct people
5Mentions
0Explicit recommenders
12GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Easy to use views with vanilla JS semantics

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week5 dated mentions

Observed mentions: 2021-04-23 03:11:20 UTC to 2021-10-02 12:55:14 UTC. Weeks start Monday, UTC.

0122021-04-19 00:00:00 UTC to 2021-04-26 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 commentsApr 192021-04-26 00:00:00 UTC to 2021-05-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-03 00:00:00 UTC to 2021-05-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-10 00:00:00 UTC to 2021-05-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-17 00:00:00 UTC to 2021-05-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-24 00:00:00 UTC to 2021-05-31 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-05-31 00:00:00 UTC to 2021-06-07 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-07 00:00:00 UTC to 2021-06-14 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-14 00:00:00 UTC to 2021-06-21 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-21 00:00:00 UTC to 2021-06-28 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-06-28 00:00:00 UTC to 2021-07-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-07-05 00:00:00 UTC to 2021-07-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJul 52021-07-12 00:00:00 UTC to 2021-07-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-07-19 00:00:00 UTC to 2021-07-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-07-26 00:00:00 UTC to 2021-08-02 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-08-02 00:00:00 UTC to 2021-08-09 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-08-09 00:00:00 UTC to 2021-08-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-08-16 00:00:00 UTC to 2021-08-23 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments2021-08-23 00:00:00 UTC to 2021-08-30 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-08-30 00:00:00 UTC to 2021-09-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-09-06 00:00:00 UTC to 2021-09-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-09-13 00:00:00 UTC to 2021-09-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-09-20 00:00:00 UTC to 2021-09-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-09-27 00:00:00 UTC to 2021-10-04 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsSep 27

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Apr 192021-04-19 00:00:00 UTC2021-04-26 00:00:00 UTC220
Apr 262021-04-26 00:00:00 UTC2021-05-03 00:00:00 UTC000
May 32021-05-03 00:00:00 UTC2021-05-10 00:00:00 UTC000
May 102021-05-10 00:00:00 UTC2021-05-17 00:00:00 UTC000
May 172021-05-17 00:00:00 UTC2021-05-24 00:00:00 UTC000
May 242021-05-24 00:00:00 UTC2021-05-31 00:00:00 UTC000
May 312021-05-31 00:00:00 UTC2021-06-07 00:00:00 UTC000
Jun 72021-06-07 00:00:00 UTC2021-06-14 00:00:00 UTC000
Jun 142021-06-14 00:00:00 UTC2021-06-21 00:00:00 UTC000
Jun 212021-06-21 00:00:00 UTC2021-06-28 00:00:00 UTC000
Jun 282021-06-28 00:00:00 UTC2021-07-05 00:00:00 UTC000
Jul 52021-07-05 00:00:00 UTC2021-07-12 00:00:00 UTC000
Jul 122021-07-12 00:00:00 UTC2021-07-19 00:00:00 UTC000
Jul 192021-07-19 00:00:00 UTC2021-07-26 00:00:00 UTC000
Jul 262021-07-26 00:00:00 UTC2021-08-02 00:00:00 UTC000
Aug 22021-08-02 00:00:00 UTC2021-08-09 00:00:00 UTC000
Aug 92021-08-09 00:00:00 UTC2021-08-16 00:00:00 UTC000
Aug 162021-08-16 00:00:00 UTC2021-08-23 00:00:00 UTC211
Aug 232021-08-23 00:00:00 UTC2021-08-30 00:00:00 UTC000
Aug 302021-08-30 00:00:00 UTC2021-09-06 00:00:00 UTC000
Sep 62021-09-06 00:00:00 UTC2021-09-13 00:00:00 UTC000
Sep 132021-09-13 00:00:00 UTC2021-09-20 00:00:00 UTC000
Sep 202021-09-20 00:00:00 UTC2021-09-27 00:00:00 UTC000
Sep 272021-09-27 00:00:00 UTC2021-10-04 00:00:00 UTC101

What Hacker News says

5 sources
Hello Humans of HN, This is BANG! a new UI framework for JavaScript on the web. It comes out of work I did in 2014 (on a web component framework with v0 Shadow DOM) and in 2018 (on a pure view-as-a-function of state framework with JavaScript template tag functions, variously known as brutal.js, dumbass and now vanillaview or just VV). This work unifies those two works, and combines the JavaScript templating and minimal DOM updates (diffs without VDOM, by using granular updating functions down even to the level of splicing text nodes and text in attribute values and names) of VV with the scoped-styles, and component organization of the original unnamed web component framework. It also adds a few new things, such as fixing some bugs in VV that I didn't even know existed before I tried merging it with another framework, making the list-diffi
Read the rest
ng capability of VV truly minimal (previously it would reprint the whole list if any item order changed, not only items inserted or deleted actually are), and adding support for something I'm very proud of..."custom self-closing tags." You can't get self-closing custom tags in HTML, because you can't define them. HTML has a limited set (<input>, <img>, <hr> and the like), but their syntax has always been neat. And React picked up on this as a way to include a component in another. I really liked that syntax. In VV I simply used template slots and function calls to the included view function to include components, it worked. But I always wanted a neater syntax. I experimented with a parser at the time, and that worked, too. But the performance was slow, and I thought it made the code clunky. You can see it running 7GUIs here: https://i5ik.github.io/_____/7guis/ One day I had the realization I could use HTML comment nodes. They look, "kinda" like elements, and you can write them by omitting everything but the leading `<!` and closing `>`. This was what I needed. Hence "bang" (at least I think that's where the name comes from, I'm not even sure). So these "bang tags" are self-closing tags, that are automatically converted to regular custom elements. Allowing you to type less. <!this-is-my-custom-tag here=is an=attribute state=myData/> I build things to improve my developer experience. That's all important. Then you're more efficient, and effective and you enjoy doing it more. So I'm sharing it here because I want to contribute to you, too. Maybe it's something valuable for you, or maybe it gives you ideas. Either way, this framework is yours. It's an open-source permissive license, and yours to contribute to, or fork or whatever. It's got bugs right now and the syntax is more limited than VV, but I like it better. I wanted something new, and I got it. By making this. I can always add the VV syntax I removed for performance and simplicity during the merge, back later. But I'm not sure if I will, not yet. If you want something more battle-tested take a look at VV[0], but note that some of the fixes I made to the merged-VV have not been included back in main. I'm sure I'm going to do that eventually, but not for a while yet probably. I'm too busy basking in the bliss that is BANG!. This is the only comment I'll make on this thread, but hopefully it's now your bliss too :P ;) xx [0]: https://github.com/i5ik/vanillaview
In Show HN: Bang
Wow you are clearly a genius. The syntax looks beautiful! This is great. I don't want to use it (the best tool for the job for me is one that fits my own mental models, my own mind, and this is not it) but you are a genius. Also -- wow those Nordics are super productive programmers/coders/developers/open-sorcerers (Sindre Aarsaether & Sindre Sorhus & Linus Torvalds & ...<please insert other names below to educate me>...) -- could it maybe have something to do with: The low GNI, the high HDI and the great weather for coding? (cold, blistery, bleak, focused, electrons-and-light universe is only outlet in a desolate landscape)? I have been to Oslo. The architecture is great. PS - I use my own memoized DOM with minimal/granular updates in my own quirky framework (https://github.com/i5ik/vanillaview) PPS - BTW memoized DOM is a great term of a
Read the rest
rt. I perhaps shall be using it from now. CONGRATULATIONS, SIR! PPPS - Also what you are doing with Scrimba is so incredible. And GOOD. You are such a fuqing genius. Wow!
In Show HN: Imba – I have spent 7 years creating a programming language for the web

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.