See the full list of Kata Seeds at github.com/kata-seeds
Tips for making a Kata Seed
Use the template
Copy kata-seed-template (don't fork it) and start from there. If there's something you think would benefit all Kata Seeds, open a pull request on the template.
Name your Kata Seed
If you're only using the core language and standard library, the name should be
language-seed. If you have to use/install a dependency to run the tests, the name should be
Write the code
The code in the seed should implement a simple way to greet a person, plus a test that it works. Implement that functionality in whatever way is most natural in your language. To get an idea of how small the implementation should be, you should read the implementations in a few seeds that use similar languages to yours.
Makefiles are executable documentation. Someone can run
make to run the tests, but also read the
Makefile and see how the tests are run and dependencies are installed.
Try your best to ensure someone can run
make and get the tests running. The less someone has to do to get up and running, the more time they can spend learning the language instead of the tooling.
Ideally, the behavior would be:
makethe first time: Dependencies are installed, and the tests run.
makesubsequent times: Dependencies are checked, and the tests run. The dependency checking should be near-instantaneous.
Commit exact dependency versions
The last thing someone wants to deal with when practicing a kata is bugs in dependencies. Pin the the dependencies to exact versions, or commit a dependency lock file if your language has one.