Denki helps learners create, import, organise, and review flashcards without an account or required cloud service. Its FSRS 4.5 scheduler adapts review intervals to recall performance, while study tools such as a scratchpad, progress insights, and a matching game keep different kinds of practice in one place.
The product name is simply Denki. It is a general-purpose learning tool for every subject, with no language or cultural affiliation.
- FSRS 4.5 scheduling with adjustable retention and review settings.
- Local-first storage through IndexedDB, with persistent-storage protection and offline-ready PWA support.
- Classes and decks for organising material across subjects.
- Standard and cloze cards with Markdown and syntax highlighting.
- Focused study sessions with progress checkpoints and review summaries.
- Built-in scratchpad for diagrams, equations, and working notes.
- Anki and CSV imports for bringing existing material across.
- Optional AI card generation using a provider and API key chosen by the learner.
- Progress insights including review history, streaks, and due-card statistics.
- Portable backups through JSON export and restore, with gentle weekly reminders.
Cards, decks, preferences, and review history are stored in the browser by default. Denki does not require an account, analytics tracker, or hosted database. Optional AI generation sends only the submitted source text to the provider selected by the learner.
Denki requires Node.js 22 or later.
git clone https://github.com/Dingding-leo/Denki.git
cd Denki
npm ci
npm run devOpen the local address printed by Vite.
For a containerised build:
docker compose up --buildnpm run lint
npm run test:run
npm run buildPushes to main run the same checks in GitHub Actions and publish the production build to GitHub Pages.
- React 19 and TypeScript
- Vite 8
- Zustand
- Dexie and IndexedDB
- React Router
- Vitest and Testing Library
Issues and focused pull requests are welcome. Before opening a pull request:
- Create a branch from
main. - Keep the change scoped and include tests where appropriate.
- Run the validation commands above.
- Explain the user-facing impact in the pull request.
Denki is available under the MIT License.
