Thank you for your interest in contributing to DocTransfer! We are committed to building an open, accessible, and secure document sharing and Virtual Data Room platform, and we welcome contributions from developers of all skill levels.
By participating in this project, you agree to abide by our Code of Conduct. Please report any unacceptable behavior according to the guidelines outlined there.
- Node.js: v18.0.0 or higher (v20+ recommended)
- npm or pnpm
- Git
- Fork the repository on GitHub.
- Clone your fork locally:
git clone https://github.com/<your-username>/DocTransfer.git cd DocTransfer
- Install dependencies:
npm install
- Setup environment variables:
Fill in your Supabase project URL and anon public key.
cp .env.example .env
- Start the development server:
npm run dev
- Create a feature branch with a descriptive name from
main:git checkout -b feat/add-slack-webhook-notifications # or git checkout -b fix/drm-canvas-rendering-glitch - Make focused, modular commits following the Conventional Commits specification.
- Test your changes locally before submitting a Pull Request.
We adhere to Conventional Commits:
<type>(<optional scope>): <description>
[optional body]
[optional footer(s)]
feat: A new user-facing feature or capabilityfix: A bug fixdocs: Documentation changes onlystyle: Formatting, missing semi-colons, whitespace fixes (no code changes)refactor: Code change that neither fixes a bug nor adds a featureperf: Performance improvementstest: Adding missing tests or correcting existing testschore: Changes to build process, dependency updates, or auxiliary tools
Example: feat(vdr): add multi-folder batch download option
Before opening a Pull Request, please ensure all quality checks pass:
# Run TypeScript compilation check
npm run build
# Run ESLint linter
npm run lint- Push your branch to your GitHub fork:
git push origin feat/your-feature-name
- Open a Pull Request against the
mainbranch of the upstream repository. - Fill in the Pull Request template detailing:
- What changed and why
- How you verified the changes
- Screenshots / Screen recordings for visual or UI updates
- Be responsive to feedback and reviews during the review process.
- Bug Reports: Use our Bug Report Template to provide full reproduction steps, environment details, and screenshots/logs.
- Feature Requests: Propose ideas using our Feature Request Template.
- Questions: If you have questions about how to use DocTransfer or need help self-hosting, feel free to start a discussion in GitHub Discussions.
By contributing to DocTransfer, you agree that your contributions will be licensed under the project's MIT License.