feat(dashboard): add LaunchPix API platform dashboard#39
Conversation
Abdulmuiz44
commented
Jun 3, 2026
- Adds a dark API platform dashboard for LaunchPix.
- Adds dashboard, API keys, usage, billing, and developer navigation UI.
- Adds LaunchPix-specific API platform copy.
- Uses safe placeholders where backend billing/API-key data is not implemented.
- Does not change auth, billing provider config, or secrets.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 32bac40b0b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| return ( | ||
| <Link | ||
| key={item.href} | ||
| href={item.href} |
There was a problem hiding this comment.
Type API sidebar hrefs as routes
With typedRoutes enabled in next.config.ts, widening each nav item to href: string makes this <Link> invalid; npm run build now stops with TS2322: Type 'string' is not assignable to type 'UrlObject | RouteImpl<string>' at this line, so the API dashboard cannot be deployed. Preserve the href literals or type them as Next routes instead of plain string.
Useful? React with 👍 / 👎.
| }) { | ||
| return ( | ||
| <Link | ||
| href={href} |
There was a problem hiding this comment.
Type get-started card hrefs as routes
This prop is also declared as a plain string and then passed to next/link; under the existing typedRoutes setting, npm run typecheck fails with TS2322 here after the sidebar error is fixed, blocking builds for the new dashboard. Type the prop as a Next route/Link href or keep the caller literals from being widened.
Useful? React with 👍 / 👎.
| subscription.credits_remaining > 0 | ||
| ? `${subscription.credits_remaining} credits` | ||
| : MOCK_METRICS.availableCreditsUsd; |
There was a problem hiding this comment.
Show zero credits as credits, not dollars
When a user has exhausted their balance (subscription.credits_remaining === 0), this fallback makes the “Available credits” card display "$0.00" instead of "0 credits", mixing currency with the credit balance while the rest of the app treats credits_remaining as the source of truth. Use the subscription value for zero as well so the dashboard accurately reports the user's credit state.
Useful? React with 👍 / 👎.