Desktop vocabulary learner written in Go with a Fyne GUI.
It keeps a large dictionary out of RAM by streaming JSON, supports search and random practice words, and stores personal notes per word.
- Streaming dictionary load (memory-friendly for large word lists)
- Fast word search
- Random word practice
- Personal notes persisted to
user_meanings.json - Embedded default dictionary (
resources/data.json)
- Go 1.21+
- OS packages required by Fyne on your platform (Linux: OpenGL / X11 or Wayland deps)
go mod download
go run .Optional custom dictionary file:
go run . /path/to/dictionary.jsonBuild:
go build -o fivebin .| File | Role |
|---|---|
main.go |
App bootstrap, dictionary path resolution |
dictionary.go |
Streaming dictionary access |
gui.go |
Fyne UI |
user_meanings.go |
Personal notes storage |
resources/data.json |
Embedded word list |
- Language: Go
- UI: Fyne v2
MIT