Help Center
Getting started
Choosing where to start
New accounts default to the main track (JavaScript, TypeScript, Python, Go, and Java). If you're specifically here for markup or databases, switch to HTML or SQL from the nav — each has its own curriculum and its own progress. See the FAQ for exactly how each one is graded.
Creating an account
Signing in with GitHub or Google is optional. It exists for one reason: syncing your XP and progress to a second device instead of starting over. If you never sign in, your progress lives only in your browser's local storage, which is entirely normal and fully supported.
XP, levels, and streaks
Every correct submission earns XP toward that language's level; higher-difficulty exercises are worth more. Your streak counts consecutive calendar days with at least one submission, right or wrong, in the main track, HTML, or SQL — practicing in the Sandbox doesn't count toward it, since the Sandbox isn't graded.
Subscription & billing
What's included in Supporter
A Supporter subscription unlocks Intermediate and Advanced exercises in every language and curriculum, the full Sandbox, and the ability to join the leaderboard. See Pricing for current rates and billing cycles.
Subscribing
Sign in, open Pricing, choose monthly or yearly, and complete checkout — handled entirely by Stripe in an embedded form on that page. Your plan unlocks immediately once checkout completes.
Managing or canceling your subscription
From your Profile page, "Manage subscription" opens Stripe's own billing portal, where you can update your payment method, switch billing cycle, or cancel — all self-service, no email required. Canceling keeps your access until the end of the billing period you already paid for.
Billing questions or issues
For anything the billing portal doesn't cover — a charge that looks wrong, a failed payment, or anything else — email support@soloscript.dev and we'll sort it out directly.
Account & data
Using SoloScript on more than one device
Sign in with the same GitHub or Google account on each device. Progress syncs automatically in the background; there's nothing to export or import by hand.
Offline access and local caching
SoloScript caches pages for offline use by default so exercises keep working on a flaky connection. You can turn this off from your Profile page if you'd rather it not cache anything locally.
Resetting your progress
There's no in-app "reset progress" button. If you never signed in, clearing your browser's site data for soloscript.dev clears it completely, since that's the only place it's stored. If you have an account, deleting it (below) removes the synced copy — your browser's local copy is separate and would need to be cleared the same way.
Deleting your account
From your Profile page, "Delete account" permanently removes your account and its synced progress immediately, with no waiting period. It also removes any leaderboard entry automatically. See the Privacy Policy for exactly what that does and doesn't cover.
Technical
Supported browsers
Any current version of Chrome, Firefox, Safari, or Edge works fully, with JavaScript enabled. There's no support for Internet Explorer or other browsers that have stopped receiving updates.
Why the Python Sandbox takes a moment to load
The Python Sandbox runs a real Python interpreter compiled to WebAssembly (Pyodide) directly in your browser, not on a server, which means a larger one-time download the first time you open it in a session, more noticeable on a slow connection. The JavaScript/TypeScript and HTML/CSS Sandboxes don't have this cost.
Something looks broken
Use the feedback button in the footer of any page to send a bug report directly — it's read by a person, not a queue. Including which page and browser you were using helps track it down faster.
Can't find what you're looking for? Email support@soloscript.dev — we read every message.