Migrate Dashboard from Nextjs to TanStack#79
Merged
Conversation
|
Too many files changed for review. ( |
Add connected accounts and active session management under features/settings/security with TanStack Query instead of SWR.
Add name/email form, avatar upload, and danger-zone chrome under features/settings/profile using TanStack Query session invalidation.
Disabled error buttons were greyed out by shared disabled styles.
Add workspace name, logo upload, slug availability checks, and danger zone under features/settings/workspace using TanStack Query.
Add members/invites management under features/settings/teams with TanStack Query, and remove the unused workspace slug field.
Add current plan, upgrade CTA, switch-plan modal, and full plan comparison using @reloop/pricing and TanStack Query usage fetch.
…code Port settings usage and SMTP with Bright highlighting, introduce a new integrations hub, and fix line-number pop-in on first paint.
Port API key management with TanStack Query, create/rotate/delete modals, and Bright secret display. Strip integrations native section and shadows while keeping brand icon colors.
Improve rotate modal confirmation/reveal, fix row actions double-click and restore hover animation, then split api-keys into list/table/filters/ modals/hooks folders for readability.
Port the detail view with header metadata, enable/disable, rotate, edit, and delete flows. List rows link to /api-keys/$apiKeyId; activity logs stay a placeholder until the logs feature is ported.
The $apiKeyId route is a child of /api-keys, but the parent rendered the list page with no Outlet so the detail never appeared. Match contacts/ emails: layout Outlet, index for the list, nested $apiKeyId for detail.
Add the logs feature with outcome filters, date range, status filter, split-panel inspection, mobile drawer, and full detail route. Wire API key detail activity to LogList filtered by actor_id.
Add domain management with React Query: list/filter/pagination, add domain form, DNS setup flow, detail page with records/config tabs, verify and delete. Routes use Outlet layouts for nested paths.
Restore the two-column layout from the Next app: sticky domain-variant preview on the right, advanced options card, and matching CTA row.
Add contacts shell with tabs, React Query lists, and create/edit/delete modals for contacts, groups, properties, and channels. Detail routes are deferred; row actions open edit/delete modals for now.
Add contact and group detail routes with activity, manage-members modal, and list navigation. Restore channels list right-side subscriber preview.
Add emails shell with tabs, filters, tables for outbound logs and inbound messages. Index redirects to sent; detail is a temporary stub.
Ensure sent/received tabs and page chrome render for nested email routes.
Replace the detail stub with full delivery timeline, HTML/plain tabs, error classification, headers, and not-found state.
Add metrics page with deliverability composed chart, bounce/complaint rate charts, domain and date filters, and recharts dependency.
Add webhook management with endpoint table, create form, detail page with delivery logs, secret rotation, and event tester. React Query replaces SWR; routes nest under /webhooks.
Align rows with contacts/api-keys chrome: icon endpoint cell, soft event pills, status with icons, delivery health column, and stable row actions.
…lumn Drop name and events from the list; show URL, status, health, and last trigger.
Add template grid with TipTap email previews, create/duplicate/delete, and a detail page with rename and live content preview. Full visual builder remains on Next for a later port.
Bring over TipTap/react-email builder with inspector, code/history panels, collaboration hooks, versions, and variables. Full-screen editor chrome outside the main sidebar; React Query SWR-compat layer.
Wire Agent Inbox list under /agent-inbox and full-screen mailbox UI under /inbox/$mailboxId with folder routes, TanStack navigation, and React Query SWR-compat fetching. Hide dashboard chrome for mailbox views to match Next.
Add localStorage-backed workflows list and React Flow editor under /workflows and /workflows/$workflowId, wired with TanStack navigation and the active organization hook. Install @xyflow/react for the canvas.
Remove the header settings icon. Wire Ask AI and Support header actions to the slide-in panel with mock AI chat, live support websocket chat, and unread badge via React Query.
Add ⌘K command palette, wire multi-language API details drawers into contacts/API keys/domain/webhooks headers, and open the Support panel from billing plan-change CTAs instead of a coming-soon toast.
Replace the signed-in placeholder with the Next-style overview: activity chart, emails, agent inbox, domains, audit logs, webhooks, and integration cards, using TanStack navigation and React Query.
…t component files
pranavp10
force-pushed
the
next-js-to-tanstack
branch
from
July 16, 2026 16:11
405aeaf to
a882bba
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.