Note
This is a community-maintained fork of a MIT-licensed student project in the Effective Programming with Effects course in winter semester 2025/2026. Be warned that this is not an officially endorsed project, the code in this repository may be not idiomatic Effekt.
The original repository is https://github.com/christiNnnNNNn/Turn-based-Strategy-Name-in-Effect
Run the main file:
effekt src/main.effektThis (like many other Effekt commands) uses the JavaScript backend by default.
To use a different backend, add the --backend <backend> flag.
Run the tests:
effekt src/test.effektOpen the REPL:
effektBuild the project:
effekt --build src/main.effektThis builds the project into the out/ directory, creating a runnable file out/main.
To see all available options and backends, run:
effekt --helpWhile Nix installation is optional, it provides several benefits:
Update dependencies (also runs automatically in CI):
nix flake updateOpen a shell with all necessary dependencies:
nix developRun the main entry point:
nix runBuild the project (output in result/bin/):
nix build- see the
effekt-communityGitHub organization - This very project!
.github/workflows/*.yml: Contains the CI definitionssrc/: Contains the source codemain.effekt: Main entry pointtest.effekt: Entry point for testslib.effekt: Library code imported bymainandtest
flake.nix: Package configuration in a Nix flakeflake.lock: Auto-generated lockfile for dependenciesLICENSE: Project licenseREADME: This README file
Two GitHub Actions are set up:
-
flake-check:- Checks the
flake.nixfile, builds and tests the project - Runs on demand, on
main, and on PRs - To run custom commands, add a step using:
nix run -- <ARGS>to run the main entry point with the given argumentsnix develop -c '<bash command to run>'to run commands in the correct environment
- Checks the
-
update-flake-lock:- Updates package versions in
flake.nix - Runs on demand and weekly (Tuesdays at 00:00 UTC)
- Updates package versions in