Skip to content

Conversation

@ivanmilevtues
Copy link

This PR adds auto-generated high-level diagrams and component-level documentation using CodeBoarding, aimed at improving developer onboarding by making it easier to get to know the codebase and lowering the barrier to contribution.

We would love to hear what you think about the generated diagrams — feedback is more than welcome. If you are interested in using CodeBoarding for other projects or want to get in touch, feel free to reach out to me.

@petyaslavova
Copy link
Collaborator

Hi @ivanmilevtues, thank you for your contribution! We'll have a look at it shortly.

@ivanmilevtues
Copy link
Author

I guess it is probably easier to review the change if you see the diagrams rendered. You can do that here:
https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/redis-py/on_boarding.md

I got few questions, on how to keep these docs up-to-date and wanted to share that we are wroking on github action which will allow you to update it automatically depending on your liking (merge in main/release etc.)

@ivanmilevtues
Copy link
Author

Hey @petyaslavova,
We did major improvements on our diagram generation engine. I regerated the diagrams for this PR.
You can see how they render again here: https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/redis-py/on_boarding.md (it is the same link as before).

Happy to connect and discuss if this can be integrated, as we now also have a github action which will keep the diagrams up-to-date with new commits/PR's or other heuristic.

Let me know!

@ivanmilevtues
Copy link
Author

A quick update from my side, we are now open-source so you can check the code if that sparks any interest: https://github.com/CodeBoarding/CodeBoarding

@petyaslavova
Copy link
Collaborator

Hi @ivanmilevtues ,

Thank you very much for taking the time to put this together and for your effort in improving the documentation — we really appreciate your contribution and the thought you put into it.

After some internal discussion, we’ve decided to close this PR for now. While the overall idea is good and interesting, at the moment we don’t have the capacity to support additional documentation of this type.

A quick note of feedback: referring to specific lines of code directly in the docs is generally not ideal, since those references can become outdated quite quickly as the code evolves. Also, while graphical representations of the relationships between components can definitely help with onboarding, it would be even more useful if they showed key conceptual links — for example, how a ClusterClient has a NodesManager reference that manages a standalone Redis client instance per node. Those kinds of relationships provide valuable context without tying the documentation too tightly to specific code lines.

Thanks again for your effort and for sharing your ideas!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants