Contributing to EarTrumpet

We welcome contributions to EarTrumpet, whether it's reporting issues or submitting code. Thank you for your interest!

Contribution Workflow

To ensure a smooth process, please follow this workflow for code contributions:

  1. Create or Find an Issue: Before starting work, create a new issue or find an existing one that describes the bug or enhancement you want to work on.
  2. Get Team Agreement: Discuss your proposed change with the team on the issue to ensure it aligns with the project's goals. You can also email team@eartrumpet.app.
  3. Claim the Issue: Clearly state that you will be working on the issue so it can be assigned to you.
  4. Fork the Repository: Create your own fork of the EarTrumpet repository on GitHub.
  5. Create a Branch: Create a new branch for your feature or bugfix from the dev branch.

    git checkout -b my-awesome-feature dev

  6. Make Your Changes: Implement your changes and ensure the code builds cleanly in all configurations (Debug, Release, and VSDebug).

  7. Commit and Push: Commit your changes to your fork.
  8. Create a Pull Request: Open a pull request from your branch against the dev branch of the main repository.

It's okay to have multiple commits in your PR; they will be squashed upon merge. You can also create a Work-In-Progress (WIP) pull request to get early feedback.

Setting Up Your Development Environment

To compile EarTrumpet, you'll need the following tools and SDKs.

Requirements

Step-by-Step Compilation

  1. Install Visual Studio 2017 (or newer) with the .NET desktop development and Universal Windows Platform development workloads.
  2. Install the Windows 10 SDK (10.0.14393.0).
  3. Install the .NET Framework 4.6.2 Developer Pack.
  4. Install Git for Windows.
  5. Clone the EarTrumpet repository:

    git clone https://github.com/File-New-Project/EarTrumpet.git

  6. Open EarTrumpet.vs15.sln in Visual Studio.

  7. Change the solution platform to x86.
  8. Build the EarTrumpet.Package project.

After these steps, you will have a compiled version of the application ready to run and debug.