Skip to content

Gradient

Gradient is a language learning Claude-powered app that transforms English text progressively into a target language through 7 levels of "gradient immersion".

Core trick

Rewrites source text across seven levels, shifting grammar before vocabulary, and annotates each term only on its first occurrence.

Tags

Description

Gradient is a language learning Claude-powered app that transforms English text progressively into a target language through 7 levels of "gradient immersion". Users read a story that gradually shifts from English to target language — grammar first, then vocabulary — so the target language's structure should become intuitive before new words appear. The reader interface features inline annotations with translations, pronunciation (IPA), and grammar notes in a synchronized side panel. Terms are explained only on first occurrence across the entire project. Additional tools include side-by-side comparison mode, contextual grammar chat (double-click any word), comprehension quizzes, text-to-speech, and spaced-repetition flashcards — all generated automatically from the reading content. Claude can answer any questions on grammar and vocabulary, and prepare personalized study sessions and quizzes.
zzappa/gradient_reading★ 00 forksJavaScriptMITCreated Feb 12, 2026 · last push Feb 13, 2026

README excerpt

# Gradient Reading

Gradient Reading is an app that transforms source text into a progressive 0-7 language-learning gradient.  
Readers can move level-by-level from source-heavy text to target-language text while keeping story continuity and inline vocabulary support.

## Highlights

- FastAPI backend + React/Vite frontend
- Async transformation jobs with progress polling
- Source and target language selection per project
- 0-7 graded output with inline annotations and footnotes
- Reader with notes, side-by-side compare mode, chat, quiz, and TTS
- Dictionary view across projects with direct context deep links
- Anki-style flashcard review with multiple card schemas
- Export to PDF, Markdown, and EPUB
- Assessment flow that updates a user's starting level per language

## Supported Languages

Language configs currently include:

- `en`, `es`, `fr`, `it`, `pt`, `de`, `pl`, `ru`, `ja`, `zh`, `ko`, `he`, `ar`

- Non-Latin targets are rendered in romanized text by default, with native script available in term metadata/hover details and a native-script toggle in advanced levels.

## Prerequisites

- Python 3.10+
- [uv](https://docs.astral.sh/uv/) (Python package manager)
- Node.js 18+
- npm
- Docker + Docker Compose (optional, for containerized run)
- An [Anthropic API key](https://console.anthropic.com/)
- WeasyPrint system dependencies (for PDF export)

Linux/WSL:

```bash
sudo apt-get update
sudo apt-get install -y libpango-1.0-0 libpangocairo-1.0-0 libgdk-pixbuf2.0-0 libffi-dev

Team