A command-line interface tool for validating MoreThanCertified lesson tasks locally.
- Submit lesson tasks for validation
- Interactive progress tracking
Currently, the mtc-cli is only supported on macOS and Linux (including linux via Windows Subsystem for Linux).
curl -s https://app.morethancertified.com/install.sh | shgo install github.com/morethancertified/mtc-cliSubmit a lesson for validation:
mtc submit <lesson-token>To reset your progress for a lesson:
mtc submit <lesson-token> -rExample:
mtc submit cm4ppz694200blze51ts1234The project uses several development tools and commands:
This project uses just to manage commands. Please install it to use the commands below.
Reference to justfile commands:
just run- Run the application from sourcejust build- Build the binary to bin/mtc-clijust test- Run testsjust fmt- Format codejust clean- Clean build artifactsjust install- Install the binaryjust uninstall- Uninstall the binary
The CLI uses Viper for configuration management. By default, it creates a config file at:
$HOME/.config/mtc/config.json
You can override the config location using the --config flag.
cmd/- Command implementationsinternal/- Internal packagesmtcapi/- API client implementationwidgets/- TUI components
The project uses GoReleaser for building and distributing releases. Configuration can be found in:
MIT License - See LICENSE file for details.
- Clone the repository (
git clone https://github.com/morethancertified/mtc-cli) - Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Key dependencies include:
github.com/spf13/cobra- CLI frameworkgithub.com/spf13/viper- Configuration managementgithub.com/charmbracelet/bubbles- Terminal UI componentsgithub.com/go-resty/resty/v2- HTTP client
For a complete list of dependencies, see: go.mod