diff --git a/README.md b/README.md index 410c3b6..13db050 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,57 @@ # numnum -Numeral systems trainer in PWA app +тренер систем счисления -[Try it now](https://numnum.atroshin.ru) +**Demo:** [numnum.atroshin.ru](https://numnum.atroshin.ru) +## Features + +- 10 numeral systems: Binary, Ternary, Balanced Ternary, Octal, Hexadecimal, Braille Decimal, Roman, Church Slavonic, Greek, Hebrew +- Two game modes: multiple choice and manual entry (numpad) +- Configurable number range, time limit (1s–30s or no limit), question count (5–100) +- Installable PWA with full offline support (theory content cached) +- Dark/light theme · Bilingual (English / Русский) +- In-app theory reference for each system + +## Usage + +Serve the directory with any HTTP server: + +``` +python3 -m http.server 8080 +``` + +## Project structure + +``` +index.html — Entry point +app.js — Game logic and UI +numerals.js — Numeral system converters and choice generator +styles.css — Styles, dark/light theme +sw.js — Service worker (PWA caching) +manifest.json — PWA manifest +theory/ — Theory HTML files (10 systems × 2 languages) +``` + +## Supported systems + +| System | Type | Range | +|---|---|---| +| Binary | Positional | 1–32768 | +| Ternary | Positional | 1–27 | +| Balanced Ternary | Positional | –27–27 | +| Octal | Positional | 1–4096 | +| Hexadecimal | Positional | 1–65536 | +| Braille Decimal | Positional | 0–9999 | +| Roman | Non-positional | 1–3999 | +| Church Slavonic | Non-positional | 1–9999 | +| Greek | Non-positional | 1–9999 | +| Hebrew | Non-positional | 1–9999 | + +## Development + +Theory HTML files live in `theory/`. After editing them, bump the version in `sw.js` to refresh the cache on next install. + +## License + +MIT