Open-source tool for creating and viewing code guides. For onboarding, explaining the context of a code review, and more.
With code guides you can help new team members understand the codebase and get up to speed quickly. Also, it's a great way to re-board yourself to a project or feature area you haven't worked on for a while.
It makes it easy for PR authors to explain the reasoning behind their decisions and draw attention to important parts of their changes so reviewers can focus on those first.
You can use Codeguide for creating code presentations, whether it's for a conference talk or a training session.
Codeguide's source code is available on GitHub. If you're happy to manage your own infrastructure, you can self-host it. It is licenced under the GNU Affero General Public License Version 3 (AGPLv3).
Premium
$3 per user / month
Enterprise
Guides are linked to a specific commit, so when a guide is opened, it will display the code as it existed at that point in time.
In the case of code review guides, code changes are usually not a problem because these guides are meant to help reviewers focus on important parts of the PR. By the time the code changes, the reviewer should already be familiar with it.
For onboarding guides, outdated content can still provide valuable context and background information. But, if the code change is too significant, you will have to create a new guide.
However, we are currently working on a feature that will make it easier to update guides. Stay tuned!
If an IDE extension is more convenient for you, check out CodeTour for VS Code.
However, CodeTour does not offer code generation as you progress through the steps, it only provides interactive walkthroughs for highlighted code.
Also, we believe that a web-based solution is more suitable for onboarding because it can be easily shared with anyone, even if they don't have the same IDE.
Additionally, using a guide in this format won't require you to stash or commit your changes if you're currently working on the same repository.
The guide can be accessed only if the user has access to the repository on GitHub.