fix(apps): improve empty state UX when user has no apps#1747
fix(apps): improve empty state UX when user has no apps#1747ToriChanIntegration wants to merge 3 commits intoCap-go:mainfrom
Conversation
Hide the empty table that appeared to load infinitely when no apps exist. Replace the confusing "Start using: Capgo!" banner with a clean, centered empty state showing a clear "Add your first app" heading and action buttons. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (2)
📒 Files selected for processing (2)
📝 WalkthroughWalkthroughAdds an "add-your-first-app" localization key across multiple locale files, expands English translations with SSO and email-verification keys, and changes the apps page to show a new empty state and updated AppTable props/events when apps exist. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Suggested labels
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@messages/en.json`:
- Line 1494: Update the user-facing label for the localization key
"sso-reactivate" in messages/en.json to use "Reactivate" (no hyphen) instead of
"Re-activate" so it reads consistently with other labels like "Activate SSO" and
"Deactivate"; locate the "sso-reactivate" entry and replace its value
accordingly.
In `@src/pages/apps.vue`:
- Around line 165-166: The empty-state branch currently uses v-if="totalApps ===
0 && !searchQuery" and can flash when a refresh is in flight; update the
condition to also require the table load to be finished (e.g., include
!isTableLoading) so the "Add your first app" onboarding only shows once
getMyApps() has resolved; change the v-if to check totalApps === 0 &&
!searchQuery && !isTableLoading and ensure isTableLoading is set around
getMyApps() calls.
ℹ️ Review info
⚙️ Run configuration
Configuration used: defaults
Review profile: CHILL
Plan: Pro
Run ID: 1f7b357e-f41b-4975-b498-792f82b22d68
📒 Files selected for processing (16)
messages/de.jsonmessages/en.jsonmessages/es.jsonmessages/fr.jsonmessages/hi.jsonmessages/id.jsonmessages/it.jsonmessages/ja.jsonmessages/ko.jsonmessages/pl.jsonmessages/pt-br.jsonmessages/ru.jsonmessages/tr.jsonmessages/vi.jsonmessages/zh-cn.jsonsrc/pages/apps.vue
Screenshots - Empty State (After Changes)Screenshots showing the new centered empty state when user has no apps. Light mode: Changes visible:
|
Addresses CodeRabbit review: prevent empty state flash when clearing a search by checking !isTableLoading before showing the onboarding card. Also fixes "Re-activate" → "Reactivate" copy inconsistency. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|





Summary
v-elseinstead of always visible)Test plan
/appswith an account that has zero apps — should see centered empty state with "Add your first app" heading, not the loading table/app/new/appswith an account that has apps — should see the normal app table as before🤖 Generated with Claude Code
Summary by CodeRabbit
New Features
Documentation