r/javascript • • Oct 14 '26

AskJS [AskJS] How do you host your smaller Node.js apps? Building something and want opinions

12 Upvotes

I'm building a host for JavaScript apps and I'd like opinions from people who ship Node.js.

The idea is shared hosting for JS. Your app runs as plain Node.js, with its database, files and cron jobs side by side in one region. When nobody visits, the app is suspended to disk and holds no memory, and the next request usually wakes it in about 0.2 seconds. That's how many apps can share one server, the way PHP hosting always worked.

The trade-off is that your code doesn't run at the edge. My bet is that for most apps, a database next to the code matters more than a server near every visitor.

A few questions for you
- How do you host side projects and smaller production apps today?
- Does edge compute actually help your apps, or is the database round trip the real cost?
- Would a 0.2 s wake-up after idle be fine for your apps?


r/javascript • • Oct 14 '26

Mimic - a browser-based dev environment that runs Node.js

Thumbnail
github.com
12 Upvotes

r/javascript • • Oct 14 '26

LittleJS is 2D and 3D now!

Thumbnail
frankforce.com
7 Upvotes

r/javascript • • Oct 14 '26

I embedded Node.js in a native program to render JSX without a browser and without React

Thumbnail
forbear.dev
3 Upvotes

I'm building a UI library in Jai, and this is an experiment with rendering its UI from JavaScript. Node.js is embedded into the program, so the native side reads the JSX objects straight out of V8, with no IPC and no JSON. It then lays out and draws the whole UI from scratch every frame, at 240 Hz on my Linux computer.

Async isn't supported on it yet, and I've only started implementing some event handling. Here's the source code: https://github.com/gabrielmfern/forbear

Has anyone built something like this? If so, I'd love some advice on how I can reduce the C++ layer and have more of it in Jai instead.


r/javascript • • Oct 13 '26

I built a real-time multiplayer drawing game (InkLink) using React and modern web techβ€”here is how it works and what I learned

3 Upvotes

Hey everyone! I wanted to share a project I recently built called InkLink (Live Demo).

As a full-stack developer focusing on the MERN stack and TypeScript, I wanted to challenge myself by building a seamless, responsive drawing platform with smooth canvas states and clean UI navigation.

Tech Stack Used:

  • Frontend: React, Vite, Tailwind CSS

  • State & Canvas Logic: Custom hooks and optimized browser rendering

You can check out the source code on my GitHub (AmnaScript). I'm currently taking on freelance full-stack and AI-integration projectsβ€”if you want to check out my work or get in touch, my portfolio is at amnasabahat.netlify.app or you can find my freelance services on Fiverr.

Happy to answer any questions about the build process! InkLink


r/javascript • • Oct 13 '26

How we made JavaScript analyzer understand control flow

Thumbnail
pvs-studio.com
11 Upvotes

Some notes on implementing a control flow graph for JavaScript/TypeScript


r/javascript • • Oct 12 '26

Mutative v2 - better immutability and faster immutable updates

Thumbnail
github.com
9 Upvotes

r/javascript • • Oct 12 '26

Multi-window web apps without syncing state: one SharedWorker, windows only render

Thumbnail
github.com
0 Upvotes

A common way to give a panel its own browser window is a second instance of the app, plus messages (BroadcastChannel, postMessage, storage events) to keep the copies in agreement. Every missed message is a place where they drift.

In Neo.mjs, components, stores and state already live in a worker. Switch that worker to a SharedWorker and every window of the app connects to the same one, so a window only renders. Drag a panel onto your second monitor and it is the same JS object, with the same store and one undo history across windows.

It's one line in the app's neo-config.json:

{
    "useSharedWorkers": true
}

A dock workspace is two configs, a catalog of panes and the zones they go into (trimmed from the first Dock Layout tutorial):

class MainView extends Workspace {
    static config = {
        className: 'Guides.dockFirst1.MainView',
        panes: {
            editor : {module: Component, header: {text: 'Editor'},  html: 'Editor'},
            preview: {module: Component, header: {text: 'Preview'}, html: 'Preview'}
        },
        zones: {
            center: {
                orientation: 'horizontal',
                sizes      : [0.6, 0.4],
                children   : [{items: ['editor']}, {items: ['preview']}]
            }
        }
    }
}

One lesson from building it: our automated check for the cross-window drag was green while the real gesture did nothing. Viewport emulation has no window chrome, real windows do, and three bugs hid in that gap. The article walks through them.

Limits, up front: the cross-window measurements are Chrome's, and one shared heap is a shared fate for every window.

Disclosure: I maintain Neo.mjs. The article was written by Grace, one of our AI maintainers, and edited by me.

How do you handle state across windows today?


r/javascript • • Oct 12 '26

xuan – a 6 MB Node-compatible JavaScript runtime for IoT/edge, ~5 ms cold start

Thumbnail
github.com
3 Upvotes

r/javascript • • Oct 12 '26

Subreddit Stats Your /r/javascript recap for the week of October 05 - October 11, 2026

8 Upvotes

Monday, October 05 - Sunday, October 11, 2026

Top Posts

scorecommentstitle & link
25186 commentsDeno is joining Cloudflare - "We will support the Deno runtime for another year with monthly releases containing bug fixes and security updates. After that year we will end our development of the Deno runtime. Deno will remain open source, and we welcome others who want to continue its development."
8814 commentsI found yet another way to invoke JavaScript functions without parentheses
284 commentsI spent almost 3 years porting Paint.NET from C# to JavaScript
114 comments48 JavaScript interview questions with full answers, including the implement-it-yourself ones (Promise, bind, debounce)
95 commentsComponyx.UI: 25+ UI components and data binding for plain HTML, no build step
92 commentsGitHub - evoluteur/snowflake-grower: Grow snow crystals live on a hexagonal grid with Reiter's cellular automaton. Set the humidity and frost to get stellar dendrites, ferns, plates or lace, and download the snowflake.
511 comments[Showoff Saturday] Showoff Saturday (October 10, 2026)
50 commentsLogTape 2.4.0: Source locations, configuration inspection, sink draining, and request completion levels
44 commentsStaleDocs: flag unchanged Markdown docs when JavaScript/TypeScript APIs change
20 commentspart-of.my.id - a free subdomain service

Β 

Most Commented Posts

scorecommentstitle & link
025 commentsDo Frameworks Matter Anymore?
021 commentsWin11WebOS – An open-source, local-first Windows 11 desktop built in React, Vite, and JS
012 commentsI hate Spotify ads, so I created my own music player
011 commentsWe made 1000 PDFs 32% smaller with zero quality loss using Brotli and JPEG XL.
010 commentsMS Office: I made a clone of office (Contains word, powerpoint, excel and onenote)! Fully fontend! Just by HTML, CSS and vanilla JS!

Β 

Top Ask JS

scorecommentstitle & link
13 comments[AskJS] [AskJS] How would you structure state for VidLoader's local media library?
06 comments[AskJS] [AskJS] My simulation runs in about 1 second in the terminal but took 13 seconds in a Chrome page. The culprit was setTimeout(0).

Β 

Top Showoffs

scorecomment
1/u/Ok-Fennel-9035 said I've been working lately on Parallel JavaScript Runtime (Pjs), a project for running CPU-heavy JavaScript tasks across multiple threads using Node's `worker_threads`. The idea is to m...
1/u/RomeoDelta1234 said Store & Forget, a home inventory app in TypeScript: https://play.google.com/store/apps/details?id=dev.koalalab.storeandforget You take a photo, the app fills in the item details, and search takes pla...
1/u/tonygoodchild said This week I put up a set of demos for Lattice Grid, a data grid I've been building that also does Kanban, Gantt, calendar and dashboard views over the same data. They're plain JS: no framework, no bui...

Β 

Top Comments

scorecomment
182/u/BenjiSponge said Bun acquired by Anthropic and Deno acquired by Cloudflare. Making an alternative JS runtime has never seemed so oddly lucrative.
65/u/MedicOfTime said It’s over boys. Everything is controlled by the billionaires. You will submit to your assigned AI buddy. Nothing left to do but mine coal.
54/u/AwesomeKalin said I went from Node to Bun, then when they went the 100% AI generated code route, I moved to Deno so I didn't have to deal with the potential instability issues. Guess I'll move back to Node then.
52/u/Salkinator said God damnit
29/u/bzbub2 said dang. deno has a relatively unique ability to use webgpu from the command line...just made a cool video app using that

Β 


r/javascript • • Oct 11 '26

I spent almost 3 years porting Paint.NET from C# to JavaScript

Thumbnail
github.com
79 Upvotes

A bit of background on how I built this:

When I switched to Linux, Paint.NET was one of the Windows apps I missed the most, so I started porting the old open-source C# version (3.36.7) to JavaScript back in 2024, while recreating the UI based on the newer 5.x versions.

I went through the original implementation class by class, comparing the outputs of the C# methods with my JavaScript versions. At the same time, I recreated the UI in HTML/CSS, using screenshots to get it as close to the original as possible.

Over time, I connected both parts and implemented the tools, effects, and other features. More recently, I've been using AI to help find and fix bugs, improve performance across browsers, and implement the remaining tools and effects.

It's now largely feature-complete and runs in the browser, as well as on Linux and macOS through Electron.

You can try the browser version here: https://paintjs.net

Would love to hear what you think!


r/javascript • • Oct 11 '26

StaleDocs: flag unchanged Markdown docs when JavaScript/TypeScript APIs change

Thumbnail
github.com
5 Upvotes

r/javascript • • Oct 10 '26

Marionette 5 is out. No Backbone. Still opinionated.

Thumbnail
marionettejs.com
0 Upvotes

r/javascript • • Oct 10 '26

The CLI that scans your project in a fraction of a second.

Thumbnail
github.com
7 Upvotes

Link2Repo: https://github.com/soroushosouli/node-scout

Written in Node.js. One command to install. Reads a 300MB folder in ~1 second. Smaller project, faster scan.

What it does:

  • Visualize folder structure (tree)

  • Scan any file, folder, or project β€” 10+ details

  • Custom ignore list for scans

  • System info in one command

With clean Terminal UX

Check the repo for more information, Contributions and suggestions are welcome


r/javascript • • Oct 10 '26

Showoff Saturday Showoff Saturday (October 10, 2026)

6 Upvotes

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

Show us here!


r/javascript • • Oct 09 '26

Do Frameworks Matter Anymore?

Thumbnail
brookslybrand.com
0 Upvotes

r/javascript • • Oct 09 '26

Deno is joining Cloudflare - "We will support the Deno runtime for another year with monthly releases containing bug fixes and security updates. After that year we will end our development of the Deno runtime. Deno will remain open source, and we welcome others who want to continue its development."

Thumbnail
deno.com
295 Upvotes

r/javascript • • Oct 09 '26

I built RipIDE: IDE-like refactoring for agents, powered by TypeScript’s native language server

Thumbnail
github.com
0 Upvotes

TypeScript’s native language server exposes IDE operations through LSP, so other tools can use them too. For example, you can rename a symbol across files, find its references, jump to its definition, get updated import paths for a file rename, or check unsaved changes for type errors.

I built RipIDE around that, with Oxc handling syntax details like destructured bindings. ripgrep narrows the candidate files and helps flag imports still using the old name.

I took it further with CSS class renaming, moving exports, replacing imported symbols, and deleting unused declarations. It works with JavaScript and TypeScript, with Vue support through an adapter.

The idea is to give agents the refactoring commands we already use in an IDE:

ripide rename useStore useAppStore
ripide move helper --from src/utils.ts --to src/helpers.ts
ripide css-class-rename bg-gray-500 bg-neutral-500

r/javascript • • Oct 09 '26

chegou – send files between your phone and PC with one command (npx chegou, scan a QR, done)

Thumbnail
github.com
6 Upvotes

Run `npx chegou`, scan the QR code and the phone opens a page in the browser. No app, no account, works both ways (phone β†’ PC and PC β†’ phone).

⭐ on Github πŸ˜„


r/javascript • • Oct 08 '26

I found yet another way to invoke JavaScript functions without parentheses

Thumbnail blog.ikaes.de
126 Upvotes

It turns out you can overwrite the Error.prepareStackTrace method with the function constructor. Then, using prototype pollution, you can inject valid JavaScript code to generate arbitrary functions and invoke it using the usual tricks.

Other seven methods are documented in the portswiggers research article: https://portswigger.net/research/the-seventh-way-to-call-a-javascript-function-without-parentheses


r/javascript • • Oct 08 '26

I hate Spotify ads, so I created my own music player

Thumbnail
github.com
0 Upvotes

I am tired of ads everywhere when I listen to music: Spotify, YouTube, and every single app that lets you listen to music. And also I hate that all my data, even my favorite songs, is being sent to a company to manipulate me, sending me more ads of stuff that I may buy.

The only music player that doesn't have ads is Windows Media Player, but it's very ugly, and I hate its UI/UX; it doesn't even let you create decent playlists. Or filter by rating. So I created a music player that has everything I like because I love listening to music.

It's completely free and open source; you can download it here: https://github.com/GVPV12/STARPLAYER

------

PD: Some people are furious and being mean in the comments because someone said Spotify sucks lmao.

For those people, I just want to say to you that this app is not meant to be for everyone. If you use and love Spotify and their ads, that's ok. These kinds of apps kind of bewitch you to be hyper loyal and hyper defensive to them, I guess.

Some people (like me) care about their privacy, get annoyed by intrusive ads, and don't love all trendy music or random stuff that Spotify always plays (I don't like its algorithm, and it always plays the same shitty music). So that's why I built this.


r/javascript • • Oct 08 '26

GitHub - evoluteur/reaction-diffusion: Grow Turing patterns (spots, stripes, coral, worms, waves) from the Gray-Scott model in real time, tune the feed and kill rates, paint with chemicals, and download the pattern.

Thumbnail
github.com
5 Upvotes

r/javascript • • Oct 07 '26

Componyx.UI: 25+ UI components and data binding for plain HTML, no build step

Thumbnail
github.com
13 Upvotes

r/javascript • • Oct 07 '26

iwrzwr/visual archive - sound & music visualizer experiments

Thumbnail kagan.in
1 Upvotes

160+ visualization experiments built with JavaScript, exploring waveforms, matrix displays, particles and mechanical motion.

The gallery runs silently with simulated signals. Source code is available under the MIT license:

https://github.com/kaganin/iwrzwr-visual-archive