Thank you for your interest in contributing to OpenCode Router! We welcome bug reports, feature requests, documentation improvements, and code contributions.
Please treat all members of the community with respect, patience, and courtesy.
- Check the Issues tab to ensure the bug or feature hasn't already been reported.
- When opening a new issue, describe the problem clearly, including:
- Your Ubuntu version (
lsb_release -a) - Node.js version (
node -v) - OpenCode version (
opencode --version) - Reproduction steps and error logs (sanitize any private server endpoints or credentials before posting)
- Your Ubuntu version (
-
Fork and clone the repository:
git clone https://github.com/EhsanCreator/OpenCode-Router.git cd OpenCode-Router -
Install dependencies:
npm install
-
Run the automated test suite:
npm test -
Start in development mode:
npm run dev:backend # In another terminal: npm run dev:frontend
- Write clean, maintainable TypeScript.
- Follow least-privilege security principles: never require root unless strictly necessary.
- Respect host environment isolation: do not modify global OS routing or interfere with other applications.
- Run tests (
npm test) and ensure the frontend compiles (npm run build) before submitting pull requests.
- Create a feature branch:
git checkout -b feature/my-new-feature
- Commit your changes with descriptive messages:
git commit -m "feat: add support for custom subscription endpoints" - Push to your branch and submit a Pull Request on GitHub.
By contributing to OpenCode Router, you agree that your contributions will be licensed under the project's MIT License.