Inspiration
We were intrigued about TikTok's internal DI management tool and wanted to learn about and experiment with it.
What it does
Knit Grass is an Intellij IDE Plugin that helps visualise dependencies in your code.
Features:
- Gutter Icons and Inline Warnings
- Circular Dependency Detection
How we built it
We built the project with Kotlin, using an Intellij Plugin Template as the skeleton and developing on it. We also used Kotline Program Structure Interface to identify Knit annotations and detect dependency relationships between classes.
Challenges we ran into
Unfamiliarity with Knit and developing an IDE Plugin
Accomplishments that we're proud of
Creating a working IDE Plugin despite being completely new to the concept
What we learned
More about dependency injection as well as static analysis
What's next for Knit Grass
Dependency Graph Visualization
Visualise the dependency graph of Providers and Injections in the project.
Allow users to interact with the graph to explore dependencies and identify potential issues.
Refactoring Support
Automatic refactoring for Providers and Injections when Providers are renamed or updated.
Ensure that users will be prompted to remove all affected Injections when Providers are deleted.
Other refactoring features to resolve common errors related to Providers and Injections (e.g. injecting a private provider in a different class).
Built With
- github
- intellij-idea
- kotlin

Log in or sign up for Devpost to join the conversation.