tpmjs/apps/web/src/components
Ajax Davis a3f1f3935e feat: add API key authentication system and update documentation
API Key System:
- Add TpmjsApiKey, ApiUsageRecord, ApiUsageSummary models to schema
- Create API key utilities (generate, hash, mask with tpmjs_sk_ prefix)
- Implement dual auth middleware (session + API key)
- Add rate limiting with Vercel KV
- Create CRUD endpoints for API key management
- Add usage tracking and analytics endpoint
- Build API key management UI in dashboard
- Build usage dashboard with charts

Route Protection:
- Require auth for MCP endpoints (mcp:execute scope)
- Require auth for agent chat (agent:chat scope)
- Require auth for bridge connections (bridge:connect scope)

Documentation Updates:
- Update all curl/fetch examples with Authorization header
- Document API key format, scopes, and rate limits
- Update PRD-MCP-BRIDGE.md, MCP-AGGREGATOR-DESIGN.md
- Update API docs page with auth requirements
- Update HOW_TO_PUBLISH_A_TOOL.md
2026-01-13 04:45:52 +10:00
..
auth feat: add Better Auth with email/password authentication 2026-01-01 20:45:10 +10:00
collections feat: add collections feature for organizing tools 2026-01-02 02:35:32 +10:00
dashboard feat: add API key authentication system and update documentation 2026-01-13 04:45:52 +10:00
docs feat: enhance bridge diagram with animations, gradients, and visual polish 2026-01-13 02:25:41 +10:00
home fix: resolve new ESLint rules from eslint-plugin-react-hooks update 2026-01-09 23:25:15 +10:00
providers fix(lint): configure Biome to properly ignore build directories 2025-11-26 22:49:45 +10:00
stats feat: add comprehensive stats dashboard with D3 charts 2025-12-28 17:08:19 +10:00
AppFooter.tsx chore: prepare for Hacker News launch 2025-12-28 11:46:59 +10:00
AppHeader.tsx feat: add API Reference and Custom Executors to developer menu 2026-01-11 01:08:36 +10:00
ArchitectureDiagram.tsx feat: add npm-like features to tool detail page and update keyword to tpmjs 2025-12-29 21:30:42 +10:00
AuthHeader.tsx feat: add minimal header to auth pages 2026-01-02 01:28:04 +10:00
BundleSize.tsx feat: add npm-like features to tool detail page and update keyword to tpmjs 2025-12-29 21:30:42 +10:00
CloneButton.tsx feat: add usernames, pretty URLs, cloning, and sharing docs 2026-01-08 20:47:08 +10:00
CopyButton.tsx feat: redesign public pages with virtualized tables 2026-01-07 21:55:13 +10:00
CopyDropdown.tsx fix: update MCP copy URLs to use new /api/mcp/{username}/{slug} format 2026-01-09 08:14:39 +10:00
DashboardActivityStream.tsx feat: implement user activity stream and multiple API improvements 2026-01-08 04:11:01 +10:00
DownloadSparkline.tsx feat: add npm-like features to tool detail page and update keyword to tpmjs 2025-12-29 21:30:42 +10:00
EcosystemDiagram.tsx fix: mobile UI bugs and documentation improvements 2026-01-07 20:58:33 +10:00
EnvVarsEditor.tsx feat: add reusable EnvVarsEditor component with paste .env feature 2026-01-12 05:04:03 +10:00
ExecutorConfigPanel.tsx feat: add hot-swappable executor support for collections and agents 2026-01-09 00:19:22 +10:00
LikeButton.tsx feat: show tooltip for like button when not logged in 2026-01-08 01:20:16 +10:00
Markdown.tsx fix: replace hardcoded colors with theme-aware tokens in Markdown component 2026-01-07 13:46:28 +10:00
MobileMenu.tsx feat: add API Reference and Custom Executors to developer menu 2026-01-11 01:08:36 +10:00
PackageManagerSelector.tsx fix: resolve new ESLint rules from eslint-plugin-react-hooks update 2026-01-09 23:25:15 +10:00
SDKFlowDiagram.tsx chore: prepare for Hacker News launch 2025-12-28 11:46:59 +10:00
ThemeToggle.tsx fix: resolve new ESLint rules from eslint-plugin-react-hooks update 2026-01-09 23:25:15 +10:00
TokenBreakdown.tsx feat: add interactive tool playground with AI-powered execution 2025-11-30 00:36:05 +10:00
ToolPlayground.tsx refactor: rename exportName to name across entire codebase 2025-12-17 17:19:21 +10:00