Skip to content

SEO enhancement: full audit remediation - #7

Merged
NehanAhmed merged 1 commit into
mainfrom
seo-enhancing
Jul 19, 2026
Merged

SEO enhancement: full audit remediation#7
NehanAhmed merged 1 commit into
mainfrom
seo-enhancing

Conversation

@NehanAhmed

@NehanAhmed NehanAhmed commented Jul 19, 2026

Copy link
Copy Markdown
Owner
  • Complete root layout metadata (viewport, title.template, OG, twitter, robots, alternates.canonical, verification, icons)
  • generateMetadata for dynamic room pages with noindex
  • Standardized entity naming to 'RoomDrop — Anonymous Chat Rooms'
  • Fixed broken OG image + wrong canonical domain on /join page
  • Normalized hardcoded URLs to NEXT_PUBLIC_BASE_URL env var
  • Structured data: WebApplication JSON-LD in root, BreadcrumbList on /new and /join
  • New files: not-found.tsx (real 404), error.tsx (500 boundary), manifest.ts (PWA), llms.txt
  • AI-crawler-specific robots.txt rules (OAI, Claude, Perplexity allowed)
  • next.config.ts: poweredByHeader, trailingSlash, preview/staging noindex
  • Declarative entity sentences + last-updated dates on all pages
  • sharp dependency installed for image optimization readiness
  • SEO_AUDIT.md report
  • Removed tsc from lint-staged (next build handles type checking)
  • Updated AGENTS.md + README.md with new env vars and SEO docs

Summary by CodeRabbit

  • New Features

    • Added clear recovery screens for unexpected errors and missing rooms.
    • Added installable web app metadata and improved sharing previews, canonical links, and search-engine discovery.
    • Added room-specific page metadata and structured navigation information.
    • Added informational content for AI-assisted discovery.
  • Bug Fixes

    • Corrected sitemap links and made generated room URLs configurable.
    • Preview and development environments are now excluded from search indexing.
  • Documentation

    • Updated setup instructions, configuration guidance, and SEO recommendations.

- Complete root layout metadata (viewport, title.template, OG, twitter, robots,
  alternates.canonical, verification, icons)
- generateMetadata for dynamic room pages with noindex
- Standardized entity naming to 'RoomDrop — Anonymous Chat Rooms'
- Fixed broken OG image + wrong canonical domain on /join page
- Normalized hardcoded URLs to NEXT_PUBLIC_BASE_URL env var
- Structured data: WebApplication JSON-LD in root, BreadcrumbList on /new and /join
- New files: not-found.tsx (real 404), error.tsx (500 boundary), manifest.ts (PWA), llms.txt
- AI-crawler-specific robots.txt rules (OAI, Claude, Perplexity allowed)
- next.config.ts: poweredByHeader, trailingSlash, preview/staging noindex
- Declarative entity sentences + last-updated dates on all pages
- sharp dependency installed for image optimization readiness
- SEO_AUDIT.md report
- Removed tsc from lint-staged (next build handles type checking)
- Updated AGENTS.md + README.md with new env vars and SEO docs
@vercel

vercel Bot commented Jul 19, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
room-drop Ready Ready Preview, Comment Jul 19, 2026 12:23pm

@NehanAhmed
NehanAhmed merged commit b9cd9a3 into main Jul 19, 2026
2 of 3 checks passed
@coderabbitai

coderabbitai Bot commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 913603cb-5817-48db-88b4-1e2eaca7f6aa

📥 Commits

Reviewing files that changed from the base of the PR and between 2fc469b and 148e108.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (20)
  • .lintstagedrc.json
  • AGENTS.md
  • README.md
  • SEO_AUDIT.md
  • app/error.tsx
  • app/join/page.tsx
  • app/layout.tsx
  • app/manifest.ts
  • app/new/page.tsx
  • app/not-found.tsx
  • app/page.tsx
  • app/robots.ts
  • app/room/[roomCode]/page.tsx
  • app/sitemap.ts
  • components/CreateRoomComponent.tsx
  • components/Home/HomeModal.tsx
  • components/JoinPageComponent.tsx
  • next.config.ts
  • package.json
  • public/llms.txt

📝 Walkthrough

Walkthrough

The update centralizes environment-based URLs, expands Next.js metadata and structured data, adds robots, sitemap, manifest, error, and not-found routes, introduces SEO/AEO documentation, and updates setup instructions, linting, dependencies, and selected UI copy.

Changes

SEO and discoverability

Layer / File(s) Summary
Site metadata and crawl foundation
app/layout.tsx, app/page.tsx, next.config.ts, app/robots.ts, app/sitemap.ts, app/manifest.ts, package.json
Root metadata, canonical URLs, JSON-LD, preview indexing headers, crawler rules, sitemap URLs, manifest data, and image support were updated.
Route-specific metadata and structured data
app/new/page.tsx, app/join/page.tsx, app/room/[roomCode]/page.tsx, components/CreateRoomComponent.tsx, public/llms.txt, components/*
Route metadata and BreadcrumbList JSON-LD now use the configured base URL; room metadata, QR links, AI-readable content, and selected page copy were updated.
Error and not-found route handling
app/error.tsx, app/not-found.tsx
Error recovery and not-found pages were added with reset and home-navigation actions.
SEO audit and implementation reference
SEO_AUDIT.md, README.md, AGENTS.md, .lintstagedrc.json
SEO findings, implementation templates, setup instructions, repository guidance, and staged-file commands were updated.

Estimated code review effort: 4 (Complex) | ~45 minutes

✨ 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 seo-enhancing

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 ESLint

If the error stems from missing dependencies, add them to the package.json file. For unrecoverable errors (e.g., due to private dependencies), disable the tool in the CodeRabbit configuration.

ESLint install failed: lockfile failed supply-chain policy check. Run pnpm install locally to update the lockfile.


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.

@coderabbitai coderabbitai Bot mentioned this pull request Jul 20, 2026
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