Contributing
to UMD
UMD is built in the open. Whether you fix a typo, add a platform handler, or report a bug — every contribution makes it better.
Ways to Contribute
Report Bugs
Found something broken? Open an issue on Codeberg with clear reproduction steps, your OS, Python version, and the full error output.
Suggest Features
Have an idea? Open a feature request on Codeberg. Describe the use case, not just the solution — context helps us understand the need.
Write Code
Fork the repo, make your changes on a feature branch, and open a pull request. Keep commits small and focused. All code must pass existing tests.
Add a Platform Handler
UMD uses a modular handler system. Adding a new platform is as simple as creating a new handler class in the handlers/ directory and registering it.
Improve Docs
Documentation lives in the documentations/ folder as Markdown. Fix typos, add examples, or write new guides — docs PRs are always welcome.
Star & Share
The simplest contribution: star the repo on Codeberg and share UMD with developers who need it. Visibility helps the project grow.
PR Workflow
Fork the repository
Go to codeberg.org/nk2552003/umd and fork it to your account.
Clone your fork
git clone https://codeberg.org/YOUR_USERNAME/umd.git && cd umd
Create a feature branch
git checkout -b feature/your-feature-name or fix/bug-description
Make your changes
Write code, update tests, and add docs if relevant to your change.
Test your changes
Run the test suite to make sure nothing is broken: python -m pytest
Commit & push
git add . && git commit -m "feat: describe your change" && git push origin feature/...
Open a Pull Request
Go to Codeberg, open a PR from your branch to main. Fill in the PR template.
Review & merge
The maintainer will review your PR, request changes if needed, then merge it.
Code Standards
feat: add TikTok handler fix: resolve playlist URL parsing docs: update INSTALLATION.md chore: bump yt-dlp to 2024.12.x refactor: simplify download queue test: add tests for audio extraction
Look for Good First Issues
Issues tagged good-first-issue on Codeberg are intentionally scoped to be approachable for new contributors.
Let's build it
together.
Every line of code, every bug report, every doc fix makes UMD better for everyone.