Skip to content

Conversation

@UtkarshTheDev
Copy link

@UtkarshTheDev UtkarshTheDev commented Jan 4, 2026

Summary

This PR overhauls the project documentation to be more professional, concise, and developer-friendly. It separates usage instructions from contribution guidelines and ensures standard files are present.

Changes

  • README.md:
    • Simplified "Quick Start" to clearly distinguish between starting the OpenCode backend and the Vibe frontend.
    • Replaced ASCII art with the official header.png for a polished look.
    • Removed redundant sections ("Development", "What's Here") to focus on product features and usage.
  • CONTRIBUTING.md:
    • Created a dedicated guide for contributors.
    • Defined the "Core Philosophy" (Bun-first, TDD, Type Safety).
    • Detailed the development workflow (bun format, bun lint, bun run typecheck).
    • Moved architecture documentation links and monorepo structure details here.
  • LICENSE:
    • Added the standard MIT License file.

Verification

  • README.md renders correctly with the new header and simplified steps.
  • CONTRIBUTING.md contains all necessary dev commands and links.
  • No code logic changes, documentation only.

Summary by CodeRabbit

  • Documentation
    • Added a comprehensive contributing guide with development workflow, prerequisites, and repository layout
    • Added an MIT license file
    • Revamped the README with a visual banner, streamlined Quick Start, clearer tech stack, an explicit "Open Browser" step for the local UI, and a pointer to the contributing guide for details

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Jan 4, 2026

📝 Walkthrough

Walkthrough

Adds or updates three root documentation files: a new CONTRIBUTING.md with development guidelines and monorepo details, a new LICENSE file containing the MIT license, and a substantially rewritten README.md that condenses quick start instructions and points to CONTRIBUTING.md for full developer guidance.

Changes

Cohort / File(s) Summary
Root documentation & licensing
CONTRIBUTING.md, LICENSE, README.md
Added CONTRIBUTING.md (prerequisites, dev commands, testing, formatting, changeset workflow, repo layout). Added LICENSE containing the MIT license and copyright notice. Rewrote README.md: replaced ASCII header with image, condensed Quick Start into enumerated steps, moved development/structure details to CONTRIBUTING.md, updated tech stack and license reference.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

Poem

🐰 I hopped in the docs and tidied the trail,
A LICENSE stitched tight and a CONTRIBUTING tale,
README now gleams with steps short and clear,
The warren’s well-mapped — hoppity cheer! 🥕✨

Pre-merge checks

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: refactoring README and adding two new documentation files (CONTRIBUTING.md and LICENSE).
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 2e1dc98 and def4270.

📒 Files selected for processing (2)
  • CONTRIBUTING.md
  • README.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • CONTRIBUTING.md
🧰 Additional context used
🧠 Learnings (12)
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Applies to apps/web/app/**/*.{ts,tsx} : Use Next.js 16 App Router for page files (not Pages Router). Place pages in app/ directory with layout.tsx, page.tsx, and dynamic route segments like [id]/page.tsx.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.{ts,tsx,js,jsx} : Use `Bun.serve()` with WebSockets, HTTPS, and routes support instead of `express`

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Applies to apps/web/src/react/**/*.{ts,tsx} : Use SSE (Server-Sent Events) with `for await` loops for real-time sync. Integrate with Server Actions to dispatch events to Zustand store. Ensure 30s heartbeat to prevent WKWebView 60s timeout on mobile Safari.

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Use Bun instead of Node.js, npm, pnpm, or vite. Use `bun <file>` instead of `node <file>`, `bun install` instead of npm/pnpm install, `bun build` instead of webpack/vite, and `bunx <package>` instead of npx.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.ts : Run TypeScript files with `bun --hot <file.ts>` for hot module reloading during development

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.{ts,tsx,js,jsx,html,css} : Use `bun build <file.html|file.ts|file.css>` instead of `webpack` or `esbuild` for bundling

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.{ts,tsx,js,jsx} : Use `bunx <package> <command>` instead of `npx <package> <command>`

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Always run typecheck via turbo from repo root to check the full monorepo. Do not run type-check in individual packages (e.g., cd apps/web && bun run type-check) as changes in one package can break types in another.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.test.ts : Use `bun test` instead of `jest` or `vitest` for running tests

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Applies to **/*.test.{ts,tsx} : Always use `bun run test` with Vitest, never `bun test` directly. The bun test command uses Bun's built-in test runner which has poor isolation causing state leakage between tests. Vitest with pool='forks' provides proper process isolation.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.ts : Use `bun <file>` instead of `node <file>` or `ts-node <file>`

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to package.json : Use `bun run <script>` instead of `npm run <script>`, `yarn run <script>`, or `pnpm run <script>`

Applied to files:

  • README.md
🔇 Additional comments (3)
README.md (3)

9-28: Previous issues appear resolved.

The GitHub URL on line 21 now correctly references joelhooks/opencode-vibe, and the URL on line 28 is properly wrapped in backticks. Both previously flagged issues have been addressed. The Quick Start instructions are now clear and well-separated.


63-63: Documentation structure is clean.

Delegating development details to CONTRIBUTING.md and licensing info to LICENSE keeps the README focused. The markdown link syntax is correct and properly formatted.

Also applies to: 67-67


1-1: No issues found. The demo/header.png file exists in the repository and the image reference on line 1 is valid.


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 and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

📜 Review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 8f0843e and 2e1dc98.

⛔ Files ignored due to path filters (1)
  • demo/header.png is excluded by !**/*.png
📒 Files selected for processing (3)
  • CONTRIBUTING.md
  • LICENSE
  • README.md
🧰 Additional context used
🧠 Learnings (12)
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Applies to apps/web/app/**/*.{ts,tsx} : Use Next.js 16 App Router for page files (not Pages Router). Place pages in app/ directory with layout.tsx, page.tsx, and dynamic route segments like [id]/page.tsx.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.{ts,tsx,js,jsx} : Use `Bun.serve()` with WebSockets, HTTPS, and routes support instead of `express`

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Applies to apps/web/src/react/**/*.{ts,tsx} : Use SSE (Server-Sent Events) with `for await` loops for real-time sync. Integrate with Server Actions to dispatch events to Zustand store. Ensure 30s heartbeat to prevent WKWebView 60s timeout on mobile Safari.

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Use Bun instead of Node.js, npm, pnpm, or vite. Use `bun <file>` instead of `node <file>`, `bun install` instead of npm/pnpm install, `bun build` instead of webpack/vite, and `bunx <package>` instead of npx.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.ts : Run TypeScript files with `bun --hot <file.ts>` for hot module reloading during development

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.{ts,tsx,js,jsx,html,css} : Use `bun build <file.html|file.ts|file.css>` instead of `webpack` or `esbuild` for bundling

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.{ts,tsx,js,jsx} : Use `bunx <package> <command>` instead of `npx <package> <command>`

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Always run typecheck via turbo from repo root to check the full monorepo. Do not run type-check in individual packages (e.g., cd apps/web && bun run type-check) as changes in one package can break types in another.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.test.ts : Use `bun test` instead of `jest` or `vitest` for running tests

Applied to files:

  • README.md
📚 Learning: 2025-12-31T02:32:55.121Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-12-31T02:32:55.121Z
Learning: Applies to **/*.test.{ts,tsx} : Always use `bun run test` with Vitest, never `bun test` directly. The bun test command uses Bun's built-in test runner which has poor isolation causing state leakage between tests. Vitest with pool='forks' provides proper process isolation.

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to **/*.ts : Use `bun <file>` instead of `node <file>` or `ts-node <file>`

Applied to files:

  • README.md
📚 Learning: 2025-12-29T07:19:12.483Z
Learnt from: CR
Repo: joelhooks/opencode-vibe PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-12-29T07:19:12.483Z
Learning: Applies to package.json : Use `bun run <script>` instead of `npm run <script>`, `yarn run <script>`, or `pnpm run <script>`

Applied to files:

  • README.md
🪛 markdownlint-cli2 (0.18.1)
README.md

28-28: Bare URL used

(MD034, no-bare-urls)

🔇 Additional comments (5)
CONTRIBUTING.md (1)

1-21: LGTM!

Well-structured contributor guide with clear development setup and prerequisites. The Bun v1.3+ requirement and development commands align with the project's stack. The emphasis on running bun run typecheck from the monorepo root (Line 38) is especially helpful for avoiding isolation issues.

LICENSE (1)

1-21: Standard MIT License properly formatted.

Copyright year 2026 and entity name "OpenCode VIBE" are correct. License text follows the standard MIT template without issues.

README.md (3)

32-57: Features and Tech Stack sections are clear and accurate.

The features list clearly communicates the project's key capabilities, and the tech stack table is well-formatted with appropriate justifications. The emphasis on Bun as the runtime aligns with the project's documented workflow.


61-67: Contributing and License sections properly reference new files.

The references to CONTRIBUTING.md and LICENSE are correctly formatted as relative markdown links. The README now appropriately delegates detailed development guidance to the new CONTRIBUTING.md while maintaining focus on quick-start and features.


1-1: The header image file at demo/header.png exists and is correctly referenced in the README.

@UtkarshTheDev
Copy link
Author

Sir @joelhooks,

Pls review this PR and merge it
Because i found the README to be confusing.

~ Thank You

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