First of all, thank you for considering contributing to DevSync! It's people like you that make it such a great tool for developers. We welcome all contributions, from bug reports and feature requests to code contributions and documentation improvements.
- Ensure you have the latest version of DevSync installed.
- Check the Issue Tracker to see if your bug has already been reported.
- Create a new issue describing the bug. Provide as much detail as possible, including:
- Your operating system and Android version.
- The mode you were using (ADB Mode or HTTP Mode).
- Steps to reproduce the bug.
- Expected behavior vs actual behavior.
- Check the Issue Tracker for existing feature requests.
- Open a new issue with the
enhancementlabel. - Clearly describe your use case and why the feature would be beneficial for DevSync users.
We gladly accept your pull requests. Please adhere to the following workflow:
- Fork the repository to your own GitHub account.
- Clone the project to your local machine.
- Install the required dependencies:
pip install -r requirements.txt
- Create a new branch for your feature or bug fix:
git checkout -b feature/my-awesome-feature
- Make your changes and ensure the CLI and GUI are both working:
- To test the GUI, run
python gui.py. - To test the CLI, run
python cli/devsync.py.
- To test the GUI, run
- Commit your changes. Write clear, concise commit messages.
- Push to your branch.
- Submit a Pull Request to the
mainbranch of the official DevSync repository. - Wait for code review and approval.
To work on DevSync's source code, you'll need Python 3.10+.
Dependencies include customtkinter, watchdog, and pyinstaller. You can install them by running:
pip install -r requirements.txtDevSync is packaged using PyInstaller via a batch script.
To build the executable (for GUI and CLI):
.\build.batThis will output the final nested \dist directory which serves as the portable app format. Note that the GUI requires dist\cli\cli.exe nested beside it, so ensure they are built and placed correctly if you make changes to internal paths.
Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms. Always be respectful to other contributors.