Frequently Asked Questions

Detailed answers about how JavaScript.ac works, what we do with your data, and how we keep the lights on.

About the Site & Tools

What exactly is JavaScript.ac?

JavaScript.ac is a free, browser-based platform for learning JavaScript. It bundles a Monaco-powered code editor, a curated set of programming problems, step-by-step tutorials, an in-browser JavaScript reference, a Go reference for cross-trainers, an interview-prep track, learning roadmaps, a printable cheatsheet, and an opinionated news feed about the JavaScript ecosystem. Everything runs in your browser — there is no server-side execution.

Is JavaScript.ac free? Is there a paid tier?

It is free, and there is no paid tier. We are funded by display advertising. We have no plans to introduce a "Pro" plan, paywalls, or content gates. The goal is to keep the educational core free indefinitely.

Do I need to sign up?

No. You can read every page, run every code sample, and attempt every problem without an account. If we ever offer login (for cross-device progress sync), it will be optional and additive — never a wall in front of content.

What devices and browsers are supported?

Any modern desktop browser (Chrome 90+, Firefox 90+, Safari 15+, Edge 90+). The site works on phones and tablets, but the code editor is most comfortable on a real keyboard. We test on iOS Safari, Android Chrome, macOS Safari, and modern Linux browsers.

Does it work offline?

Static pages cache well after the first load, so a previously visited tutorial or problem will render with a flaky connection. The editor itself does not require the network to run code, since execution happens in your browser. We do not currently ship a service worker that pre-caches the entire site for true offline use.

Do you have a mobile app?

No. We rely on the browser as the cross-platform runtime. Adding the site to your home screen on iOS or Android gives you something close to an app.

How do I reset my progress?

Open your browser's settings, find "site data" or "storage" for javascript.ac, and clear it. That removes all saved progress and editor contents — they are stored exclusively in your browser's localStorage.

Why is the playground so fast?

Because there is no round-trip. Your browser already contains a world-class JavaScript engine. We hand it a string, you see the output. No container spin-up, no remote execution, no rate limiting.

What languages does the playground support?

JavaScript today, with TypeScript on the roadmap. We are intentional about scope — adding a language costs more than just shipping a new editor mode; it means writing problems, tutorials, and references that match the same quality bar.

Can I share a code sample I wrote in the playground?

Manually, yes — copy the code and paste it elsewhere. We do not currently offer a "share URL" feature because that would require uploading code to our servers, which we deliberately do not do.

Advertising & Monetisation

Why are there ads?

Ads pay the entire bill: hosting, the writing of new tutorials, the curation of problems, translation review, and the small team behind the site. Without them, the free version of the site does not exist. We try to keep ad density well below the industry average.

Can I turn off personalised ads?

Yes. The first time you visit from the EU, the UK, or Korea you will see a Google-managed consent banner where you can refuse personalised advertising. You can also visit https://adssettings.google.com at any time to change those preferences globally for any Google-served ad.

Do you take sponsorships?

Occasionally, yes — but only when the sponsor's offer fits the audience and we can mark the sponsorship clearly. We will never disguise sponsored content as a regular tutorial or problem.

Privacy, Data & Security

Do you record my code?

No. Your code stays in your browser. The text you type into the editor never reaches our servers. The same is true for your problem-solving progress and any editor preferences.

What data do you collect, then?

Standard, aggregated analytics: page URL, referrer, country derived from a truncated IP, browser family, OS, screen size, language preference, and ad-related events. IP addresses are anonymised before storage. Full details are in our Privacy Policy.

Do you sell or share my personal data?

No. We do not sell, rent, or share personal data. We share the minimum needed with our infrastructure providers (Cloudflare, Google for analytics and ads) under written agreements that limit use to operating the service.

How do I delete my data?

For data in your browser, clear the site's storage as described above. For e-mail correspondence and any future account-related data, write to contact@javascript.ac with [LEGAL] in the subject and we will process the deletion within the timeframes required by GDPR (usually 30 days) or PIPA (usually 10 days).

Where are your servers located?

We deploy to Cloudflare Pages, which serves traffic from a global edge network. Static assets and request handling happen at the edge node closest to you. We do not maintain a single "main" server location for user-facing traffic.

Technical / Stack

What is the site built with?

SvelteKit and TypeScript on the front, Tailwind CSS for styling, the Monaco editor for the code surface, and Cloudflare Pages plus Workers for hosting and any edge logic. There is no traditional backend; we lean on the browser and the edge.

Is the source code open?

Parts of it are public on GitHub (we credit the team there). The full site code is not currently open source, primarily because some content (problem test cases) would lose pedagogical value if leaked verbatim.

How do you run JavaScript without a server?

We use a sandboxed `new Function()` evaluation in a worker-like context, with a custom `console` shim that captures output and pipes it to the UI. Heavy operations are time-boxed and aborted if they exceed a threshold.

How do you handle accessibility?

We test with keyboard-only navigation, screen-reader (VoiceOver and NVDA) walkthroughs of the main flows, and aim for WCAG 2.2 AA conformance on long-form content. Reach out via [BUG] if you find an accessibility regression.

Is the site multilingual end-to-end?

Yes. UI strings, problems, tutorials, references, and legal pages are all available in English, Korean, Japanese, and Chinese. Translations are reviewed by native speakers, not produced by a one-shot machine pass.

Legal & Responsibility

Who is responsible for the site?

JavaScript.ac is operated by SDK Co., Ltd., a Korean software company (business registration 871-81-03242). Operator details and contact info are on our About and Contact pages.

Can I copy your tutorials onto my own blog?

No, not without written permission. Tutorials, problems, and reference text are copyrighted. You are welcome to link to them and to quote short passages with attribution. For larger reuse (e.g., translation, classroom packets) e-mail us with [PARTNERSHIP] and we will work something out.

Can I use the site to teach a class?

Absolutely. Linking to problems, tutorials, and the playground from your syllabus is encouraged. We just ask that you do not screenshot the entire page and re-host it as your own.