cd /news/ai-products/i-built-an-ai-chinese-tutor-that-act… · home › topics › ai-products › article
[ARTICLE · art-147438] src=dev.to ↗ pub= topic=ai-products verified=true sentiment=↑ positive

I Built an AI Chinese Tutor That Actually Knows the HSK Syllabus

A developer built Be Chinese, a free AI Mandarin tutoring platform that teaches specifically toward the HSK proficiency exam levels 1-6, combining level-matched AI conversation practice with tap-to-analyze sentence breakdowns, real-time grammar correction, and daily study plans. The app runs entirely on Cloudflare Workers with a D1 database via the OpenNext adapter, routes model calls through OpenRouter so the LLM is configuration rather than code, and offers a free 25-question level test plus CSV exports of HSK vocabulary and grammar data.

by read5 min views2 publishedOct 8, 2026

Most AI chat tools are terrible language tutors.

Ask a generic chatbot to practice Chinese with you and you get walls of text at a difficulty level that has nothing to do with your actual ability. It corrects you politely but vaguely, it invents vocabulary that will never appear on an exam, and it has no memory of what you got wrong last Tuesday.

That gap is what Be Chinese was built to close. It is a free AI Chinese learning platform that teaches toward a specific target: the HSK (汉语水平考试), the standard Mandarin proficiency exam, from level 1 through level 6.

Here is how I designed and shipped it.

The language-learning market is saturated with AI chat wrappers. You type, it replies, you leave. The problem is that conversation practice without a syllabus is just noise — you practice random sentences and hope they transfer to the exam.

Be Chinese inverts the order:

That loop — learn, review, then produce — is the whole product. Everything else supports it.

AI conversation practice with sentence analysis. Chat with an AI tutor at your HSK level. The interesting part is the breakdown panel: any sentence the AI says can be tapped to get a word-by-word analysis with pinyin, part of speech, meaning, and the grammar pattern in play. This is the feature that turns "chatting with a bot" into actual study.

Real-time correction. The AI corrects your grammar and word choice and suggests more natural phrasing. It does not just flag errors; it explains them.

Daily study plans. One focused lesson a day. New words, review, then a level-matched conversation. Fifteen minutes is enough.

Free level test. Twenty-five questions, five minutes, no signup. It places you at an HSK 1-6 level and CEFR level and recommends where to start. This is the lowest-friction entry point into the product, and it does most of the acquisition work.

HSK grammar guide. 100+ grammar points organized by level, with sentence patterns, worked examples with pinyin, multilingual explanations, and common mistakes.

Pronunciation and dictation. Native audio for every word and sentence, plus a dictation mode for listening practice.

CSV downloads. The HSK vocabulary and grammar data can be exported as CSV at any time. Free resources should stay free even if you never subscribe.

Four languages. English, Chinese, Japanese, and Korean, fully localized — not machine-translated UI strings.

I wanted fast iteration on the front end, cheap infinite-ish scaling on the back end, and first-class internationalization.

Next.js 15 (App Router) + React 19
TypeScript + Tailwind CSS v4
Drizzle ORM + Cloudflare D1
Cloudflare Workers via OpenNext
better-auth (email + OAuth)
AI SDK v5 through OpenRouter
next-intl for i18n
Stripe / PayPal / Creem for billing

The entire app runs on Cloudflare Workers with a D1 database. A language-learning app is read-heavy — vocabulary lists, grammar guides, blog content are all public reads that rarely change — while the write path is small: chat messages, study progress, check-ins.

D1 handles that comfortably. The real win was infrastructure cost: the free tier carries the free users, and the app does not need a big always-on server to stay alive overnight.

Running Next.js on Workers is done through the OpenNext adapter. One detail worth calling out: the Worker HTML cache uses a versioned namespace that is only bumped on releases which change the HTML/asset contract. Routine deploys keep the cache namespace stable, so shipping a fix does not silently invalidate every cached page.

Chat quality for language learning is not uniform across providers, and I wanted to be able to switch without rewriting business logic. Routing through OpenRouter means the model is configuration, not code. The provider layer also supports Gemini, DeepSeek, and image/video generation adapters for other features.

The HSK vocabulary and grammar content lives as static structured data in the repo. That was a deliberate choice: the syllabus is stable and versioned, the content needs to be diffable in git, and shipping it with the build means vocabulary pages are fast and always available. The database stores only what is genuinely per-user — progress, streaks, saved words, chat history.

Free must be genuinely useful. New users get 60 free conversation credits, full access to all vocabulary lists, the grammar guide, and the level test, with no credit card. The subscription unlocks unlimited AI conversations and removes message caps. If the free tier is a frustrating demo, nobody converts.

One obvious next action per screen. The level test is the primary call to action everywhere. Once you know your level, everything else — which words to learn, which grammar to study, how hard the AI talks — follows from it. Leading with features instead of "find your level" would have added friction at exactly the wrong moment.

Sentence analysis over chat history. Chats scroll away. A breakdown panel that explains one sentence is worth more than fifty messages you cannot revisit. Learners come back to parse the sentence they did not understand, not to reread yesterday's small talk.

The site is live at be-chinese.com, fully localized in four languages, with the free tier open to everyone. Paid plans start at $9.90/month, $19.90/quarter, or $49.90/year — all unlimited AI conversation while active, and cancel anytime.

The honest gap is content depth. The syllabus coverage is broad; the individual lesson experience is not yet as good as a dedicated human course. That is the next thing I am working on — turning the vocabulary lists and grammar guide into properly guided lesson paths, not just reference material.

If you are learning Chinese, I would genuinely like to hear what breaks for you. The support inbox is real, and the roadmap is short enough that feedback still changes it.

Try it: be-chinese.com

── more in #ai-products 4 stories · sorted by recency
── more on @be chinese 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
→ Live at https://your-agent.zahid.host ✓
Get free account → Pricing
from €0/mo · no card required
LIVE [news/i-built-an-ai-chines…] indexed:0 read:5min 2026-10-08 · —