Skip to content

docs: add contributing guide#1620

Open
KyleAMathews wants to merge 2 commits into
mainfrom
horton/add-contributor-doc
Open

docs: add contributing guide#1620
KyleAMathews wants to merge 2 commits into
mainfrom
horton/add-contributor-doc

Conversation

@KyleAMathews

@KyleAMathews KyleAMathews commented Jun 25, 2026

Copy link
Copy Markdown
Collaborator

Adds a root CONTRIBUTING.md for TanStack DB, following the common structure used across other TanStack repos and adapting it to this repo's commands and docs layout. Contributors now have a clear entry point for questions, issues, local setup, docs previewing, examples, changesets, and PR/release expectations.

Approach

This PR pulls in the standard TanStack contributing-doc shape rather than inventing a new one:

  • community flow for questions, issues, and feature suggestions
  • local development setup with pnpm, corepack, and .nvmrc
  • repo-level build/test/lint commands from package.json
  • tanstack.com docs preview instructions adjusted for TanStack/db and ../db/docs
  • examples guidance, changeset expectations, PR merge notes, and release process

The README already links to CONTRIBUTING.md, so adding this file makes that existing contributor path resolve to useful setup instructions.

Key Invariants

  • Links point at the TanStack DB repo, discussions, and issue chooser.
  • Commands match the root scripts currently exposed by this repo: pnpm build, pnpm test, and pnpm lint.
  • Docs preview instructions use the expected sibling checkout name, db, so tanstack.com can find ../db/docs during local development.
  • Release guidance reflects this repo's Changesets-based workflow.

Non-goals

  • This does not add new contributor policy beyond the patterns already used in other TanStack projects.
  • This does not change package code, docs routing, examples, CI, or release automation.
  • This does not add a changeset because the change is documentation-only and does not affect published package behavior.

Trade-offs

The guide is adapted from the shared TanStack convention instead of copied verbatim from a single repo. That keeps the familiar contributor flow while avoiding inaccurate project-specific details like another repo's package manager version, docs URL, or build/test tooling.

Verification

pnpm prettier --check CONTRIBUTING.md

Not run, because this is a docs-only change and the edited file is Markdown contributor guidance:

pnpm test

Files changed

  • CONTRIBUTING.md — new contributor guide covering support channels, issue/feature flow, local development setup, docs previewing, examples, changesets, PR expectations, and releases.

Preserved from the previous PR body / CodeRabbit summary:

  • Added a new contributing guide with clear steps for asking questions, reporting issues, suggesting features, and submitting pull requests.
  • Documented the local development workflow, including setup, build, test, lint, and previewing docs.
  • Included guidance for running examples and explained the release and preview process for changes.

Summary by CodeRabbit

  • Documentation
    • Added a full contributing guide with clear steps for asking questions, reporting issues, and suggesting features.
    • Documented the local development workflow, including install, build, test, lint, and pull request submission steps.
    • Added guidance for editing and previewing documentation locally, running examples, and following the release process.

@coderabbitai

coderabbitai Bot commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 910d88f6-316c-4760-a695-c37b5fe0ee04

📥 Commits

Reviewing files that changed from the base of the PR and between f1e57f5 and 1029f5a.

📒 Files selected for processing (1)
  • CONTRIBUTING.md
✅ Files skipped from review due to trivial changes (1)
  • CONTRIBUTING.md

📝 Walkthrough

Walkthrough

Adds a CONTRIBUTING guide covering support channels, issue and feature submission, development commands, local docs editing and previewing, example runs, Changesets usage, PR squashing, and the preview/publish release flow.

Changes

Contribution documentation

Layer / File(s) Summary
Support channels and workflow
CONTRIBUTING.md
Documents support channels, issue and feature submission, and the core development and PR workflow.
Docs editing and preview
CONTRIBUTING.md
Documents local documentation editing and preview instructions, including setup requirements and the workflow for running the TanStack Start site.
Examples and release process
CONTRIBUTING.md
Documents example execution, Changesets usage, PR squashing, and the preview and publish release flow.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Poem

🐰 I hopped through the guide with a grin,
New paths for contributors tucked within.
Docs, examples, and release notes too,
A tidy trail for me and you!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description is detailed, but it does not follow the required template sections for Changes, Checklist, and Release Impact. Rewrite the PR body using the repo template and include the missing Changes, checklist, and release-impact sections with the required checkbox items.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title is concise and accurately describes the main change: adding a contributing guide.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch horton/add-contributor-doc

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@pkg-pr-new

pkg-pr-new Bot commented Jun 25, 2026

Copy link
Copy Markdown
More templates

@tanstack/angular-db

npm i https://pkg.pr.new/@tanstack/angular-db@1620

@tanstack/browser-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/browser-db-sqlite-persistence@1620

@tanstack/capacitor-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/capacitor-db-sqlite-persistence@1620

@tanstack/cloudflare-durable-objects-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/cloudflare-durable-objects-db-sqlite-persistence@1620

@tanstack/db

npm i https://pkg.pr.new/@tanstack/db@1620

@tanstack/db-ivm

npm i https://pkg.pr.new/@tanstack/db-ivm@1620

@tanstack/db-sqlite-persistence-core

npm i https://pkg.pr.new/@tanstack/db-sqlite-persistence-core@1620

@tanstack/electric-db-collection

npm i https://pkg.pr.new/@tanstack/electric-db-collection@1620

@tanstack/electron-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/electron-db-sqlite-persistence@1620

@tanstack/expo-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/expo-db-sqlite-persistence@1620

@tanstack/node-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/node-db-sqlite-persistence@1620

@tanstack/offline-transactions

npm i https://pkg.pr.new/@tanstack/offline-transactions@1620

@tanstack/powersync-db-collection

npm i https://pkg.pr.new/@tanstack/powersync-db-collection@1620

@tanstack/query-db-collection

npm i https://pkg.pr.new/@tanstack/query-db-collection@1620

@tanstack/react-db

npm i https://pkg.pr.new/@tanstack/react-db@1620

@tanstack/react-native-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/react-native-db-sqlite-persistence@1620

@tanstack/rxdb-db-collection

npm i https://pkg.pr.new/@tanstack/rxdb-db-collection@1620

@tanstack/solid-db

npm i https://pkg.pr.new/@tanstack/solid-db@1620

@tanstack/svelte-db

npm i https://pkg.pr.new/@tanstack/svelte-db@1620

@tanstack/tauri-db-sqlite-persistence

npm i https://pkg.pr.new/@tanstack/tauri-db-sqlite-persistence@1620

@tanstack/trailbase-db-collection

npm i https://pkg.pr.new/@tanstack/trailbase-db-collection@1620

@tanstack/vue-db

npm i https://pkg.pr.new/@tanstack/vue-db@1620

commit: 1029f5a

@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 123 kB

ℹ️ View Unchanged
Filename Size
packages/db/dist/esm/collection/change-events.js 1.39 kB
packages/db/dist/esm/collection/changes.js 1.38 kB
packages/db/dist/esm/collection/cleanup-queue.js 810 B
packages/db/dist/esm/collection/events.js 434 B
packages/db/dist/esm/collection/index.js 3.62 kB
packages/db/dist/esm/collection/indexes.js 1.99 kB
packages/db/dist/esm/collection/lifecycle.js 1.69 kB
packages/db/dist/esm/collection/mutations.js 2.47 kB
packages/db/dist/esm/collection/state.js 5.33 kB
packages/db/dist/esm/collection/subscription.js 3.74 kB
packages/db/dist/esm/collection/sync.js 2.88 kB
packages/db/dist/esm/collection/transaction-metadata.js 144 B
packages/db/dist/esm/deferred.js 207 B
packages/db/dist/esm/errors.js 5.01 kB
packages/db/dist/esm/event-emitter.js 748 B
packages/db/dist/esm/index.js 3.09 kB
packages/db/dist/esm/indexes/auto-index.js 829 B
packages/db/dist/esm/indexes/base-index.js 729 B
packages/db/dist/esm/indexes/basic-index.js 2.05 kB
packages/db/dist/esm/indexes/btree-index.js 2.17 kB
packages/db/dist/esm/indexes/index-registry.js 820 B
packages/db/dist/esm/indexes/reverse-index.js 538 B
packages/db/dist/esm/local-only.js 916 B
packages/db/dist/esm/local-storage.js 2.12 kB
packages/db/dist/esm/optimistic-action.js 359 B
packages/db/dist/esm/paced-mutations.js 496 B
packages/db/dist/esm/proxy.js 3.75 kB
packages/db/dist/esm/query/builder/functions.js 1.47 kB
packages/db/dist/esm/query/builder/index.js 5.84 kB
packages/db/dist/esm/query/builder/ref-proxy.js 1.24 kB
packages/db/dist/esm/query/compiler/evaluators.js 1.83 kB
packages/db/dist/esm/query/compiler/expressions.js 430 B
packages/db/dist/esm/query/compiler/group-by.js 3.56 kB
packages/db/dist/esm/query/compiler/index.js 6.67 kB
packages/db/dist/esm/query/compiler/joins.js 2.5 kB
packages/db/dist/esm/query/compiler/lazy-targets.js 918 B
packages/db/dist/esm/query/compiler/order-by.js 1.74 kB
packages/db/dist/esm/query/compiler/select.js 1.4 kB
packages/db/dist/esm/query/effect.js 4.77 kB
packages/db/dist/esm/query/expression-helpers.js 1.43 kB
packages/db/dist/esm/query/ir.js 1.25 kB
packages/db/dist/esm/query/live-query-collection.js 360 B
packages/db/dist/esm/query/live/collection-config-builder.js 8.36 kB
packages/db/dist/esm/query/live/collection-registry.js 264 B
packages/db/dist/esm/query/live/collection-subscriber.js 1.93 kB
packages/db/dist/esm/query/live/internal.js 145 B
packages/db/dist/esm/query/live/utils.js 1.81 kB
packages/db/dist/esm/query/optimizer.js 2.92 kB
packages/db/dist/esm/query/predicate-utils.js 2.97 kB
packages/db/dist/esm/query/query-once.js 359 B
packages/db/dist/esm/query/subset-dedupe.js 960 B
packages/db/dist/esm/scheduler.js 1.3 kB
packages/db/dist/esm/SortedMap.js 1.3 kB
packages/db/dist/esm/strategies/debounceStrategy.js 247 B
packages/db/dist/esm/strategies/queueStrategy.js 428 B
packages/db/dist/esm/strategies/throttleStrategy.js 246 B
packages/db/dist/esm/transactions.js 3.03 kB
packages/db/dist/esm/utils.js 927 B
packages/db/dist/esm/utils/array-utils.js 273 B
packages/db/dist/esm/utils/browser-polyfills.js 304 B
packages/db/dist/esm/utils/btree.js 5.61 kB
packages/db/dist/esm/utils/comparison.js 1.05 kB
packages/db/dist/esm/utils/cursor.js 457 B
packages/db/dist/esm/utils/index-optimization.js 1.54 kB
packages/db/dist/esm/utils/type-guards.js 157 B
packages/db/dist/esm/utils/uuid.js 449 B
packages/db/dist/esm/virtual-props.js 360 B

compressed-size-action::db-package-size

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@CONTRIBUTING.md`:
- Around line 92-98: The fenced example block in CONTRIBUTING.md is missing a
language label, which will trip the markdownlint MD040 check. Update the fenced
block that shows the tanstack directory tree to use an appropriate label such as
text so the markdown formatter recognizes it; locate the unlabeled fence in the
example section and adjust only that fence marker.
- Around line 28-30: The CONTRIBUTING setup command is incomplete because
corepack prepare is missing the pinned package manager/version. Update the
documented Corepack command to explicitly prepare the project’s required package
manager version (using the same pinned version used elsewhere in the repo) so
setup is deterministic. Keep the change in the CONTRIBUTING.md example and
ensure the command matches the project’s package manager configuration.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: f2c19d0f-5138-4cbb-aedc-ee649c1ea220

📥 Commits

Reviewing files that changed from the base of the PR and between 267b36b and f1e57f5.

📒 Files selected for processing (1)
  • CONTRIBUTING.md

Comment thread CONTRIBUTING.md
Comment thread CONTRIBUTING.md Outdated
@github-actions

Copy link
Copy Markdown
Contributor

Size Change: 0 B

Total Size: 4.24 kB

ℹ️ View Unchanged
Filename Size
packages/react-db/dist/esm/index.js 249 B
packages/react-db/dist/esm/useLiveInfiniteQuery.js 1.32 kB
packages/react-db/dist/esm/useLiveQuery.js 1.34 kB
packages/react-db/dist/esm/useLiveQueryEffect.js 355 B
packages/react-db/dist/esm/useLiveSuspenseQuery.js 567 B
packages/react-db/dist/esm/usePacedMutations.js 401 B

compressed-size-action::react-db-package-size

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant