docs/src/content/docs/contributing/index.mdx
Thank you for investing your time in contributing to our project!
In this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.
The project has strict rules for AI usage. Please see the AI Usage Policy. This is very important.
Like bug reports, first search through both issues and discussions and try to find if your feature has already been requested. Otherwise, open a discussion in the "Feature Requests, Ideas" category.
Open a Q&A discussion, or join our Discord Server and ask away in the #help forum channel.
Our project uses Devbox to manage its development environment.
Using Devbox will get your dev environment up and running easily and make sure we're all using the same tools with the same versions.
git clone [email protected]:dlvhdr/gh-dash.git && cd gh-dash
devboxcurl -fsSL https://get.jetpack.io/devbox | bash
devbox shell and run the setup (will take a while on first time)devbox shell
This will create a shell where all required tools are installed.
direnv so devbox shell runs automatically
direnv with: brew install direnv~/.bashrc file: eval "$(direnv hook bash)"
direnv by running direnv allowdevbox shell..devbox directory at the project's rootTo navigate our codebase with confidence, familiarize yourself with:
ui/ - this is the code that's responsible for rendering the different parts of the TUIdata/ - the code that fetches data from GitHub's GraphQL APIconfig/ - code to parse the user's config.yml fileutils/ - various utilitieslog packagetask logsdash in debug mode with task debug in another terminal window / paneimport "charm.land/log/v2"
// more code...
log.Debug("Some message", "someVariable", someVariable)
task docslocalhost:4321 to view them