Markdown Converter
Agent skill for markdown-converter
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Sign in to like and favorite skills
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
# Build for the Arduino MKR WiFi 1010 pio run # Build for a specific environment (prod, native, test, ci) pio run -e prod # Production build for Arduino MKR WiFi 1010 pio run -e native # Native build for development pio run -e test # Test build pio run -e ci # CI build with warnings as errors # Upload to Arduino MKR WiFi 1010 pio run -t upload # Clean build pio run -t clean
# Run all tests using Docker (recommended for consistent environment) ./scripts/pio-tools.sh test # Alternative: Run tests directly with PlatformIO pio test -e test # Run a specific test file pio test -e test -f test_thermometer
# Format code using clang-format ./scripts/pio-tools.sh format # Run static analysis using clang-tidy ./scripts/pio-tools.sh tidy # Run all checks (format, tidy, test) sequentially ./scripts/pio-tools.sh all
The project uses a Docker container for development tasks. The
pio-tools.sh script simplifies running commands:
# Build Docker image (if not already built) docker build -t distiller-tools . # Run a command in the Docker container docker run -v $(pwd):/project distiller-tools [command] # Where [command] can be: format, tidy, test, all
The Distiller is an automated distillation control system built for the Arduino MKR WiFi 1010. It follows a modular architecture with clear separation of concerns.
The system progresses through these states automatically:
The project uses Google Test and Google Mock for unit testing. Tests are designed to run on the development machine, not on the Arduino hardware.
The project includes a mock Arduino implementation (
mock_arduino.h and mock_arduino.cpp) that provides:
Tests use conditional compilation (#ifdef UNIT_TEST) to adapt production code for testing:
To run a specific test:
pio test -e test -f test_thermometer
The project uses the following Arduino libraries:
For testing, it uses: