A simple playground to write, run, and test JavaScript snippets, with an in-UI console. Built for quick experiments, debugging, learning, testing ideas, and working with JavaScript without needing a full development environment. This tool is offline by design, providing a robust JavaScript playground directly within Chrome.
This idea came while I was preparing for a JavaScript interview.
There are plenty of online JavaScript playgrounds, but I found them surprisingly distracting—you open the browser to code, and the internet is right there to pull your attention elsewhere. Offline editors, on the other hand, often feel like full-blown IDEs when all I wanted was something simple.
So I built Offline JavaScript Playground: a focused JavaScript editor and runner that works entirely offline. No Node.js, no VS Code, no npm, no setup - just open it and start experimenting with JavaScript.
It’s intentionally lightweight and built with **pure JavaScript, without frameworks**.
The goal is simple: **open → write JavaScript → run → learn.** 🚀
Report
u said under 2mb zipped and no node server, chrome just runs the js. do snippets survive a browser restart or does it open empty every time
@niveditha_patluri1 Hi, That's a good question. Yup it survives the browser restart and full computer restart as well. Files live in chrome storage. However uninstall of extension will erase all the snippets. For that I have added export option as well. You can export the whole snippets in one go and import back as well. Nothing is lost. You can also individually download the snippets. Do give it a try yourself :) - https://chromewebstore.google.com/detail/jdgjodfmnklgkggkflehfkmmmjhgmdom?utm_source=item-share-cb
Report
Cool I like the idea of keeping experiments separate from the IDE... will you eventually expand into lightweight environment for more serious debugging too?
@harini_mukesh Thanks for the feedback. But I didn't get that. It is already lightweight. <2 MB zipped. Moreover, it uses chrome itself to run Javascript. No inbuilt node server. If you are talking about step by step debugger, then its a good recommendation. I can add that in updates.
Report
The storage answer is worth putting in the listing itself. If snippets sit in chrome.storage.sync you'll hit the per item cap on a long file and the write fails quietly, which is about the worst failure a scratchpad can have. chrome.storage.local dodges that but then nothing follows you to a second machine, so people should know which trade they bought. And nobody exports before they lose something, so a scheduled dump to Downloads is worth more than the export button.
@asadmalik901 The Extension storage limit is set to Unlimited.. so you have have 1000s of snippets lying around. Yeah one thing I did missed to mention the limit of sync storage.. It is 100KB. It means if you have extension installed in multiple system with same chrome profile, only 100kb of sata will sync. I can add a warning there, I don’t want it to complicate much!
Report
@sumanhansada 100KB of sync is maybe 40 snippets before it stops, and the person who hits it is the one running the extension on a work machine and a home machine, which is your best user. One line under the sync toggle is enough, no settings page needed. The bit I'd worry about is it looking like it synced when it didn't.
this hits a real gap - most "quick JS test" tools either need a tab open to some CDN-loaded playground or drag in a whole IDE just to check what Array.flat does. curious how you handle the case where someone wants to test a snippet against a library, like lodash or a fetch call - is it strictly vanilla JS/JSON with no way to pull in anything external, or can you paste a UMD bundle in and go from there? that boundary is probably the thing that decides whether this replaces a browser tab of scratch code for people, or just some of it.
@galdayan That’s a good suggestion. I can external library imports as well in the next version. Definitely my goal is not to replace the full IDE. It’s for quick fiddling around with JavaScript and JSON data. And lastly, also for focussed thinking and programming.
@sumanhansada that framing makes sense actually - a lot of "playgrounds" try to be everything and end up being nothing in particular. focussed thinking is a fine niche on its own, library imports would just widen who can use it without changing what it's for. will keep an eye on the next version.
Congrats on the launch, Suman! "Offline by design" is a smart reframe, everyone else treats offline as a limitation and you turned it into the whole point. Distraction is the real competitor here, not other editors.
@elene_tandashvili Thanks Elene for the feedback. That was the goal, something I needed to be distraction free, learn and practice Javascript. And guess what, as a bonus, it also has capabilities to format, read, fiddle around with large JSON files. No need to install an IDE, installing Node JS etc.
Offline JS Playground
u said under 2mb zipped and no node server, chrome just runs the js. do snippets survive a browser restart or does it open empty every time
Offline JS Playground
@niveditha_patluri1 Hi, That's a good question. Yup it survives the browser restart and full computer restart as well. Files live in chrome storage. However uninstall of extension will erase all the snippets. For that I have added export option as well. You can export the whole snippets in one go and import back as well. Nothing is lost. You can also individually download the snippets.
Do give it a try yourself :) - https://chromewebstore.google.com/detail/jdgjodfmnklgkggkflehfkmmmjhgmdom?utm_source=item-share-cb
Cool I like the idea of keeping experiments separate from the IDE... will you eventually expand into lightweight environment for more serious debugging too?
Offline JS Playground
@harini_mukesh Thanks for the feedback. But I didn't get that. It is already lightweight. <2 MB zipped. Moreover, it uses chrome itself to run Javascript. No inbuilt node server.
If you are talking about step by step debugger, then its a good recommendation. I can add that in updates.
The storage answer is worth putting in the listing itself. If snippets sit in chrome.storage.sync you'll hit the per item cap on a long file and the write fails quietly, which is about the worst failure a scratchpad can have. chrome.storage.local dodges that but then nothing follows you to a second machine, so people should know which trade they bought. And nobody exports before they lose something, so a scheduled dump to Downloads is worth more than the export button.
Offline JS Playground
@asadmalik901 The Extension storage limit is set to Unlimited.. so you have have 1000s of snippets lying around. Yeah one thing I did missed to mention the limit of sync storage.. It is 100KB. It means if you have extension installed in multiple system with same chrome profile, only 100kb of sata will sync. I can add a warning there, I don’t want it to complicate much!
@sumanhansada 100KB of sync is maybe 40 snippets before it stops, and the person who hits it is the one running the extension on a work machine and a home machine, which is your best user. One line under the sync toggle is enough, no settings page needed. The bit I'd worry about is it looking like it synced when it didn't.
Dial
this hits a real gap - most "quick JS test" tools either need a tab open to some CDN-loaded playground or drag in a whole IDE just to check what Array.flat does. curious how you handle the case where someone wants to test a snippet against a library, like lodash or a fetch call - is it strictly vanilla JS/JSON with no way to pull in anything external, or can you paste a UMD bundle in and go from there? that boundary is probably the thing that decides whether this replaces a browser tab of scratch code for people, or just some of it.
Offline JS Playground
@galdayan That’s a good suggestion. I can external library imports as well in the next version. Definitely my goal is not to replace the full IDE. It’s for quick fiddling around with JavaScript and JSON data. And lastly, also for focussed thinking and programming.
Dial
@sumanhansada that framing makes sense actually - a lot of "playgrounds" try to be everything and end up being nothing in particular. focussed thinking is a fine niche on its own, library imports would just widen who can use it without changing what it's for. will keep an eye on the next version.
STORI
Congrats on the launch, Suman! "Offline by design" is a smart reframe, everyone else treats offline as a limitation and you turned it into the whole point. Distraction is the real competitor here, not other editors.
Offline JS Playground
@elene_tandashvili Thanks Elene for the feedback. That was the goal, something I needed to be distraction free, learn and practice Javascript. And guess what, as a bonus, it also has capabilities to format, read, fiddle around with large JSON files. No need to install an IDE, installing Node JS etc.