dasheng
Read-aloud English tutor: streaming ASR transcribes, then Jev judges word by word whether each word was read correctly.
Overview
dasheng (ReadAloud) lets you read English aloud and immediately see which words were wrong. Words light up as you read, mistakes turn red, and a total score appears at the end. The README frames it as an open replacement for commercial reading-practice apps that can run entirely on your own GPU, with no upload and no per-minute billing; a 12 GB card is enough.
Two models split the work. Confucius4-R2T2, a streaming ASR model with a stable prefix that never revises committed text, does the listening. After alignment picks out the few mismatched words, Jev judges only text-level questions: is this the same word (noul), which error type is it (substitution, ASR spelling variant or self-correction, as a choice), and is the overall meaning preserved (a 1 to 5 score). Omissions, insertions, pace and the weighted total are computed locally. Pronunciation, stress and accent are explicitly not scored because Jev only reads text.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Is the recognised word the same word as in the original text? | yes · no |
| Choice | Which kind of error is this? | substitution · ASR spelling variant · self-correction |
| Score | Is what was heard still the same sentence in meaning? | 1 · 2 · 3 · 4 · 5 |
How it works
- Microphone audio streams to R2T2 for incremental transcription
- Align transcript to the source text and find mismatches
- Ask Jev closed questions only about mismatched words and overall meaning
- Compute omissions, pace and weighted total score locally
Strengths
- Only mismatched words go to the model, keeping calls few
- Can run fully on local hardware
- Mock ASR mode and offline unit tests
Caveats
- Does not score pronunciation or accent
- Self-hosting the ASR needs an NVIDIA GPU (no Mac)
- Jev accessed via a third-party gateway in the default config
Getting started
npm install, npm run dev (http://localhost:3000); set ASR_PROVIDER=mock to try without a microphone.At a glance
- Type
- Project
- Status
- prototype
- Language
- JavaScript
- Runtime
- Next.js web app
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Read English aloud and see which words were wrong: streaming speech recognition transcribes, Jev judges word by word, and both models can run on your own GPU.
MrJev/awesome-jev
Frequently asked questions
What does Jev judge?
Whether each mismatched word was actually read correctly, what type of error it is, and whether meaning was preserved.
Does it score pronunciation?
No, Jev only sees text; pronunciation would need a phoneme-level model.
Can I try it without hardware?
Yes, ASR_PROVIDER=mock simulates streaming words with planted errors.
Related projects
Claude Code and Codex skills plus a study course for building with Jev, including Jevaluate, which rates how well projects use Jev.
ProjectbetaConcept prototype for marking NZQA scripts from rubric criteria alone with one Jev call per script and confidence-based triage.
ProjectprototypeJavaScriptLearning lab for DeepEval with Jev as the judge: replayed evaluations, adjustable decision rules, release gates and drift alerts.
ProjectprototypePythonProof of concept that scores replayed support-call transcripts live against a weighted scorecard using OpenAI Decisions or Jev.
AppprototypeTypeScriptTypeSafe cookbook on why repeated Jev calls can differ, showing how an abstention rule raises repeat agreement.
ArticleproductionX walkthrough of the Jev API followed by three demos: voice-controlled browsing, AI memory and YouTube preprocessing.
Discussiondiscussion