3 releases
new 0.1.4 | May 4, 2025 |
---|---|
0.1.2 |
|
0.1.1 | Apr 16, 2025 |
0.1.0 | Apr 16, 2025 |
#33 in Internationalization (i18n)
572 downloads per month
1.5MB
914 lines
kanash
Learn Kana in a terminal ! See https://kana.rezoleo.fr for a demo.
If your goal is to learn Japanese, you should take a look at Awesome-Japanese first.
[!NOTE] I'm pausing the ssh server part because I found a way to expose my TUI through http with
ttyd
Usage
From the binary in the release
chmod +x kanash
./kanash
[!NOTE] Only work on
x86_64
for now
With cargo
cargo install kanash
From docker image
To expose it as a website :
[!TIP] replace
./assets
with a directory containingjpg
andpng
docker run --rm -v ./assets:/home/assets -p "80:7681" blximages/kanash
To run it directly in your terminal
docker run --rm -v ./assets:/home/assets -it --entrypoint=/usr/bin/kanash blximages/kanash
TODO
- Rust build and test CI
- Use ttyd instead of gotty
- enum for color palette
- Add a parameter to the creation of a Kana Page (to know wheter to show hira kata or both, based on the selection in the Home Page)
- Refactor the
app.rs
using the Elm architecture- move japanese helper function to another file
- isolate the kana ui into one component
-
look at rust multithreading and tokio(Only usingevent::poll(Duration::from_millis(10)).unwrap()
inhandle_event
in order not to block the rendering) - Better UI for Kana
- tui-rain
- splash screen
- add a list of unused hiragana you don't want to show
- look at how to do test with ratatui
- take a look at ratzilla and wasm
- make a login page in order to display statistic to users
-
look at https://github.com/arthepsy/ssh-audit(see the first note)
Contribute
Advices and PRs are very much apreciated
Acknowledgments
Also take a look at all the dependencies in Cargo.toml
Dependencies
~18–30MB
~432K SLoC