https://github.com/welpo/ramu
master japanese numbers through random listening and reading drills
https://github.com/welpo/ramu
japanese-numbers japanese-study kanji language-learning language-learning-game vanilla-javascript webapp
Last synced: 2 months ago
JSON representation
master japanese numbers through random listening and reading drills
- Host: GitHub
- URL: https://github.com/welpo/ramu
- Owner: welpo
- License: gpl-3.0
- Created: 2024-10-29T23:30:39.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-12T17:49:31.000Z (over 1 year ago)
- Last Synced: 2025-01-12T18:35:36.409Z (over 1 year ago)
- Topics: japanese-numbers, japanese-study, kanji, language-learning, language-learning-game, vanilla-javascript, webapp
- Language: JavaScript
- Homepage: https://ramu.osc.garden
- Size: 1.64 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: COPYING
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
master japanese numbers through random listening and reading drills
japanese numbers can be confusing. sure, it takes a few minutes to learn to count from 1 to 10, in sequence. but try backwards! or randomly! or with numbers over 100 or 1,000. or with counters! you get the idea.
i built ラム to practice listening and reading japanese numbers in different formats (42 vs 四十二), of various magnitudes (from 0 or 零 to over 100,000,000 or 一億), and with common counters (つ、本、人…).
the name reflects its purpose: achieving RAM (random access memory) to numbers, as opposed to sequential memory (1, 2, 3…). ラム means ram 🐏, thus the logo.
i wrote about the motivation for building ラム and roadblocks i encountered in [this blog post](https://osc.garden/blog/ramu-japanese-numbers-practice-web-app/).
## demo
enable sound!
https://github.com/user-attachments/assets/a404d705-55c5-485d-8396-60ece0f685b3
[try it now〜](https://ramu.osc.garden)
## features
- improve your listening and reading skills
- practice with both arabic (123…) and japanese (一二三…) numerals
- configurable number ranges
- counter word practice (個、本、匹…)
- works offline as a progressive web app
- accessible: sematic html, aria roles, keyboard controls, and screen reader friendly for arabic numbers practice
- keyboard shortcuts:
- space or →: next/reveal
- esc: stop
- p: pause/resume
## requirements
ラム uses your device's text-to-speech engine to read the numbers out loud. make sure you have a japanese voice installed:
- [windows](https://support.microsoft.com/windows/appendix-a-supported-languages-and-voices-4486e345-7730-53da-fcfe-55cc64300f01#WindowsVersion=Windows_11): press `windows + ctrl + n` → narrator settings → add voices → manage voices → add voices
- [macos](https://support.apple.com/guide/mac-help/mchlp2290/mac): system settings → accessibility → spoken content → manage voices
- [ios](https://support.apple.com/111798): settings → accessibility → read & speak → voices
- android: settings → accessibility → text-to-speech
- gnu+linux: install `speech-speech-dispatcher-espeak-ng` or similar
## need help?
something not working? have an idea? let me know!
- questions or ideas → [start a discussion](https://github.com/welpo/ramu/discussions)
- found a bug? → [report it here](https://github.com/welpo/ramu/issues/new?&labels=bug&template=2_bug_report.yml)
- feature request? → [let me know](https://github.com/welpo/ramu/issues/new?&labels=feature&template=3_feature_request.yml)
## contributing
please do! i'd appreciate bug reports, improvements (however minor), suggestions…
ラム uses good ol' vanilla html, css, and javascript. to run locally:
1. clone the repository: `git clone https://github.com/welpo/ramu.git`
2. navigate to the app directory: `cd ramu/app`
3. start a local server: `python3 -m http.server`
4. visit `http://localhost:8000` in your browser
the important files are:
- `index.html`: basic structure
- `style.css`: styles
- `app.js`: main logic
- `test.js`: tests, mainly covering the number to kanji conversion. to run them visit the page with `?test` in the url. the results are printed to the console
## license
ラム is free software: you can redistribute it and/or modify it under the terms of the [GNU general public license as published by the free software foundation](./COPYING), either version 3 of the license, or (at your option) any later version.