Contributing to Konduct
Thank you for your interest in contributing to Konduct!
Development Setup
-
Fork and clone
-
Build
-
Run tests
Documentation
Building Documentation
Generate API docs (Dokka):
Serve MkDocs locally:
Then open http://127.0.0.1:8000
Build static site:
Documentation Structure
- MkDocs (
docs/) - User guides, tutorials, examples - Dokka (
docs/api/) - Generated API reference
Writing Documentation
- User Guides - Add
.mdfiles todocs/guide/ - Examples - Add to
docs/examples/ - API Docs - Use KDoc comments in source code
Example KDoc:
/**
* Filters documents using the $match stage.
*
* @param block DSL block for building match conditions
* @return A new pipeline with the match stage added
*
* Example:
* ```kotlin
* .match {
* Product::status eq "active"
* Product::price gte 100
* }
* ```
*/
fun match(block: MatchBuilder<T>.() -> Unit): AggregationPipeline<T>
Pull Request Process
- Create a feature branch
- Make your changes
- Add tests
- Update documentation
- Run
./gradlew build - Submit PR
Questions?
Open an issue or start a discussion on GitHub!