What we store
codeforge_tokenEssentialFirst-partyKeeps you signed in. Stored in localStorage as a signed JWT.
Kept: Until logout
codeforge_guest_progress / codeforge_guest_step_progressFunctionalFirst-partyLets you complete lessons before signing up by saving progress in localStorage. Synced to your account on signup.
Kept: Until signup or browser clear
codeforge_guest_fingerprintFunctionalFirst-partyA random per-browser identifier (derived once from browser characteristics) so your guest code runs can be routed back to your tab. Not used for cross-site tracking.
Kept: Until browser clear
cf_project_lang_<slug> / cf_unlocked_<slug> / cf_brief_wFunctionalFirst-partyUI preferences: your chosen language per project course, lessons you chose to jump ahead into, and the editor split width.
Kept: Persistent
_ga / _ga_*FunctionalThird-party (Google)Google Analytics — anonymous page-view statistics that tell us which pages are used. Set only in production.
Kept: Up to 2 years
What we don’t use
We don’t use Facebook Pixel, advertising trackers, or cross-site identification. The only third-party service is Google Analytics (usage statistics); everything else is first-party and stays on your device.
How to clear them
You can clear all entries via your browser’s site-data settings, or by signing out (which clears codeforge_token immediately). Clearing essential entries signs you out and may reset preferences.