Contributing
Contributing to DLMan
We welcome contributions of all kinds — bug fixes, features, docs, and ideas. Here's how to get started.
Prerequisites
Quick Start
Loading...
Project Structure
apps/desktop/Tauri + React desktop application
apps/cli/CLI application (Rust)
apps/extension/Browser extension (WXT)
crates/dlman-core/Core download engine (Rust)
crates/dlman-types/Shared type definitions
Development
Desktop App
pnpm tauri devDevelopment mode with hot reloadpnpm tauri buildBuild for productionCLI
cargo run -p dlman-cli -- --helpRun CLI in devcargo build -p dlman-cli --releaseBuild release binaryBrowser Extension
pnpm --filter @dlman/extension devChrome dev modepnpm --filter @dlman/extension dev:firefoxFirefox dev modepnpm --filter @dlman/extension build:chromeBuild for ChromeCode Style
Submitting Changes
Bug Fixes
Check if an issue already exists
Fork the repo and create a branch: fix/issue-description
Make your changes and test thoroughly
Submit a pull request
New Features
Open an issue to discuss the feature first
Wait for feedback from maintainers
Fork and create a branch: feature/feature-name
Implement, test, and submit a PR
Pull Request Guidelines
Keep PRs focused on a single change
Update documentation if needed
Ensure all tests pass
Follow the existing code style
Write a clear PR description
Testing
cargo testRun Rust testscd apps/desktop && pnpm tsc --noEmitType check frontend