r/javascript • u/sysrpl • 20h ago
r/javascript • u/AutoModerator • 1d ago
Showoff Saturday Showoff Saturday (November 14, 2026)
Did you find or create something cool this week in javascript?
Show us here!
r/javascript • u/subredditsummarybot • 6d ago
Subreddit Stats Your /r/javascript recap for the week of November 02 - November 08, 2026
Monday, November 02 - Sunday, November 08, 2026
Top Posts
| score | comments | title & link |
|---|---|---|
| 13 | 6 comments | GB.js - GameBoy and GBA emulator core in Typescript |
| 9 | 9 comments | SpaceHex - Rotate the rooms to capture the orbs while avoiding the critters |
| 9 | 35 comments | [AskJS] [AskJS] Do you ban positional boolean arguments in code review, or is an options object overkill? |
| 8 | 12 comments | [Showoff Saturday] Showoff Saturday (November 07, 2026) |
| 8 | 1 comments | System One model in the browser, learns from an LLM when it isn't confident. |
| 8 | 7 comments | CheerpJ 5.0: Java 21/25 in the browser, full OpenJDK, and a new WasmGC engine |
| 5 | 4 comments | Making Browser OCR Read Real Phone Photos |
| 5 | 14 comments | [AskJS] [AskJS] How do you keep un-awaited expect(...).resolves out of your test suites? |
| 5 | 0 comments | serialport-rs for Node.js: Rust-backed serial ports for Node.js with parallel I/O and SerialPort-compatible APIs |
| 5 | 0 comments | Jeasx 3.0 is out: async JSX on the server, now streaming to the browser and about 2x faster |
Most Commented Posts
| score | comments | title & link |
|---|---|---|
| 0 | 26 comments | [AskJS] [AskJS] Is it actually possible for an iframe to control the parent page’s URL without the host app doing anything? |
| 0 | 16 comments | [AskJS] [AskJS] Do you think vanilla JS will be #1 for everything and anything thanks to AI? |
| 0 | 16 comments | [AskJS] [AskJS] Would you use a mature UI library that nobody’s heard of? |
| 0 | 11 comments | I built Domicile, a Linux desktop platform where native application windows are DOM elements |
| 3 | 10 comments | Our JavaScript hero entrance kept LCP at ~50ms but visibly flashed. Hiding it until scripts loaded pushed LCP to ~1.75s |
Top Showoffs
Top Comments
r/javascript • u/shemlokashur • 1d ago
AskJS [AskJS] Any use for JS decorators?
As far as I understand, the tc39 decorator proposal is already implemented in most engines. But didn't see any framework elaborating this feature.
Any real world usage out there?
r/javascript • u/theGlitchedSide • 1d ago
Diary Dev - Staxis is coming!
Staxis is coming. The first preview of the website is live. Staxis is a modular toolkit for Node.js. Start with the free Core, assemble your stack with Layers Packs, or build your own layers.
We’re getting the first pages of the official documentation ready as we work toward the Kickstarter campaign and the 1.0 release. If you’d like to help us get there, you can already support or sponsor the project.
Take a look → https://staxis.dev
r/javascript • u/crownclown67 • 1d ago
AskJS [AskJS] What's the longest-running personal project you've developed and maintained?
Today, I checked the date of the first commit to my personal framework.
It was made in August 2022 – over 4 years ago!
I've never made any money from it. I simply enjoy developing and maintaining something of my own. And it still works great!
Every new website I build is powered by it.
Ps: It's not a project aimed at an audience. I build it purely for myself.
If you have something like that - please share.
r/javascript • u/tzezar • 1d ago
AskJS [AskJS] Which Node.js framework gives you the best developer experience, and why?
Personally, I'm really enjoying Hono. Its automatic endpoint inference is a big win. I previously enjoyed using Fastify with Zod Provider for OpenAPI schema generation, but Hono cuts that extra step and makes the workflow feel much smoother.
Curious what everyone else is using!
r/javascript • u/monstropulos • 2d ago
GitHub - pavex/safebox: One encrypted file with named secrets for a Node.js app, plus a CLI to manage it.
One encrypted file with named secrets for a Node.js app, plus a CLI to manage it.
You keep app.safebox next to the app: in the repository, in the deploy package. The app opens it with a password it gets from somewhere else and has every API key, database password and private key it needs. Without the password the file is useless.
AES-256-GCM with a key from scrypt, the whole file authenticated
TypeScript source with only Node.js built-in modules, no runtime dependencies
CLI as one bundled file,
dist/safebox.jsStatus: beta (
0.1.0-beta.1), the file format may still change before 1.0
Requires Node.js 22 or newer.
r/javascript • u/ribbbsy • 2d ago
The AI Cost of Marionette
A follow-up to Nolan Lawson’s AI framework benchmark
r/javascript • u/ClickOk5811 • 3d ago
AskJS [AskJS] new Date("2026-03-10") and new Date("2026-03-10T00:00") look the same but aren’t, and the difference depends on the time zone
A small experiment you can paste into Node or a console:
const a = new Date("2026-03-10");
const b = new Date("2026-03-10T00:00");
console.log(a.toISOString());
console.log(b.toISOString());
console.log(a.getTime() === b.getTime());
console.log(a.getDate(), b.getDate());I ran it in Node 22 with the TZ environment variable set to four zones:
| TZ | a (date-only) | b (date + time) | same instant? | getDate() a / b |
|---|---|---|---|---|
| UTC | 2026-03-10T00:00Z | 2026-03-10T00:00Z | true | 10 / 10 |
| America/Sao_Paulo | 2026-03-10T00:00Z | 2026-03-10T03:00Z | false | 9 / 10 |
| America/Los_Angeles | 2026-03-10T00:00Z | 2026-03-10T07:00Z | false | 9 / 10 |
| Asia/Tokyo | 2026-03-10T00:00Z | 2026-03-09T15:00Z | false | 10 / 10 |
What’s going on: per the ECMAScript spec as I understand it, a date-only ISO string is parsed as UTC, while a date-time string without an offset is parsed as local time. So the first is always midnight UTC, and the second is midnight wherever the code runs.
Where it bites:
In zones behind UTC (like the Americas),
a.getDate()returns the previous day, because the local getters convert from UTC midnight. A “date of birth” or “due date” can display as one day earlier.On a dev machine set to UTC the two agree, so tests pass locally and the bug shows up only for users elsewhere (or on a CI box with a different zone).
In my run,
new Date("2026/03/10")andnew Date(2026, 2, 10)behaved like the local-time form. Slash-separated strings aren’t standard ISO, though, so I’d not rely on them being consistent across engines.
Ways to avoid it:
If the value is a calendar date and not an instant, don’t store it as a
Dateat all. Keep"2026-03-10"as a string, or as year/month/day numbers, and format it without converting.If you need a
Date, be explicit:new Date(Date.UTC(2026, 2, 10))and read it back with thegetUTC*methods, or always include an offset ("2026-03-10T00:00:00Z").For testing, run your suite under a few
TZvalues, as above, rather than only on your own machine.The
Temporalproposal is designed to separate dates from instants. I haven’t checked its current status in each runtime, so look at the compatibility tables before depending on it.
Caveat: my results are from one Node version. Browsers should follow the same spec for the ISO forms, but test where it matters.
How do you represent calendar dates (not timestamps) in your codebases: strings, a library, or something else?
r/javascript • u/Ecstatic_Trouble_908 • 4d ago
AskJS [AskJS] Hash (#) vs underscore (_) for naming properties with Lit
I've already been using Lit for a while in JS and I see many places where they recommend using private _property = value so that it is more readable, even though it does not really make it private.
Others recommend using #property = value because it makes it private so that if you try to use it from outside the scope it throws an error. But I still see places where they don't like using this.
I don't really know what should I use or if it doesn't really matter.
r/javascript • u/natorion • 4d ago
Top 10 things AI gets wrong in web development | Blog | Chrome for Developers
r/javascript • u/LivingWorldliness409 • 5d ago
I built a multi-core SQL engine for JavaScript (pure JS + WebAssembly, no native addon)
r/javascript • u/dolanmiu • 5d ago
AngularLynx: idiomatic Angular rendering natively on iOS and Android via Lynx, with Renderer2 implemented on Lynx’s element API
angularlynx.js.orgHi r/javascript. I’ve been using Angular since the AngularJS and the Angular 2 betas. When ByteDance created Lynx, I really liked it, but it only came with React and Vue. So it's time for an Angular one to exist!
The aim is for it to be ordinary idiomatic Angular, not a subset or deviation, and it follows Angular's major.minor versions:
npm create angular-lynx my-app
cd my-app
ng serve # web preview, plus a QR code for the Lynx Explorer app
ng test
ng build --platform ios # or android: a native app you can open in Xcode / Android Studio
Signals, the router with lazy routes, forms, i18n, DI, ViewContainerRef.createComponent() and Tailwind all work. It idiomatically uses the Angular Router for the page stack, so there are no extra concepts. The one big difference is the templates: you write Lynx's elements (<view>, <text>, <scroll-view>) instead of HTML, and they become real UIView/Android views. The same app also runs in the browser.
How it works: Lynx has two threads, a main thread that owns the native element tree and a background thread. Instead of Angular's DOM renderer, AngularLynx implements Renderer2 on top of Lynx's element API (__CreateElement, __AppendElement, …), and the Angular app runs on the main thread, so updates go straight to the elements without crossing threads. Things that only exist on the background thread (native modules, fetch) are relayed. The build is an Rsbuild plugin that compiles Angular and splits the output into the two bundles Lynx expects, wrapped in Angular CLI builders so angular.json stays the usual one.
There's also a component library, Dolan UI: 54 components (sheets, dialogs, charts, forms…) that a CLI copies into your app, like shadcn/ui.
It's still early days, but it is feature rich, with a lot of examples and showcase apps. Lynx's main-thread JS engine is ES2019-level, so newer built-ins are polyfilled, and some web habits don't carry over (CSS is a subset: no inheritance outside text, no :hover or @media).
MIT licensed. The README has a GIF of the same app on iOS, Android and web. I'd love to hear what breaks, and I'm happy to go into the renderer internals. Please give it a star! It would mean the world if this takes off!
GitHub: https://github.com/Blotch-Smart-Frames/AngularLynx
Docs: https://angularlynx.js.org
Demo GIF: https://angularlynx.js.org/demo.gif
r/javascript • u/fagnerbrack • 5d ago
What we learned operating auth for 1,000+ APIs
r/javascript • u/BeamAlchemist • 5d ago
AskJS [AskJS] Are we putting too much application logic in the frontend?
I've been exploring Phoenix LiveView lately, and it got me thinking.
We've spent years moving more state and logic into the browser. But what if we kept most application state on the server and used JavaScript mainly for rich interactions?
I'm not talking about replacing JS. Libraries like Monaco, AG Grid, and Chart.js are great and I'd absolutely want to keep using them.
Curious what frontend devs think. Would you consider a server-driven approach if you could still use your favorite JS libraries, or is there too much downside?
r/javascript • u/ActualGovernment9017 • 6d ago
claude-bulkhead: a dependency-free Node hook that parses shell commands before Claude Code runs them, so parallel sessions stop breaking each other
r/javascript • u/david_klassen • 6d ago
Computing a Factorial with Church Numerals
r/javascript • u/aron1tw • 6d ago
We moved Master CSS's core semantics to Rust and check the JS browser engine against it for identical output
r/javascript • u/der_gopher • 6d ago
The future of Software Engineering is boring
r/javascript • u/Significant-Sea-7238 • 7d ago
Porting SwiftUI's spring animation (duration + bounce) to plain JS
This is the resize animation of Openbar's island on Windows (Tauri + React). The Mac app is SwiftUI, so I ported its spring math to get the same feel on both. Width and height each get their own spring: a growing side may swing past its target, capped at 12 px, and a shrinking side never does.
The app shows Claude Code and Codex sessions in a Dynamic Island. Free, GPL.
r/javascript • u/madhushankarox • 7d ago
Making Browser OCR Read Real Phone Photos
I have a free image-to-text tool that runs Tesseract.js in the browser (nothing gets uploaded). Screenshots worked great, 94-96% confidence. Then I took a phone photo of a kids' sunscreen bottle and got back lines like "v4 oR. a" and "EB ewraone".
What was actually wrong:
The photo was sideways. Phones save the pixels rotated and add an EXIF tag saying "turn this 90°". Browsers obey it, Tesseract doesn't. Fix: createImageBitmap(file, { imageOrientation: 'from-image' }) and work from that canvas.
White text on blue. Tesseract mostly expects dark text on light paper. I now make a grayscale copy with a contrast stretch plus an inverted copy, and read those with page segmentation mode 11 (sparse text) instead of the default.
No single pass gets everything. The normal pass found "Diana", the inverted one found "UVA UVB PROTECTION", the color one found "Water Resistant". So I merge the words by bounding box, keep the confident ones, and boost words that two passes agree on. Fun bug: picking the most confident word gave me "Pea" instead of "Peaceful", so longer words get a small bonus now.
Small print. Running the gray passes again on a 1.6x upscaled copy picked up "MOISTURISING" and "ALCOHOL FREE" on another bottle.
Result on the sunscreen: 92% confidence and every line of printed text. Screenshots skip all of this because the first pass is already confident, so they're not slower.
Still can't do: bubble fonts ("CUDDLES" comes back as "UDDLES"), script fonts, handwriting.
Has anyone found a better approach for mixed light/dark text in one image than running multiple passes? Curious what others do.
r/javascript • u/-KoVer- • 7d ago
AskJS [AskJS] Do you think vanilla JS will be #1 for everything and anything thanks to AI?
Curious to hear about your opinion.