codecrafters
Run and manage CodeCrafters challenges locally
TLDR
Run tests without committing changes
Run tests for all previous stages and the current stage without committing changes
Commit changes and submit, to move to the next stage
SYNOPSIS
codecrafters init
codecrafters test
codecrafters submit
codecrafters help
PARAMETERS
init
Initializes a new project for the specified course in the given directory. Downloads necessary files and sets up the environment.
test
Runs the test suite for the current project, providing detailed output and feedback.
submit
Submits your code to the CodeCrafters platform for grading.
help
Displays the help message with available commands and options.
DESCRIPTION
The codecrafters command is the primary interface for interacting with the CodeCrafters platform from your terminal. It facilitates the test-driven learning approach to systems programming by managing the challenges, executing tests, and providing feedback as you build foundational tools like Git, Docker, and Redis from scratch. It automates project setup, handles testing within a sandboxed environment, and uploads your code for automated grading.
The command allows you to start, test, and submit projects, providing immediate feedback on your progress. Using the command line interface makes the user experience more similar to the normal workflow of software development, especially on the backend side.
CAVEATS
The codecrafters command requires that you have an active CodeCrafters account and are logged in via the CLI. It may also require Docker to be installed and running for certain challenges.
WORKFLOW
The typical workflow involves first initializing a project using 'codecrafters init'. Then, you iteratively develop your solution and test it using 'codecrafters test'. Once you are satisfied with your solution, you submit it using 'codecrafters submit'. The platform then grades your solution automatically.
INSTALLATION
The codecrafters CLI is typically installed via a package manager (e.g., npm, pip) or by downloading a pre-built binary from the CodeCrafters website.