Contribute
Timelake is open source under the Apache 2.0 license, and contributions are welcome: bug reports, questions, ideas, docs, benchmarks, and code. You don't need permission to help. Everything happens on GitHub.
Ways to help
- Report a bug. Open an issue with what you ran, what you expected, and what happened. Include the version (
timelake --version) and the object store you use. - Report a security problem privately, not in an issue: report a vulnerability on GitHub. SECURITY.md says what happens next.
- Ask a question or suggest a feature. Open an issue too. The roadmap shows what is planned, as milestones, and the specs the design behind it, feature by feature, with what is built.
- Improve the docs. Every page on this site is a file in
dashboard/app/(site)/docs. Fix a typo or an unclear sentence straight in a pull request. - Run the benchmarks on your hardware or object store and share the results in an issue. See Benchmarks.
- Write code. Issues labelled good first issue or help wanted are good places to start.
Making a change
-
For anything bigger than a fix, open an issue first and agree on the approach, so a pull request doesn't need rewriting.
-
Fork the repository and branch from
main. The Development guide sets up the tools: Rust, uv, and Bun. -
Change behaviour, docs, and tests together. A pull request that changes what users see also updates the docs and the tests, and adds a line to CHANGELOG.md under
Unreleased. -
Run the checks before you push. CI runs the same ones on every pull request.
prek run --all-files --hook-stage pre-push # formatters, linters, type checkers cargo test --workspace # Rust uv run pytest crates/timelake-py/tests # Python -
Open a pull request against
mainthat says what changed and why. A maintainer reviews it. Small, focused pull requests get merged fastest.
Code guide
CONTRIBUTING.md is the code guide. It covers how code should read in Rust, Python, and TypeScript, how to write tests, commit messages, the changelog, and versions and releases. The Codebase tour explains what each part of the repository does, and How it works explains the design.
Coding agents are welcome too: AGENTS.md points them at the same rules. You are responsible for what you submit, whoever wrote it.
License
Timelake is licensed under the Apache License 2.0. Contributions are licensed under it too.