There are many ways to contribute to Sidecar: logging bugs, submitting pull requests, reporting issues, and creating suggestions.
After cloning and building the repo, check out the issues list. Issues labeled help wanted
are good issues to submit a PR for. Issues labeled good first issue
are great candidates to pick up if you are in the code for the first time. If you are contributing significant changes, or if the issue is already assigned to a specific month milestone, please discuss with the assignee of the issue first before starting to work on the issue.
- Ensure you are using Rust 1.73
- Build the binary:
cargo build --bin webserver
- Run the binary:
./target/debug/webserver --qdrant-binary-directory ./sidecar/qdrant --dylib-directory ./sidecar/onnxruntime/ --model-dir ./sidecar/models/all-MiniLM-L6-v2/ --qdrant-url http://127.0.0.1:6334
- Profit!
We encourage you to poke around the codebase, find flaws and ways to improve it. The prompts and responses are also logged locally in your machine so you should be able to very quickly triage things. If you want a new feature or want to change something, please reach out to us on discrod or create an issue on the repo.
The best way to debug is cowboy style, put print statments and check if your code is hitting the right branch and doing the right things.
Since you will be working on the debug build of the sidecar, iteration cycles are fast, just run cargo buid --bin webserver
and you should see the log spam on stdout.
We use the GitHub flow for pull requests. This means that you should fork the repo, create a branch, make your changes, and then create a pull request. We will review your PR and provide feedback. Once the PR is approved, we will merge it into the main branch.