Quokka.js is a rapid prototyping playground for JavaScript and TypeScript. It runs your code immediately as you type and displays various execution results in your code editor.

Why?

Need some isolated space for a small prototype?

Keep forgetting how a certain library function works, so just want to call it and inspect the output?

Want to experiment with a new language feature or a framework, to learn it or to teach it to others?

Yet hate to leave your nicely configured editor? To lose all the keyboard shortcuts, and the autocomplete, and the best color scheme for your eyes, and a few source code files you may need for the experiment?

This is where Quokka.js comes to rescue and provides a rapid prototyping playground in your editor, with access to your project's files, inline reporting, code coverage and rich output formatting.

Stop letting your awesome ideas die just because it was too hard to check them, start experimenting now.

Free as in beer

Quokka.js is brought to you by Wallaby.js team and is built on top of the same technology used in Wallaby.js Core. Whenever you are ready to take your experiment to the next level, to start turning it into a feature and writing some tests, and would also like the same live editing features for your unit tests and all files of your project, and a lot more, then definitely check out Wallaby.js.

We are making Quokka.js free for everyone. In future we are also going to introduce the commercial edition with some advanced features, but we will forever provide the community edition for free.

Hackable

Quokka.js supports user plugins that can provide hooks at various stages of the code execution process. Write your own awesome plugin and share it with others.

Editor and project context

While various online REPL solutions and standalone playgrounds can be great, they all have two major cons: they live outside of your code editor and outside of your project context.

Quokka.js allows to execute the code right in your editor, to avoid much context switching. You can import and execute files and modules from your project.

Right now Quokka.js is available for VS Code and Jetbrains IDEs. We are working on the support for other editors that are supported by Wallaby.js.

Zero configuration

You don't need to configure anything by default, just open a new quokka file and start experimenting. Reasonably good configuration is handled for you, so you can focus on writing code rather than on setting up a build process to just try a simple idea or learn a new language feature.

Fast, reliable and time tested

While working on Wallaby.js, our team is facing thousands of various scenarios and edge cases of compiling, bundling, pre-processing, source-mapping, instrumenting, isolating and running JavaScript code. Quokka.js is able to stand on the shoulders of its big brother and make the countless and ongoing man months of work available to you for free.

Quokka.js also runs the code instantly as you type, you don't even need to save the file.

Supports Babel, TypeScript, JSX, etc.

Quokka.js supports TypeScript and Babel out-of-box, with a plugin it can run anything that compiles to JavaScript and runs in node.js. Browser environment via jsdom is also supported, there are also various examples available.