A monorepo shipping three IntelliJ plugins that automatically generate documentation comments for Kotlin, Dart, and Rust. All three share a common NLP engine that builds natural, readable descriptions from your code — not boilerplate.
| Plugin | Language | Doc Style | Status |
|---|---|---|---|
| KDoc-er | Kotlin | /** ... */ KDoc |
|
| DartDoc-er | Dart | /// DartDoc |
Coming soon |
| RustDoc-er | Rust | /// RustDoc |
Coming soon |
All three plugins are powered by a shared engine module providing:
- NLP-aware descriptions — verb maps, word splitting, and pluralisation produce natural sentences (
getUserById-> "Returns the user by id") instead of generic placeholders. - Non-destructive merge — regenerating never overwrites your hand-written documentation. Three policies: Merge (default), Keep, Replace.
- Template engine — customise every line of generated output with
{placeholder}tokens. - Project-level YAML config — override settings per project via
.kdocer.yaml,.dartdocer.yaml, or.rustdocer.yaml.
Each plugin adds its own language-specific generators, framework/crate detection, async analysis, and an independent settings page under Tools.
2026.1.1 — targets IntelliJ 2025.1+ (build 251, open-ended).
engine/ Shared NLP, template, merge, and style modules
kdocer/ Kotlin KDoc generator plugin
dartdocer/ Dart DartDoc generator plugin
rustdocer/ Rust RustDoc generator plugin
# Build all plugins (distributable ZIPs)
./gradlew buildAllPlugins
# Build a single plugin
./gradlew :kdocer:buildPlugin
./gradlew :dartdocer:buildPlugin
./gradlew :rustdocer:buildPlugin
# Run sandboxed IDE with a plugin loaded
./gradlew runKdocer
./gradlew runDartdocer
./gradlew runRustdocer
# Run all tests
./gradlew testAll
# Verify plugin structure
./gradlew verifyAllPlugins- IntelliJ IDEA 2025.1 or later (any edition)
- KDoc-er: Kotlin plugin installed
- DartDoc-er: Dart plugin installed
- RustDoc-er: Rust plugin (com.jetbrains.rust) installed
Godwin Joseph
All contributions are welcome — whether it's a bug fix, a new feature, a typo correction, or even a comment improving code readability. No contribution is too small.
- Fork the repository
- Create your branch (
git checkout -b my-change) - Make your changes
- Run
./gradlew buildAllPluginsto make sure everything compiles - Open a pull request
If you find these plugins useful, consider supporting their development:
