Skip to content

docs: refresh README landing page#506

Merged
mohanagy merged 3 commits into
mainfrom
docs/readme-refresh-main
Jun 4, 2026
Merged

docs: refresh README landing page#506
mohanagy merged 3 commits into
mainfrom
docs/readme-refresh-main

Conversation

@mohanagy
Copy link
Copy Markdown
Owner

@mohanagy mohanagy commented Jun 4, 2026

Summary

  • rewrite the README into a shorter npm-facing landing page with clearer install, quick start, supported agent, fit, and docs sections
  • keep telemetry controls and the telemetry docs link explicit so the public README matches the documented opt-in contract
  • preserve the stable release changelog link and npm-facing main-branch documentation links

Testing

  • npm run test:run -- tests/unit/telemetry-doc.test.ts
  • npm run release:verify

Summary by CodeRabbit

  • Documentation
    • Rewrote README into a concise npm-facing landing page with “Why / Install / Quick Start” flow
    • Added Supported Agents install matrix, “Use Without MCP”, and clearer “What It Builds / Fit” guidance
    • Documented freshness flags, telemetry controls, privacy, and CLI examples (madar try/doctor/status/pack/prompt/handoff)
    • Added “What’s New”, streamlined docs links, contributing instructions, and a single “Special thanks” contributor note

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jun 4, 2026

Review Change Stack

📝 Walkthrough

Walkthrough

The README was rewritten into a concise npm-facing landing page (Why, Install, Quick Start, Supported Agents, Use Without MCP, What It Builds, Fit, Freshness, Evidence, Privacy, Telemetry, What's New, Docs) and the contributors section markup and acknowledgement were updated. Multiple unit tests were adjusted to align assertions with the new README and relocated deeper docs.

Changes

README Landing Page Restructure

Layer / File(s) Summary
Landing page content rewrite
README.md
Replaced the README opening and body with a condensed npm-facing landing page: new top-level sections (Why, Install, Quick Start, Supported Agents, Use Without MCP, What It Builds, Fit, Freshness with --require-fresh-*, Evidence, Privacy, Telemetry, What's New, Docs, and Contributing).
Contributor recognition update
README.md
Updated the regenerated contributors HTML table closing markup and replaced the older standalone shout-out paragraph with a single “Special thanks” line crediting @jamemackson (PR #54).
Unit tests: README→docs assertion updates
tests/unit/*
Multiple unit tests updated to stop asserting removed README sections and to instead verify new README sections and/or deeper docs (benchmarks, claims-and-evidence, docs/reference/cli-and-mcp.md, docs/concepts/context-packs.md, examples/*).
Package-metadata & context-packs tests
tests/unit/package-metadata.test.ts
Added loadContextPacksDoc() helper; package-metadata tests now assert context-packs-specific wording, MCP example identifiers, pack compaction wording, and adjusted dependency-floor checks.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • mohanagy/madar#439: Related edits to README onboarding and agent install/status guidance.
  • mohanagy/madar#481: Overlaps/conflicts around the added/removed Rename and migration README section and corresponding tests.
  • mohanagy/madar#476: Overlaps on README wording/positioning and tests that assert those strings.

Poem

🐰 A README trimmed to sparkle bright,
Short and useful, guiding light,
Commands for try, pack, handoff too,
Tests retuned to read what's new,
Thanks to helpers that kept docs true.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The PR title 'docs: refresh README landing page' directly and concisely describes the main change—rewriting the README into a shorter npm-facing landing page.
Description check ✅ Passed The PR description covers the key changes and testing approach, but lacks explicit confirmation of the standard testing checklist items (typecheck, build, npm pack verification).
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 docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/readme-refresh-main

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

mohanagy and others added 2 commits June 4, 2026 19:07
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copy link
Copy Markdown

@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.

🧹 Nitpick comments (1)
tests/unit/why-madar-doc.test.ts (1)

88-93: ⚡ Quick win

Avoid hard-coding the release version in docs assertions.

Pinning 0.27.9 here will force test edits on every release. Read package.json and assert against the current manifest version instead.

♻️ Proposed update
+interface PackageManifest {
+  version?: string
+}
+
+function loadPackageManifest(): PackageManifest {
+  return JSON.parse(readDoc('package.json')) as PackageManifest
+}
+
 describe('public marketing copy honesty', () => {
@@
-    it('surfaces the current stable release and benchmark evidence pointers in the main README flow', () => {
-      expect(content).toContain('Current version: `0.27.9`')
-      expect(content).toContain('0.27.9 changelog')
+    it('surfaces the current stable release and benchmark evidence pointers in the main README flow', () => {
+      const manifest = loadPackageManifest()
+      expect(content).toContain(`Current version: \`${manifest.version}\``)
+      expect(content).toContain(`${manifest.version} changelog`)
       expect(content).toContain('madar summary')
       expect(content).toContain('docs/claims-and-evidence.md')
       expect(content).toContain('docs/benchmarks/suite/')
     })
🤖 Prompt for 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.

In `@tests/unit/why-madar-doc.test.ts` around lines 88 - 93, The test "surfaces
the current stable release and benchmark evidence pointers in the main README
flow" hard-codes '0.27.9'; instead read package.json version and assert against
it. In tests/unit/why-madar-doc.test.ts import or require the project's
package.json to get packageJson.version, then replace the literal
expect(content).toContain('Current version: `0.27.9`') with an assertion that
interpolates the runtime version (e.g., expect(content).toContain(`Current
version: \`${packageJson.version}\``)); leave the other static README checks
(e.g., '0.27.9 changelog') updated to use the same version variable if they
refer to the release string. Ensure you reference the test's content variable
and the test title when making the change.
🤖 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.

Nitpick comments:
In `@tests/unit/why-madar-doc.test.ts`:
- Around line 88-93: The test "surfaces the current stable release and benchmark
evidence pointers in the main README flow" hard-codes '0.27.9'; instead read
package.json version and assert against it. In tests/unit/why-madar-doc.test.ts
import or require the project's package.json to get packageJson.version, then
replace the literal expect(content).toContain('Current version: `0.27.9`') with
an assertion that interpolates the runtime version (e.g.,
expect(content).toContain(`Current version: \`${packageJson.version}\``)); leave
the other static README checks (e.g., '0.27.9 changelog') updated to use the
same version variable if they refer to the release string. Ensure you reference
the test's content variable and the test title when making the change.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: b8bad980-b375-44eb-8180-aa5d21d41bef

📥 Commits

Reviewing files that changed from the base of the PR and between dd41e21 and 0eb6f6e.

📒 Files selected for processing (11)
  • README.md
  • tests/unit/benchmark-suite-docs.test.ts
  • tests/unit/design-partners-doc.test.ts
  • tests/unit/getting-started-docs.test.ts
  • tests/unit/install-compatibility.test.ts
  • tests/unit/install-docs.test.ts
  • tests/unit/launch-checklist-doc.test.ts
  • tests/unit/package-metadata.test.ts
  • tests/unit/rebrand-surface.test.ts
  • tests/unit/sample-workspace.test.ts
  • tests/unit/why-madar-doc.test.ts
💤 Files with no reviewable changes (3)
  • tests/unit/sample-workspace.test.ts
  • tests/unit/design-partners-doc.test.ts
  • tests/unit/launch-checklist-doc.test.ts
✅ Files skipped from review due to trivial changes (1)
  • README.md

@mohanagy mohanagy merged commit b6aa171 into main Jun 4, 2026
7 checks passed
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