r/javascript • • 2d ago

Showoff Saturday Showoff Saturday (October 24, 2026)

8 Upvotes

Did you find or create something cool this week in javascript?

Show us here!


r/javascript • • 15h ago

Subreddit Stats Your /r/javascript recap for the week of October 19 - October 25, 2026

0 Upvotes

Monday, October 19 - Sunday, October 25, 2026

Top Posts

score comments title & link
116 44 comments Introducing tsrs: a Port of TypeScript to Rust
98 35 comments Announcing TypeScript 7.1 Beta
78 6 comments We just gave a million dollars to Open Source maintainers
52 29 comments I spent three years building Nanoviews, a tiny UI library on signals. It just hit 1.0
28 1 comments LittleJS Engine is 2D and 3D now
15 23 comments Wasp web framework v1.0 is coming: the roadmap and what changes
9 5 comments Inline rendering with document​.currentScript
7 7 comments [Showoff Saturday] Showoff Saturday (October 24, 2026)
6 0 comments a website that lets you play with antennas and visualize the electromagnetic field
4 0 comments DigitalVisualMixer: live visuals, no experience required

 

Most Commented Posts

score comments title & link
0 13 comments made a CLI that generates a typed client from a HAR capture — here's what the output looks like
0 10 comments HTML is Alive - an exhortation to remove its ventilator
0 5 comments [AskJS] [AskJS] :Recently got a PR merged into TanStack Query
0 4 comments Article: I replaced EsLint. The First Attempt Worked. I threw it away.
3 4 comments Knitting — a shared-memory concurrency runtime for JavaScript

 

Top Showoffs

score comment
2 /u/lbragile_dev said https://reddit.com/link/19rlo27m59x5u/video/mk6gxsvaihxh1/player [tabmerger.com](http://tabmerger.com/) [github.com/lbragile/TabMerger](http://github.com/lbragile/TabM...
2 /u/ImaginationVarious30 said Showoff: **hexvero**, a TypeScript CLI that diffs two builds of an Electron app without running either. It answers "what did this release change for the pages inside it?": new preload/contextB...
2 /u/intensityflow said made a little in-browser converter for arc's sidebar file, since arc shuts down dec 22 and its own new export saves your tabs as a list of links. you drop in StorableSidebar.json and get a normal book...

 

Top Comments

score comment
46 /u/Dramatic_Mastodon_93 said is all software devs do nowadays port stuff from one language or framework to another language or framework
38 /u/Ecksters said If I remember correctly, the reason Go was picked was because they were more easily able to translate over the code directly compared to other low level languages. Given that we have a heavy test sui...
37 /u/somebody-2027 said You gotta be kidding me. I get it, rust is great, and AI makes many new things possible. But I will NEVER us a third party typescript compiler. TS has far too many esoteric rules to trust anything not...
35 /u/queen-adreena said Yay. Finally we can get ESLint support for Typescript Go.
28 /u/Spare_Message_3607 said I see where they are going. Vite owning the whole thing, Typescript, linter, formatter, build, test. Honestly, I would say the port is completely unnecessary, Go is fast enough for most projects under...

 


r/javascript • • 1d ago

LittleJS Engine is 2D and 3D now

Thumbnail frankforce.com
51 Upvotes

r/javascript • • 1h ago

A New Node.js library

Thumbnail npmjs.com
• Upvotes

When you scale a Node.js backend using node:cluster, you run into a surprisingly annoying problem:

How do you rate-limit external APIs like Stripe or OpenAI while making sure all workers share the same rate limit?

The first solution that comes to mind is usually: "Just use Redis."

But does it really make sense to introduce additional infrastructure complexity, network overhead, and an entire external dependency just to coordinate a few API calls coming from the same server?

That's exactly why I built cluster-rate-limiter.

A Node.js library that gives you coordinated rate limiting across workers, powered entirely by Node.js's native IPC messaging, with no Redis and absolutely zero external dependencies.

Rather than diving into the internals here, here's what you get out of the box:

  • Zero Setup: Install it and start using it. No additional infrastructure required.
  • Developer-Friendly API: The run() method accepts your fetch call or any function directly, along with all its arguments. No complicated callback patterns.
  • Two Types of Limits: Supports both Semaphore-based concurrency limits and Duration-based rate limits for enforcing strict time windows, such as those imposed by Stripe APIs.
  • Typed Errors: If a request times out waiting for permission, the library throws a clear, specific error that you can easily translate into an HTTP 429 Too Many Requests response.

And when it comes to performance, the core data structure for tracking request timestamps uses a zero-allocation approach built around a Float64Array ring buffer.

This eliminates the need for repeated array reallocations and significantly reduces garbage collection pressure under heavy load.

If you're interested in the low-level details, I've explained the ring buffer implementation and how it reduces memory overhead in the README.

If you're running a clustered Node.js backend and want to avoid the overhead of introducing Redis just for rate limiting, check out the links below, explore the architecture, and let me know what you think!


r/javascript • • 23h ago

GitHub - evoluteur/braille-quiz: Learn to read Braille: guess words letter group by letter group (a-j, a-t, a-z), with and without a cheat sheet, against the clock.

Thumbnail github.com
1 Upvotes

r/javascript • • 1d ago

Biblioteca HTML y CSS

Thumbnail libreria-html-css.vercel.app
0 Upvotes

Buenas! Quiero compartir un proyecto personal en el que he estado trabajando: una biblioteca de recursos de desarrollo web.

La idea es reunir ejemplos y componentes que sirvan para aprender, experimentar, encontrar inspiración y reutilizar código en otros proyectos.

Si estás aprendiendo frontend o ya desarrollas páginas web, me gustaría conocer tu opinión.

¿Qué tipos de componentes o recursos te gustaría encontrar en una biblioteca así?

¡Cualquier feedback constructivo es bienvenido!


r/javascript • • 1d ago

Handcrafted HTML-first progressive framework that outperforms React

Thumbnail codeberg.org
0 Upvotes

I just released v0.1.1 of my HTML-first progressive enhancement framework with zero AI assistance. It is designed to support the needs of civic tech websites.

Places.js has these features.

  • Dynamic HTML-first web components rendered with data from an API endpoint or other external source.
  • Easy integration with existing projects through HTML-first templates and web components.
  • No build step. Places.js can be downloaded from a CDN.
  • Rendering agnostic stores that can be integrated with vanilla JS web components or another framework.
  • Support for partial re-rendering through using signals.

Places.js is optimized for fast performance and outperforms Lit, React, and Svelte. When benchmark testing, Places.js took approximately 140 milliseconds to render 1000 rows of tabular data.

  • Lit: 156 milliseconds
  • React: 162 milliseconds
  • Svelte: 153 milliseconds

Examples of using Places.js

Getting started

Download the places-js-latest.js file from the CDN.

A detailed reference guide can be seen here: https://createthirdplaces.org/tech/placesjs/reference/presentationComponent.html

Priorities for next release

  • Adding more unit test coverage.
  • Compatibility with other tools, especially hypermedia UI tools including Datastar and HTMX
  • Implementing hypermedia controls.
  • Testing integration with Leaflet and other mapping libraries.

Specific TODO items are listed on the issues page. I am looking for help testing compatibility with other tools.

Also, Places.js has a strict policy that meas all code changes, comments, or new issues must be created by humans. AI tools such as ChatGPT, ClaudeUse of ChatGPT, Claude, or GitHub Copilot cannot be used.

Additional code examples

Creating a component with a template to list events.

<presentation-component data-store = "search-results-store">
  <div>
      <p id="no-events-found">No events found</p>
      <h1 id="search-results-header">Event search results</h1>
      <ul data-template=data>
          <li>
            <a class="btn secondary" href="{url}">
              {eventName}
            </a>
            <div class="event-time">
              {eventTime}
            </div>
            <div class="event-location">
              {location}
            </div>
          </li>
      </ul>
  </div>
</presentation-component>

Defining a store for component with backend data fetching and reactivity configured by signals.

function getSearchResultsQueryConfig(searchParams) {
  let url;
  // Logic to determine API url for store goes here.
  return {
    url: url,
  };
}

const presentationSignals = {
  eventData: {
    id: (eventData) => eventData.eventId,
    update: {
      eventTime: (eventData) => {
        if (eventData.isRecurring) {
          return `${eventData.dayOfWeek}s at ${eventData.nextEventTime}`;
        }
        return `${eventData.nextEventDate} at ${eventData.nextEventTime}`;
      },
      location: (eventData) => {
        return `${convertLocationDataForDisplay(eventData.eventLocation)}`;
      },
      url: (eventData) => {
        return `/html/groups/event.html?id=${eventData.eventId}&groupId=${eventData.groupId}`;
      },
    },
  },
};

export const SEARCH_RESULTS_STORE = DataStore.createWithApiLoadSignal({
  queryConfig: getSearchResultsQueryConfig,
  presentationSignals: presentationSignals,
  storeName: "search-results-store",
});

r/javascript • • 2d ago

DigitalVisualMixer: live visuals, no experience required

Thumbnail github.com
5 Upvotes

DigitalVisualMixer is a visual mixer for musicians, DJs, VJs, streamers and anyone curious about generative art. It uses Hydra, a creative-coding language where a single line like osc().kaleid() becomes a moving kaleidoscope. The app makes it approachable for beginners and fast for experts.

Start with zero knowledge. Right-click in the editor to insert ready-made functions, hover them to see their parameters, and open the built-in Guide with F1. Every change shows up first in a private preview.

Build a set. Save each visual in its own channel. Search, reorder by drag and drop, and send channels live with cut, crossfade or add transitions, all from the keyboard.

Perform it. Turn any number into a live variable and move it with a slider, a gamepad, a MIDI controller or the keyboard. The visual changes smoothly, without restarting. Perform view gives you big pads for channels and presets, so you can play a full show without touching code.

Show it anywhere. The live output runs in a separate window, so you keep working while the audience watches. It’s also shared on your local network: open it on a projector, a second PC, a tablet or a phone.

No setup. A single file, no installation. Windows and macOS.


r/javascript • • 3d ago

I spent three years building Nanoviews, a tiny UI library on signals. It just hit 1.0

Thumbnail dangreen.blog
71 Upvotes

Author here. Nanoviews builds real DOM once, and signals update it in place. No JSX, no virtual DOM. It's around 4 kB gzipped and even runs without a build step. The same weather app weighs 10 kB with Nanoviews versus 66 kB with React. In js-framework-benchmark it comes right behind Solid and Svelte. There's a StackBlitz demo in the post.


r/javascript • • 3d ago

Inline rendering with document​.currentScript

Thumbnail leanrada.com
16 Upvotes

r/javascript • • 3d ago

AskJS [AskJS] :Recently got a PR merged into TanStack Query

0 Upvotes

I recently got a PR merged into TanStack Query's ESLint plugin to fix a false-positive issue in the no-unstable-deps rule

.

The existing tests missed a few JavaScript edge cases, so I fixed the underlying issue and added regression tests.

It's a good reminder that passing tests don't always mean every edge case is covered. Sometimes the real work is finding what the tests missed.

How do you usually spot gaps in test coverage when the existing suite is already passing?


r/javascript • • 4d ago

We just gave a million dollars to Open Source maintainers

Thumbnail blog.sentry.io
121 Upvotes

r/javascript • • 4d ago

Wasp web framework v1.0 is coming: the roadmap and what changes

Thumbnail wasp.sh
34 Upvotes

r/javascript • • 4d ago

a website that lets you play with antennas and visualize the electromagnetic field

Thumbnail antennasim.com
5 Upvotes

I’ve been building this EM simulator as a side project aimed to help students understand and visualize electromagnetic phenomena such as radiation, polarization and wave interference.

I hope someone might find it useful and I’d love to hear what people think :)

GitHub:

https://github.com/rotemTsafrir/antenna_sim


r/javascript • • 3d ago

Article: I replaced EsLint. The First Attempt Worked. I threw it away.

Thumbnail hyperfrontend.dev
0 Upvotes

Self reporting of what it took to decouple my workspace/codebase from the tool that has served me well for a very long time, with the assistance of AI.


r/javascript • • 4d ago

Nano Kit 2.0 is out: my state management library now has DevTools

Thumbnail dangreen.blog
3 Upvotes

Author here. Nano Kit is a ~2 kB signals core with a router, data fetching, i18n and SSR on top of it, and adapters for React, Preact and Svelte. The panel needs no browser extension or bundler plugin, and none of it reaches the production bundle. There's a StackBlitz demo in the post.


r/javascript • • 4d ago

tiptap-a4-pagination: free A4 page layout for TipTap 3 – tables split across pages and repeat their header

Thumbnail github.com
2 Upvotes

Author here. I needed Word-style pages in a TipTap editor. The official Pages extension is paid, and the community ones I tried broke my CSS, so I built this.

How it works

  • It inserts spacer decorations at page boundaries, so the document itself is never modified and getHTML() stays clean
  • Tables split between rows (never inside a rowspan) and the header row repeats on the next page
  • Floated images and CSS margin collapsing are handled
  • About 5 KB gzipped, TipTap 3 only: npm install tiptap-a4-pagination

Demo: https://text-editor-react-neon.vercel.app/

Paste a long doc or a big table to try it. Feedback welcome, especially documents that break the layout!


r/javascript • • 5d ago

i built a browser civilization sandbox: rust/wasm sim core with a react ui, MIT

Thumbnail github.com
6 Upvotes

r/javascript • • 5d ago

I made a map where you drag a year slider and see who ruled each state (1000 BC to today, every claim sourced)

Thumbnail whoruled.nitinsijwali.com
2 Upvotes

Free and open source, no signup. The theme changes with the era. Borders before ~500 BC are approximate, and leader data is thin before 1600, so corrections are very welcome. Link in comments.

code: https://github.com/nsijwali/WhoRuled


r/javascript • • 5d ago

made a CLI that generates a typed client from a HAR capture — here's what the output looks like

Thumbnail github.com
0 Upvotes

built this after getting tired of manually writing fetch wrappers for sites with no public API. point it at a HAR file (browser network capture) and it generates a typed client.

input: a captured request to something like `GET /users/42`

output (simplified):

export interface User {

id: number;

name: string;

email: string;

}

export async function getUser(id: number): Promise<User> {

const res = await fetch(`${baseUrl}/users/${id}`);

if (!res.ok) throw new ApiError(res.status, await res.text());

return res.json();

}

it infers the types from the actual response bodies in the capture, templates dynamic path segments like `{id}`, and also generates an OpenAPI spec + mock server from the same HAR.

also tries to catch GraphQL/tRPC/JSON-RPC calls instead of treating everything as REST, and strips anything sensitive (tokens, cookies) from the captured data before it reaches the generated code.

npx har2sdk capture.har -o ./sdk

repo: https://github.com/Mersbyte/har2sdk

curious what people think of the generated code style, or if anyone's hit an API shape it chokes on.


r/javascript • • 6d ago

Announcing TypeScript 7.1 Beta

Thumbnail devblogs.microsoft.com
131 Upvotes

r/javascript • • 6d ago

Introducing tsrs: a Port of TypeScript to Rust

Thumbnail blog.cloudflare.com
139 Upvotes

r/javascript • • 5d ago

Wasp web framework v1.0 is coming: the roadmap and what changes

Thumbnail wasp.sh
0 Upvotes

r/javascript • • 5d ago

3 drop-in JS widgets (forecast, dashboard, anomaly detection) that run 100% in the browser via WASM

Thumbnail github.com
0 Upvotes

Spent the last months building

@datastripes/forecast
@datastripes/dashboard
@datastripes/anomaly 

These are framework-agnostic npm packages (React, Vue, Angular, or a plain custom element) that add time-series forecasting, an editable dashboard builder, and anomaly detection to any frontend app.

Everything runs client-side via WebAssembly, so no user data ever hits a server except a license check without a backend to deploy, no Python microservice.

Would genuinely love feedback from anyone who's had to build this kind of feature in-house.

https://datastripes.com/forecast-widget/

https://datastripes.com/dashboard-widget/

https://datastripes.com/anomaly-widget/


r/javascript • • 5d ago

I made a practice tool for JavaScript that requires you to type all answers

Thumbnail nadir.dev
0 Upvotes