OpenList is written in Go and SolidJS.
Prerequisites:
Fork and clone OpenList and OpenList-Frontend anywhere:
git clone https://github.com/<your-username>/OpenList.git
git clone --recurse-submodules https://github.com/<your-username>/OpenList-Frontend.gitCreate a new branch from the main branch, with an appropriate name.
git checkout -b <branch-name>go run main.gopnpm devCopy drivers/template folder and rename it, and follow the comments in it.
By contributing, you agree to follow the repository's code of conduct and license terms.
- Code of conduct: CODE_OF_CONDUCT.md
- License: LICENSE
- Security issues: please report privately according to SECURITY.md
If your contribution includes substantial AI-assisted content, disclose the tools used and the scope of assistance in the pull request.
Commit messages should be well formatted, and to make that "standardized".
Submit your pull request. For PR titles, follow Conventional Commits.
It's suggested to sign your commits. See: How to sign commits
Please make sure your code has been formatted with go fmt or prettier before submitting.
Push your branch to your openlist fork and open a pull request against the main branch.
Your pull request will be merged after review. Please wait for the maintainer to merge your pull request after review.
At least 1 approving review is required by reviewers with write access. You can also request a review from maintainers.
(Optional) After your pull request is merged, you can delete your branch.
If your pull request includes substantial AI-assisted content, disclose it in the PR description.
Please include:
- Tools used, such as ChatGPT, GitHub Copilot, Claude, Cursor, or other AI tools.
- Usage scope, such as code generation, refactoring, documentation, tests, translation, or review assistance.
- Confirmation that you have reviewed and validated all AI-assisted content before submission.
- Confirmation that the submitted content complies with this repository's license and contribution policies.
Minor AI assistance, such as typo fixes, autocomplete, formatting suggestions, or wording polish, does not need to be disclosed.
Thank you for your contribution! Let's make OpenList better together!