Skip to main content
CodePlanet Docs

Data Privacy

Your data, your rights

CodePlanet respects your privacy and gives you control over your personal data. This document explains what data we collect, how it's used, and your rights.

What Data We Collect

Account Information

When you create an account, we store:

  • Email address — For authentication and notifications
  • Display name — Shown on your profile and leaderboards
  • Username — Your unique identifier for public profiles
  • Avatar — Profile image (optional)
  • OAuth tokens — For Google/GitHub/Discord login (stored securely by Supabase)

Learning Data

As you use the platform, we track:

  • Problem submissions — Your code, language, pass/fail status, runtime
  • Course progress — Lessons completed, time spent
  • Streak data — Daily activity for streak tracking
  • XP and achievements — Gamification progress
  • Notes — Content you save in the Notes feature

Platform Usage

  • Page views — Which features you use (anonymized analytics)
  • Code execution — Language, execution time, error types (no code content stored beyond submissions)
  • Search queries — To improve search relevance (anonymized)

What We Don't Collect

  • Payment card details — Handled entirely by Razorpay; we never see your card number
  • Browsing history — We don't track your activity outside CodePlanet
  • Keystrokes — We don't monitor real-time typing; only submitted code is stored
  • Location — No GPS or precise location tracking

How Data Is Used

DataPurpose
EmailAuthentication, password reset, account notifications
SubmissionsDisplaying your history, calculating statistics, generating insights
Course progressTracking completion, scheduling spaced repetition reviews
XP/StreaksLeaderboards, profile stats, gamification
Usage analyticsImproving platform features and performance

Your Rights

View Your Data

You can view all your data through:

  • Profile page — Your public-facing information
  • Settings — Account details, connected integrations
  • Dashboard — Statistics, activity history, submission history

Export Your Data

You can export your data:

  • Submissions: Available via the API (GET /api/v1/activity)
  • Profile: Available via the API (GET /api/settings/profile)
  • Progress: Viewable on your dashboard

Delete Your Data

To delete your account and all associated data:

  1. Go to Settings → Account → Delete Account
  2. Confirm the deletion
  3. All personal data will be permanently removed within 30 days

What gets deleted:

  • Account information
  • All submissions and code
  • Learning progress and notes
  • XP, badges, and achievements
  • Profile and avatar

What is retained (anonymized):

  • Aggregate statistics (e.g., total platform problems solved — no user identity)
  • Reviews you submitted (if marked anonymous)

Update Your Data

Update your information anytime through:

  • Settings → Profile — Name, username, bio, social links
  • Settings → Account — Email, password
  • Settings → Privacy — Control profile visibility

Profile Visibility

You control who can see your profile:

SettingEffect
PublicAnyone can view your profile at /u/yourusername
PrivateOnly you can see your profile; public URL returns 404

Change this in Settings → Privacy → Profile Visibility.

Even with a public profile, the following are always private:

  • Email address
  • Payment information
  • Private notes
  • Session data

Data Security

Encryption

  • All data is transmitted over HTTPS (TLS 1.3)
  • Passwords are hashed using bcrypt (via Supabase Auth)
  • Session tokens are stored in httpOnly, secure cookies
  • Database connections use SSL

Access Controls

  • Row Level Security (RLS) is enforced on all database tables
  • API endpoints verify session authentication before returning private data
  • Admin access is restricted to explicitly allowed accounts

Infrastructure

  • Database: Supabase (PostgreSQL on AWS)
  • Hosting: Vercel (edge network)
  • No data is sold or shared with third parties for advertising

Cookies

CodePlanet uses the following cookies:

CookiePurposeDuration
sb-access-tokenAuthentication sessionSession
sb-refresh-tokenToken refresh7 days
cookie-consentYour cookie preferences1 year
themeLight/dark mode preference1 year

No third-party tracking cookies are used.

Contact

For privacy-related questions or data requests:

On this page