Privacy
Wenmang is a free Mandarin vocabulary and handwriting game. It exists to help you learn words and characters, and it collects only what it needs to do that. There is no advertising, no analytics, and no behavioural profile.
Without an account
You can use the whole app without signing in. Signed out, everything stays in your own browser's local storage and is never sent to this app's server:
wenmang:v1— which words you have seen and how well you know each one, which characters you can write and in which mode, how many rounds you finished on each day, and your display settingswenmang:outboxandwenmang:rounds— answers and finished rounds waiting to sync, if you later sign in
Answers are recorded from your very first round whether or not you ever sign in. That is what lets somebody who signs in later bring real history with them rather than only a snapshot — but until you do sign in, none of it leaves your browser.
Clearing your browser's site data removes all of it. Nothing is recoverable afterwards, because no copy was ever made.
Character stroke data comes from a third party
The writing pad needs the stroke order and shape of each character. That
data is not served from here — your browser fetches it, and the drawing
library, from the public CDN jsDelivr
(cdn.jsdelivr.net) as you practise.
This means jsDelivr receives a request from your browser, which necessarily reveals your IP address and which character you are about to practise. jsDelivr is operated independently of this project and has its own privacy policy. No account information, and nothing about your progress, is sent with those requests — a request for a character carries only the character.
This is the only third party your browser contacts while using the app, apart from Google if you choose to sign in.
Signing in with Google
Signing in is optional. Its only purpose is to let your progress follow you between devices.
Wenmang asks Google for two things: openid and
profile. It does not ask for, receive, or store your
email address. From your Google profile it keeps:
- the account identifier Google issues for this app
- your given name, used as the display name in the header
- the date you first signed in
What is stored once you have an account
- Word answers — for each question: the Chinese word, which deck and stage it came from, which direction it was asked in, whether you got it right, and when
- Character attempts — the character, whether you wrote it successfully, when, and which mode you were in: tracing, with the outline shown, or from a blank pad. The mode is kept because a character's progress depends on it, and replaying your history without it would credit tracing as though you had written from memory
- Progress — the current state of each word and each character, recalculated from those answers
- Rounds — how many questions a round asked, how many were right, when it started and ended, and the calendar date it counted toward, so the daily goal and streak work in your own time zone
- A sign-in session — a cookie named
wenmang_session, holding a signed token with your account identifier and display name. It isHttpOnly, so page scripts cannot read it, and it expires after 30 days
That cookie is the only one this site sets. There are no advertising, tracking, or analytics cookies, because there is no advertising, tracking, or analytics.
What is never collected
- Your email address
- Your IP address — this app stores no record of it
- Any behavioural or advertising profile
- Anything at all by this app's server, if you never sign in
Where it lives, and who can see it
The app and its database run on Cloudflare Workers and Cloudflare D1, in North America. Data is never sold, never shared, and never used for anything except showing you your own progress. It is accessible to the person who maintains this project, and to nobody else.
Deleting your data
Open Account in the header and choose Delete my account. Everything goes in that moment — answers, word progress, character progress, rounds, your streak, and the account record itself. There is no backup that survives it, and nothing to wait for.
You can also revoke this app's access to your Google account at any time from your Google account permissions, which stops any future sign-in. If you would rather ask a person, email hello@ryan-mapa.dev.
Changes
If this policy changes, the change will be visible in the project's public history at github.com/ryan-mapa/wenmang, along with the code that it describes.
Last updated 6 September 2026.