Story English

v1.0.0

Learn English through serialized fiction — follow a story you actually want to read, with vocabulary embedded naturally in each episode. Mystery, city life,...

0· 49· 1 versions· 0 current· 0 all-time· Updated 16h ago· MIT-0

Story English

Learn English by following a story you actually want to read. Each episode is real fiction — mystery, city life, sci-fi — with vocabulary woven naturally into the narrative. No drills. No textbook sentences. Just a story that keeps you coming back for the next episode.

How it works

Each episode:

  • 350–500 words of genuine fiction that advances the plot
  • 5–8 vocabulary words highlighted and explained in context
  • 1 grammar spotlight — one pattern, shown naturally in the story
  • 3 comprehension questions at the end
  • Cliffhanger ending so you actually want to read Episode 2

Series

🕵️ The Shanghai Files — Noir mystery. Rookie detective. Rain-soaked streets. Cases that don't add up. 🏙️ City of Dreamers — Four friends navigating jobs, love, and adulthood in a new city. 🚀 Starfall — Year 2157. A research vessel. The wrong destination. Six crew who must figure it out.

Levels

LevelForVocabulary
A2BeginnersSimple sentences, 5 words/episode
B1IntermediateIdioms welcome, 6 words/episode
B2Upper-intermediateAdvanced vocab, 8 words/episode

Commands

# Browse series and how to start
node scripts/series.js

# Start Episode 1 (default: Shanghai, B1 level)
node scripts/episode.js

# Choose series and level
node scripts/episode.js --series shanghai --level B1 --chapter 1
node scripts/episode.js --series city --level A2 --chapter 1
node scripts/episode.js --series starfall --level B2 --chapter 1

# Continue your story (paste state from previous episode)
node scripts/episode.js --series shanghai --chapter 3 --state '{"last_scene":"..."}'

# Review vocabulary (flashcard mode)
node scripts/vocab.js --mode review --words "suspicious,eerie,witness"

# Vocabulary quiz
node scripts/vocab.js --mode quiz

# English output
node scripts/episode.js --lang en

Version tags

latestvk97fjggp1pypn4yej62y81rs6h85qhtm