Skip to content

Feat/dodopayments monetization - #131

Merged
Rayan9064 merged 7 commits into
mainfrom
feat/dodopayments-monetization
Aug 7, 2026
Merged

Feat/dodopayments monetization#131
Rayan9064 merged 7 commits into
mainfrom
feat/dodopayments-monetization

Conversation

@Rayan9064

Copy link
Copy Markdown
Owner

No description provided.

…anches

Broaden the "What DumpIt Is" / competitive-context sections to reflect
the portable-context vision more fully, and add a Git Workflow section
so Claude can push to feature branches without asking each time (main
still always goes through a PR).
The extension already posted here for richer capture metadata (selected
text, canonical URL, source type) but fell back silently to the plain
/api/resources endpoint since the route didn't exist, losing that data.
Add the route (reusing the same auth/limit/index pipeline as
/api/resources) and wire the popup's quick-capture flow to use it too,
matching the side panel's existing behavior.
Pricing.tsx sells "REST API access" and "Claude MCP integration" on the
paid tier, but there was no way to authenticate a long-lived external
client — only short-lived Firebase ID tokens existed. Add dk_live_...
API keys (SHA-256 hashed in Firestore), a settings route to
generate/list/revoke them, and a requireAuthOrApiKey() auth path that
resolves either a Firebase token or an API key to a uid. Wire it into
the three routes external clients need: resource creation and both AI
search/ask endpoints. Add a compact key-management card to the profile
page.
Ships the MCP server that "Claude MCP integration" on the pricing page
was already promising, with nothing built. A minimal, real
implementation: three tools (ask_vault, search_vault, save_to_vault)
that thin-wrap the existing rate-limited /api/ai/ask, /api/ai/search,
and /api/resources endpoints over stdio, authenticated with the new
API key system. Structured as an independent sibling package like
dumpit-extension/, excluded from the root tsconfig.
…pped

Hero, Features, Platform, and Roadmap still said PDF upload and the
browser extension were "coming soon" — both have been live for a
while. Flip their status, fold Claude MCP into the roadmap as shipped,
swap in Email-to-save as the next honestly-planned item, and fix the
REST API / semantic-search code examples in ApiSection (wrong HTTP
method, wrong response field names, wrong MCP package name) to match
what actually ships.
Dashboard.tsx had zero user-visible error handling (console.error only)
across resource loading, pagination, delete, and demo import. Add a
lightweight toast system (none existed) mounted at the root, styled off
existing .app-panel/.app-chip conventions. Also add an UpgradePrompt
component shown specifically for 403 UPGRADE_REQUIRED responses
(resource limit, PDF upload, AI query limit) instead of generic red
text, with a real checkout link extracted from Pricing.tsx into a
shared app/lib/dodoCheckout.ts.
CLAUDE.md mandates zinc-only, but 229 slate-* occurrences remained
across the app outside the landing folder (already migrated
separately). Straight color-token substitution, no behavior change.
@vercel

vercel Bot commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

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

Project Deployment Actions Updated (UTC)
dumpit Ready Ready Preview Aug 7, 2026 1:47am

@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Warning

Review limit reached

@Rayan9064, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 13 minutes

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 95637efc-079a-47e1-860d-b9307193e636

📥 Commits

Reviewing files that changed from the base of the PR and between c64481c and 9076b26.

⛔ Files ignored due to path filters (1)
  • dumpit-mcp/package-lock.json is excluded by !**/package-lock.json
📒 Files selected for processing (45)
  • CLAUDE.md
  • app/RootLayoutClient.tsx
  • app/api/_utils/auth.ts
  • app/api/ai/ask/route.ts
  • app/api/ai/search/route.ts
  • app/api/extension/capture/route.ts
  • app/api/resources/route.ts
  • app/api/settings/api-keys/route.ts
  • app/components/AddResource.tsx
  • app/components/AskDumpit.tsx
  • app/components/Auth.tsx
  • app/components/Dashboard.tsx
  • app/components/EditResource.tsx
  • app/components/Layout.tsx
  • app/components/Profile.tsx
  • app/components/SharedDump.tsx
  • app/components/collections/CollectionFormModal.tsx
  • app/components/collections/CollectionsSidebar.tsx
  • app/components/collections/ResourceCollectionManager.tsx
  • app/components/landing/ApiSection.tsx
  • app/components/landing/Features.tsx
  • app/components/landing/Hero.tsx
  • app/components/landing/Platform.tsx
  • app/components/landing/Pricing.tsx
  • app/components/landing/Roadmap.tsx
  • app/components/ui/LegalNav.tsx
  • app/components/ui/ResourceSkeleton.tsx
  • app/components/ui/ShareModal.tsx
  • app/components/ui/ThemeToggle.tsx
  • app/components/ui/Toast.tsx
  • app/components/ui/UpgradePrompt.tsx
  • app/components/ui/button.tsx
  • app/components/ui/card.tsx
  • app/lib/dodoCheckout.ts
  • app/login/page.tsx
  • app/page.tsx
  • app/privacy/page.tsx
  • app/terms/page.tsx
  • app/u/[username]/page.tsx
  • dumpit-extension/src/popup/Popup.tsx
  • dumpit-mcp/README.md
  • dumpit-mcp/package.json
  • dumpit-mcp/src/index.ts
  • dumpit-mcp/tsconfig.json
  • tsconfig.json

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.

@Rayan9064
Rayan9064 merged commit 08c0426 into main Aug 7, 2026
3 of 5 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