✳ OMNIVIEWER

Obfuscate your JavaScript.

safe · secure · no server · works offline · fast

…or just start typing at the cursor.

Or try it now

↓ scroll for about & FAQ

Make JavaScript harder to skim — without uploading it

Drop a .js file and OmniViewer’s obfuscator minifies it and rewrites every text string as \x hex escapes, so the strings are no longer human-readable at a glance. Download the result. It all runs locally in a background worker — no upload, no server, no install.

This raises the effort to read your code; it is not real security — anyone determined can run the deobfuscator on the same page to undo it. Treat it as a deterrent, not encryption. The same drop also formats, compresses and deobfuscates the code, and opens stats, raw and hex views.

It’s one lens on OmniViewer’s JavaScript File Viewer — Format & Deobfuscate .js: drop a file and every tab is one click away. OmniViewer opens every file format, entirely in your browser — no upload, no server.

FAQ

Is my JavaScript file uploaded anywhere?

No. OmniViewer is a static page with no server-side processing: your .js file is read directly by your browser, and every tab — formatting, compressor, deobfuscator, obfuscator and stats — runs locally in a Web Worker. The file never leaves your computer.

How large a JavaScript file can I open?

The raw and hex views are windowed — they read only the bytes needed to paint the screen — so they open files of effectively unlimited size, up to 20 GB and beyond; the engine behind them has been tested in-browser with a 40 GB file. The formatted view and the whole-file tools (compressor, deobfuscator, obfuscator, stats) transform the file in memory, so on very large files they work on a bounded prefix and tell you when they do. The parseability check above the view is skipped past a size threshold for the same reason.

What is the difference between the compressor and the obfuscator?

The compressor shrinks a file by removing comments and unnecessary whitespace while preserving line breaks, so the code stays valid and behaves identically. The obfuscator goes further: it minifies and then rewrites every text string as \x hex escapes, so the strings are no longer human-readable — useful for making a file harder to skim, not for real security.

Can the deobfuscator reverse any minified code?

It beautifies minified or packed code — one statement per line, proper indentation, and string escapes decoded back to readable characters — which makes the vast majority of minified bundles readable again. It does not rename mangled variables back to their originals (that information is gone once a minifier discards it), and it works at the token level rather than fully parsing, so unusual code may need a second pass.

What does JavaScript have to do with an RFC or a standard?

JavaScript the language is standardised as ECMAScript in the ECMA-262 specification, maintained by the TC39 committee at Ecma International — not as an IETF RFC. Related data formats do have RFCs; JSON, for instance, is defined in RFC 8259. OmniViewer has a dedicated JSON viewer too, at fastjsonviewer.com.

How does JavaScript compare to TypeScript, Java and Rust?

JavaScript is dynamically typed and runs directly in browsers and in Node with no build step. TypeScript adds static types and compiles down to JavaScript. Java is statically typed and runs on the JVM, and is common in enterprise and Android software. Rust is statically typed, compiles to native code and manages memory through ownership without a garbage collector, which suits systems and performance-critical work. The page above has a side-by-side table.

Who created JavaScript, and when?

Brendan Eich created it at Netscape in 1995, reportedly in about ten days. It first shipped as LiveScript and was renamed JavaScript for marketing reasons; it is unrelated to Java. It was later standardised as ECMAScript, with the influential ES2015 (ES6) edition arriving in 2015 and a new edition every year since.