| Crates.io | dojo-cli |
| lib.rs | dojo-cli |
| version | 0.1.0-beta.2 |
| created_at | 2025-09-18 07:43:37.406455+00 |
| updated_at | 2025-09-22 06:06:22.048931+00 |
| description | Companion CLI app for Bitcoin Dojo |
| homepage | https://bitcoindojo.dev |
| repository | https://github.com/Bitcoin-Dojo |
| max_upload_size | |
| id | 1844358 |
| size | 109,236 |
A companion command-line interface for the Bitcoin Dojo learning platform that helps you download exercise scaffolds, submit solutions, and manage your Bitcoin development environment.
Bitcoin Dojo is a platform for learning Bitcoin development through hands-on coding challenges. This CLI tool streamlines your workflow by providing easy access to exercises, automated submission, and environment management.
cargo install dojo-cli --version 0.1.0-beta.2
Initialize the CLI with your API token:
dojo-cli init
You'll be prompted to enter your API token and workspace directory.
Download an exercise scaffold:
dojo-cli download --exercise 1.1-hashing-randomness
Submit your solution:
dojo-cli submit --exercise 1.1-hashing-randomness
initInitialize the Bitcoin Dojo CLI configuration.
dojo-cli init [--token API_TOKEN]
--token, -t: Your Bitcoin Dojo API token (optional, will be prompted if not provided)This command sets up your workspace directory and API credentials. The API token is encrypted and stored securely in your home directory.
downloadDownload exercise scaffolds and resources from Bitcoin Dojo.
dojo-cli download --exercise EXERCISE_NAME
--exercise, -e: Name of the exercise to download (required)Downloads the exercise scaffold, including:
stubs.rs)README.md)Files are organized in your workspace directory under scaffold/{exercise-name}/ and tests/.
submitSubmit your completed exercise solution.
dojo-cli submit --exercise EXERCISE_NAME
--exercise, -e: Name of the exercise to submit (required)Creates a zip archive of your solution (excluding build artifacts, git files, etc.) and uploads it to Bitcoin Dojo for evaluation.
configInteractively update your CLI configuration.
dojo-cli config
Allows you to modify your workspace directory and API token through an interactive prompt.
envDisplay current environment information.
dojo-cli env
Shows:
update-curriculumUpdate to the latest curriculum version.
dojo-cli update-curriculum [--version VERSION]
--version, -v: Specific version to upgrade to (optional)Updates your local curriculum version to match the latest available on the platform.
The CLI automatically detects your environment based on the build type:
cargo build) → Development environmentcargo build --release) → Production environmentThis ensures you're always connecting to the correct API endpoints.
Configuration is stored in ~/.dojo-cli/config.toml and includes:
After downloading an exercise, your workspace will be organized as follows:
workspace/
├── scaffold/
│ └── exercise-name/
│ ├── stubs.rs # Starter code
│ └── README.md # Exercise instructions
├── bitcoin_dojo/ # Your working directory
│ ├── src/
│ ├── tests/ # Test files
│ └── Cargo.toml
└── ...
"No configuration found"
dojo-cli init to set up your configuration"Authorization Error: Access forbidden"
dojo-cli config to update your token"Bitcoin Dojo repository not found"
dojo-cli submit --exercise EXERCISE_NAMEEnvironment mismatch
dojo-cli env to verify current environmentdojo-cli --help for general helpdojo-cli <command> --help for command-specific helpMIT License - see LICENSE.txt for details.
Contributions are welcome! Please see the main project repository for contribution guidelines.