Skip to content

feat: turn home into a comprehensive org dashboard - #5006

Open
sagarchhetribird wants to merge 3 commits into
Dokploy:canaryfrom
sagarchhetribird:feat/home-dashboard-overview
Open

feat: turn home into a comprehensive org dashboard#5006
sagarchhetribird wants to merge 3 commits into
Dokploy:canaryfrom
sagarchhetribird:feat/home-dashboard-overview

Conversation

@sagarchhetribird

@sagarchhetribird sagarchhetribird commented Aug 7, 2026

Copy link
Copy Markdown

Summary

  • Expand /dashboard/home beyond welcome + recent deployments into an org overview: KPIs, needs-attention (errored services / failed deploys), deploy queue, recent projects, and a server summary (Dokploy host + remotes, infra health, version).
  • Add deployment.homeSummary and limited/filterable allCentralized support so home no longer over-fetches full deployment history every 10s.
  • Enrich project.homeStats with recent projects, errored services, and Dokploy-host vs remote service counts; prefetch home data on SSR when permitted.
  • Fix user-nav Projects link to go to /dashboard/projects instead of home.

Test plan

  • Open /dashboard/home as owner/admin — KPIs, server summary (Dokploy host + remotes), queue, and recent projects render
  • Confirm version shows a single v prefix (e.g. v0.29.x, not vv…)
  • With no remotes, Dokploy host still appears and remote empty state links to add a server
  • Member without deployment.read — deployments/queue gated; other inventory still loads
  • Member without server.read — remote list gated; self-hosted still shows Dokploy host
  • Force a failed deploy / errored service — Needs attention section appears with links
  • User-nav → Projects lands on /dashboard/projects
  • Deployments page still loads full list via allCentralized (backward compatible)

Made with Cursor

Greptile Summary

The PR turns the home page into an organization dashboard while reducing deployment-history over-fetching and correcting the Projects navigation target.

  • Adds organization KPIs, attention items, deployment summaries, recent projects, queue state, and server health information.
  • Adds permission-aware SSR prefetching and client query gating, including an explicit no-organization state.
  • Introduces bounded and filterable centralized deployment queries plus lightweight deployment counts.
  • Enriches project statistics with service errors, recent projects, and host distribution.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Reviews (3): Last reviewed commit: "fix: gate home dashboard queries until a..." | Re-trigger Greptile

Context used:

Replace the thin welcome + recent-deploys view with inventory KPIs,
attention (failed deploys / errored services), server summary including
the Dokploy host, deploy queue, and recent projects. Add a limited
homeSummary API so the page no longer loads full deployment history.

Co-authored-by: Cursor <cursoragent@cursor.com>
@dosubot dosubot Bot added the size:XXL This PR changes 1000+ lines, ignoring generated files. label Aug 7, 2026
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Comment thread apps/dokploy/pages/dashboard/home.tsx Outdated
Avoid UNAUTHORIZED during /dashboard/home SSR when an authenticated
user has no active organization by only prefetching permissions and
dashboard data when a membership is selected.

Co-authored-by: Cursor <cursoragent@cursor.com>
@sagarchhetribird

Copy link
Copy Markdown
Author

Fixed the Greptile P1: org-scoped SSR prefetches (getPermissions, homeStats, homeSummary, server.all) now only run when session.activeOrganizationId is set. Safe prefetches (isCloud, user.get) still always run.

Comment thread apps/dokploy/components/dashboard/home/show-home.tsx Outdated
Skip org-scoped client queries when organization.active is null and
show an empty state instead of firing UNAUTHORIZED homeStats/permissions
calls after hydration.

Co-authored-by: Cursor <cursoragent@cursor.com>
@sagarchhetribird

Copy link
Copy Markdown
Author

Fixed remaining Greptile P1: ShowHome now waits on organization.active and only enables org-scoped queries (user.get, homeStats, getPermissions, deployments, servers, queue, infra health) when an organization is selected. Without an org it renders an empty state instead of firing UNAUTHORIZED client calls.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XXL This PR changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant