Contributing
We welcome contributions to SketchLog! This document outlines the process for setting up your development environment and contributing to the project.
Development Setup
-
Clone the repository:
-
Install development dependencies: It is recommended to use a virtual environment.
-
Running the tests: We use
pytestfor running our comprehensive test suite.
Local Documentation Build
This project uses MkDocs with the Material theme for documentation.
To build and preview the documentation locally:
# Install mkdocs and the material theme
pip install mkdocs-material
# Start the live-reloading local server
mkdocs serve
http://127.0.0.1:8000/.
Code Guidelines
- Ensure your code passes all existing tests.
- If you're adding a new feature, include tests covering both the pure Python fallback and C++ implementations if applicable.
- Make sure
git diff --checkpasses cleanly (no trailing whitespaces). - Ensure type hints pass
mypy --strict.
Community
If you want to discuss ideas or need help, join us in Slack! Join SketchLog Slack