# Contributing to Gearslip Thanks for helping. Bug reports from real cars are the most useful thing you can send, so start there if you aren't sure where to begin. ## Reporting a bug Open an issue on [GitHub](https://github.com/Seb3thehacker/gearslip/issues) and include: - your car's make, model, and year, and whether the head unit is the original one; and - the log from the drive. Open Logs on the phone app's home screen and tap Share log. The log records your phone, its Android version, the Gearslip version, the head unit, and why the connection ended. Most car bugs can't be fixed without it. Head units often report only a part number, so the log can't name your car for you. ## Building You need Android Studio, or the Android SDK with JDK 21. Gradle downloads the NDK, CMake, and the speech library on the first build. ``` ./gradlew :gearslip:assembleDebug ``` The APK lands at `build/Gearslip-debug.apk`. It installs as Gearslip Dev, next to the regular app. ## Pull requests Work happens on the `experimental` branch, which merges into `main` at each release. Base your branch on `experimental`, and open your pull request against it. - Keep each pull request to one change, and explain the problem it solves. - Say how you tested it: which car or head unit, which phone, and which apps. - Code written with AI tools is welcome. Read it, test it, and stand behind it as you would your own. - Gearslip asks for no adb, root, or Shizuku. A feature must work with ordinary Android permissions and on-device consent dialogs. ## Writing Text that users read, such as screens, release notes, and docs, follows Strunk's [*The Elements of Style*](https://www.gutenberg.org/ebooks/37134). In short: use the active voice, state things positively, cut needless words, and use the serial comma. ## License Gearslip is licensed under AGPL-3.0, and your contributions are too. The author also sells a commercial license, described in [NOTICE.md](NOTICE.md). By opening a pull request, you agree that your contribution may be offered under that license as well.