HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
squaresapp
rawjs-sample
TypeScript2024–2024
squaresapp / rawjs-sample

rawjs-sample

Sample project to demonstrate the simplicity of RawJS projects.

6Distinct people
6Mentions
0Explicit recommenders
45GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Sample project to demonstrate the simplicity of RawJS projects.

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, 12:54:37 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 3-hour interval6 dated mentions

Observed mentions: 2024-01-03 16:14:24 UTC to 2024-01-06 11:12:38 UTC.

01232024-01-03 15:00:00 UTC to 2024-01-03 18:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 commentsJan 3, 15:002024-01-03 18:00:00 UTC to 2024-01-03 21:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-03 21:00:00 UTC to 2024-01-04 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-04 00:00:00 UTC to 2024-01-04 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 03:00:00 UTC to 2024-01-04 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 06:00:00 UTC to 2024-01-04 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 09:00:00 UTC to 2024-01-04 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 12:00:00 UTC to 2024-01-04 15:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 15:00:00 UTC to 2024-01-04 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 18:00:00 UTC to 2024-01-04 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-04 21:00:00 UTC to 2024-01-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 00:00:00 UTC to 2024-01-05 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJan 5, 00:002024-01-05 03:00:00 UTC to 2024-01-05 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 06:00:00 UTC to 2024-01-05 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 09:00:00 UTC to 2024-01-05 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 12:00:00 UTC to 2024-01-05 15:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 15:00:00 UTC to 2024-01-05 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 18:00:00 UTC to 2024-01-05 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-05 21:00:00 UTC to 2024-01-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-06 00:00:00 UTC to 2024-01-06 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-06 03:00:00 UTC to 2024-01-06 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-06 06:00:00 UTC to 2024-01-06 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2024-01-06 09:00:00 UTC to 2024-01-06 12:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJan 6, 09:00

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
Jan 3, 15:002024-01-03 15:00:00 UTC2024-01-03 18:00:00 UTC303
Jan 3, 18:002024-01-03 18:00:00 UTC2024-01-03 21:00:00 UTC101
Jan 3, 21:002024-01-03 21:00:00 UTC2024-01-04 00:00:00 UTC101
Jan 4, 00:002024-01-04 00:00:00 UTC2024-01-04 03:00:00 UTC000
Jan 4, 03:002024-01-04 03:00:00 UTC2024-01-04 06:00:00 UTC000
Jan 4, 06:002024-01-04 06:00:00 UTC2024-01-04 09:00:00 UTC000
Jan 4, 09:002024-01-04 09:00:00 UTC2024-01-04 12:00:00 UTC000
Jan 4, 12:002024-01-04 12:00:00 UTC2024-01-04 15:00:00 UTC000
Jan 4, 15:002024-01-04 15:00:00 UTC2024-01-04 18:00:00 UTC000
Jan 4, 18:002024-01-04 18:00:00 UTC2024-01-04 21:00:00 UTC000
Jan 4, 21:002024-01-04 21:00:00 UTC2024-01-05 00:00:00 UTC000
Jan 5, 00:002024-01-05 00:00:00 UTC2024-01-05 03:00:00 UTC000
Jan 5, 03:002024-01-05 03:00:00 UTC2024-01-05 06:00:00 UTC000
Jan 5, 06:002024-01-05 06:00:00 UTC2024-01-05 09:00:00 UTC000
Jan 5, 09:002024-01-05 09:00:00 UTC2024-01-05 12:00:00 UTC000
Jan 5, 12:002024-01-05 12:00:00 UTC2024-01-05 15:00:00 UTC000
Jan 5, 15:002024-01-05 15:00:00 UTC2024-01-05 18:00:00 UTC000
Jan 5, 18:002024-01-05 18:00:00 UTC2024-01-05 21:00:00 UTC000
Jan 5, 21:002024-01-05 21:00:00 UTC2024-01-06 00:00:00 UTC000
Jan 6, 00:002024-01-06 00:00:00 UTC2024-01-06 03:00:00 UTC000
Jan 6, 03:002024-01-06 03:00:00 UTC2024-01-06 06:00:00 UTC000
Jan 6, 06:002024-01-06 06:00:00 UTC2024-01-06 09:00:00 UTC000
Jan 6, 09:002024-01-06 09:00:00 UTC2024-01-06 12:00:00 UTC101

What Hacker News says

6 sources
I think the main reason why small things like rawJS are appealing is that a lot of devs got directly or indirectly forced into learning a framework and then got themselves burned one way or another while using it. We then developed a shared fantasy: "What if the native browser API was good enough so that we don't have to learn any fluff (frameworks, build tools, libs) to be productive? After all, other languages don't have this framework bloat problem. Let's just use this minimal lib instead." But this is just a fantasy. Element constructions are not the problem. Updating the state and DOM is the issue. We don't do stuff like rawJS or jQuery for bigger apps because they are too low-level and they don't scale well. What we need is to operate at a higher level, not get rid of almost all of the abstractions entirely like rawJS. Have a look a
Read the rest
t https://github.com/squaresapp/rawjs-sample/blob/35939695dba6.... This is the kind of code that is meaningless to my app. It's just DOM housekeeping. The example app is small enough so that there isn't much of it: this is the only interactive bit of your demo app. But the bigger the app, the more housekeeping like this you need. Try to showcase a bigger demo app with a lot of interaction. Now, there are specific cases where I don't want/need a framework. If I want better performance, the framework can become a hindrance (this is generally the case - when you want performance, you need to look at the lower levels). If the app is tiny, frameworks are just fluff. But for the overwhelming majority of cases (apps that are not tiny and don't need amazing performance): As a web dev, I want to assign some object to some reference and then my app to be updated based on my state. When some event happens, I want to update some of the app state. That's it! I don't want to mix my business logic with DOM fluff. I don't need another piece of code to worry about. I want some dependency to do that for me. Is it going to happen via virtual DOM or change detection or something else? Who knows.
In RawJS is a better way to call document.createElement()
> The vast majority of devs aren't (and shouldn't be) writing their own custom components. Component frameworks are for doing exactly that, and they generally make it pretty easy, with no manual DOM manipulation required when state changes. Rather than continue with my salty commentary, I suggest to anyone still reading to look at any other file in the example project and draw their own conclusions: https://github.com/squaresapp/rawjs-sample
In RawJS is a better way to call document.createElement()
Even worse, their "Check out Squares" link takes me to https://github.com/squaresapp/rawjs-sample The live sample of that is not very impressive. And even worse: > These are the limitations you need to accept with this project structure: > You have to be disciplined to only use dependencies that are published on jsdelivr (npm install programmers need to clean up their act) That with a package.json which has dependencies @squaresapp/rawjs and rawter, both of which have no info on npmjs. Talk about "do as I say, not as I do". The idea that you might be able to handle things like i18n and a18y without dependencies screams "not invented here" syndrome.
In RawJS is a better way to call document.createElement()

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.