GitHub Desktop Documentation
This is the GitHub Desktop development documentation.
If you are interested in contributing to the project, you should read these resources to get familiar with how things work:
- How Can I Contribute? - details about how you can participate
- Development Environment Setup - everything you need to know to get Desktop up and running
- Engineering Values - our high-level engineering values
- Style Guide - notes on the coding style
- Tooling - if you have a preferred IDE, there's some enhancements to make your life easier
- Troubleshooting - some additional known issues if you're having environment issues
Details about how the team is organizing and shipping GitHub Desktop:
- Roadmap - the future as planned so far
- Release Planning - how we plan and execute releases
- Issue Triage - how we address issues reported by users
- Pull Request Triage - how contributions are reviewed
- Releasing Updates - how we deploy things
These documents contain more details about the internals of GitHub Desktop and how things work:
- Dialogs - details about the dialog component API
- Windows menu bar - Electron doesn't provide inbuilt support for styling the menu for Windows, so we've created our own custom components to achieve this.
- Developer OAuth App - GitHub Desktop ships with the ability to OAuth on behalf of a user. A developer OAuth app is bundled to reduce the friction of getting started.
- Building and Packaging Desktop - Outlines how Desktop is currently packaged for all platforms