Privacy Policy
Last updated: June 12, 2026
1. Information We Collect
Typence (“we,” “our,” or “us”) is a typing practice application. We collect the following types of information:
Account Information
When you register, we collect your email address and username. Your password is hashed using bcrypt and never stored in plain text.
Typing & Game Data
As you practice, we record your typing performance data: words per minute (WPM), accuracy, XP earned, rank, session durations, streak data, character-by-character error rates, and game mode preferences.
Leaderboard Data
Your username, avatar, rank, total XP, and best WPM are displayed publicly on our leaderboard to enable competitive gameplay.
Browser Storage
We use your browser’s localStorage to store game preferences (theme, background mode, language, row layouts), session statistics, practice scores, race scores, cascade scores, SRS flashcard data, lesson progress, and custom content. This data remains on your device and is not transmitted to our servers unless you are logged in and actively syncing.
Cookies
We set a single functional cookie to remember your sidebar open/closed preference. This cookie expires after 30 days and is essential for UI functionality. See our Cookie Policy for details.
Email Communications
We send transactional emails for account verification and password reset only. We do not send marketing emails or newsletters. If SMTP is configured, emails are sent via the configured mail server.
Server Logs
Our server logs request method, path, status code, and duration for operational purposes. These logs do not contain personal data beyond what is inherent in HTTP requests.
2. How We Use Your Information
- To create and manage your account
- To track your typing progress and provide statistics
- To display your performance on public leaderboards
- To enable competitive features (race mode, cascade)
- To send email verification and password reset links
- To improve the application through aggregated analytics
3. Data Storage & Security
Account data and typing history are stored in a PostgreSQL database. Passwords are hashed with bcrypt. Authentication uses JWT tokens (HS256) with configurable expiration. All API endpoints employ rate limiting, CORS validation, and security headers (Content Security Policy, X-Frame-Options, X-Content-Type-Options).
Browser-local data (localStorage) is stored only on your device and is not accessible by our servers unless you have authenticated and choose to sync.
4. Data Sharing
We do not sell, rent, or share your personal data with third parties. We do not use third-party analytics, advertising, or tracking services in the application.
The only external service is the SMTP mail server used to send transactional emails, configured by the application administrator.
5. Data Retention
Your account data and typing history are retained until you delete your account. Session history on the server is limited to your most recent entries. Browser localStorage data persists until you clear your browser data or delete your account through the application.
6. Your Rights
Under applicable data protection laws (including GDPR and UU PDP No. 27/2022), you have the right to:
- Access your data via your profile page and API endpoints
- Rectify inaccurate data by updating your profile
- Delete your account and all associated data through the profile page
- Portability— request a copy of your data
- Withdraw consent at any time by deleting your account
To exercise these rights, contact us at the email address listed below or use the account deletion feature in your profile.
7. International Data Transfers
Our servers may be located outside your country of residence. By using Typence, you consent to the transfer of your data to our server location. We take appropriate safeguards to ensure your data is protected.
8. Children’s Privacy
Typence is not directed at children under the age of 13 (or 16 in the EU). We do not knowingly collect data from children. If you believe a child has provided us with personal data, please contact us immediately.
9. Changes to This Policy
We may update this Privacy Policy from time to time. Material changes will be communicated via the application or email. Continued use after changes constitutes acceptance.
10. Contact
For privacy-related inquiries, contact: noreply@typence.app