Files
HanjaKanaMun/README.md
T
SansanandClaude Opus 5.5 9ee2eabe9a Add justfile, ols/odinfmt config, tests and Gitea workflows; drop odin.json
- justfile with build/run/check/test/release/package/fmt/clean recipes
- ols.json and odinfmt.json for neovim (ols)
- Tests for memory game rules and card animation; memory.deal and
  memory.select_card split out so logic is testable without a window
- Gitea workflows: build+test on main/develop, package and upload to the
  generic package registry on version branches
- Game changes to the executable's directory so packaged builds find assets

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 21:04:08 +02:00

1.2 KiB

HanjaKanaMun

Odin + raylib memory card game for learning Japanese, Korean and Thai scripts.

Development

Requires Odin (dev-2026-09) and just.

just run              # build and play (debug)
just check            # type-check with -vet
just test             # run tests
just package 1.0      # release build -> build/HanjaKanaMun_1.0_<os>_<arch>.tar.gz

Neovim

ols.json and odinfmt.json configure the ols language server and formatter. Install ols (e.g. :MasonInstall ols) and enable it with nvim-lspconfig: vim.lsp.enable('ols'). Formatting goes through ols (vim.lsp.buf.format()), or just fmt if odinfmt is on your PATH.

CI

  • .gitea/workflows/gitea-build.yaml: check, test and build on pushes and PRs to main and develop.
  • .gitea/workflows/gitea-release.yaml: on version branches like 1.0, packages the Linux build and uploads it to the Gitea generic package registry (HanjaKanaMun/<version>). Needs a TOKEN secret with package write access.

Credits

Font: M PLUS Rounded 1c, SIL Open Font License (assets/MPLUSRounded1c-OFL.txt).