Skip to content

About

🐒 `rafiki` - Monkey C linter, formatter and coverage together with your best toolbox to work with Monkey C code

Topics

Resources

Stars

5 stars

Watchers

1 watching

Forks

Repository files navigation

monkey-c-rs

monkey-c-rs logo

Build status Docs status

Developer tools for Monkey C, the language used to build apps for Garmin devices. A formatter, a linter, a language server for your editor and test coverage, all in one command called rafiki.

Read the documentation to get started.

Install

cargo install --git https://github.com/bombsimon/monkey-c-rs rafiki --rev <commit>

Nothing is stable yet, so pin the version with --rev.

Usage

rafiki fmt                                # format the project
rafiki lint --fix                         # lint, applying the fixes that are safe
rafiki server                             # run the language server for your editor
rafiki coverage test -d fr965 -y key.der  # measure which functions the tests run

Settings go in a rafiki.toml, which the editor and the command line both read. See Configuration for what can be set.

Feedback

Bug reports and ideas are welcome. Please open an issue for anything you run into or would like to see.

Notes on AI

For transparency: this project is being built with assistance of AI. However, all implementations are suggested by me, discussed, and reviewed before being committed. The focus is still to build the best tools possible and know and understand 100% of the codebase. Although not every line of code is written by hand, the goal is to avoid slop.

Other projects

In addition to this project I'm also working on other projects to improve the developer experience for Garmin Connect IQ development.

License

This repository is licensed under the MIT License.

About

🐒 `rafiki` - Monkey C linter, formatter and coverage together with your best toolbox to work with Monkey C code

Topics

Resources

Stars

5 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages