Skip to content

Feat/revamp - #32

Merged
sunnylqm merged 3 commits into
mainfrom
feat/revamp
Apr 27, 2026
Merged

Feat/revamp#32
sunnylqm merged 3 commits into
mainfrom
feat/revamp

Conversation

@sunnylqm

@sunnylqm sunnylqm commented Apr 27, 2026

Copy link
Copy Markdown
Collaborator

Summary by CodeRabbit

Release Notes

  • New Features

    • Added dedicated apps management page with searchable app grid and quick app switcher in navigation.
    • Introduced daily quota tracking with visual indicators and detailed quota breakdown in user settings.
    • Added detail viewer and advanced filtering for audit logs (search, status, action categories).
    • Enhanced realtime metrics dashboard with improved data visualization and percentages.
  • Improvements

    • Refactored navigation layout for better accessibility.
    • Search filters and pagination now persist in URLs across all pages.
    • Enhanced user profile page with comprehensive quota and usage analytics.

@sunnylqm
sunnylqm merged commit 65a94a0 into main Apr 27, 2026
1 check was pending
@sunnylqm
sunnylqm deleted the feat/revamp branch April 27, 2026 14:58
@coderabbitai

coderabbitai Bot commented Apr 27, 2026

Copy link
Copy Markdown
Contributor

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 57d26811-41d5-4c4c-904b-4e9e1fa8485a

📥 Commits

Reviewing files that changed from the base of the PR and between 437e514 and 981a22d.

⛔ Files ignored due to path filters (1)
  • bun.lock is excluded by !**/*.lock
📒 Files selected for processing (23)
  • package.json
  • src/components/create-app-modal.tsx
  • src/components/daily-check-quota.tsx
  • src/components/footer.tsx
  • src/components/main-layout.tsx
  • src/components/sider.tsx
  • src/components/top-navigation.tsx
  • src/globals.d.ts
  • src/index.css
  • src/pages/admin-apps.tsx
  • src/pages/admin-metrics.tsx
  • src/pages/admin-users.tsx
  • src/pages/apps.tsx
  • src/pages/audit-logs.tsx
  • src/pages/manage/index.tsx
  • src/pages/realtime-metrics.tsx
  • src/pages/user.tsx
  • src/router.tsx
  • src/services/api.ts
  • src/services/auth.ts
  • src/types.ts
  • src/utils/helper.ts
  • src/utils/hooks.ts

📝 Walkthrough

Walkthrough

This PR restructures the application's navigation architecture by replacing the sidebar/header implementation with new delegated components, migrates state management for search, pagination, and filters from local component state to URL-backed query parameters across multiple pages, introduces new quota display and app management components, and creates a dedicated apps listing page.

Changes

Cohort / File(s) Summary
Navigation & Layout Restructure
src/components/main-layout.tsx, src/components/top-navigation.tsx, src/components/sider.tsx
Moves header/navigation rendering from inline MainLayout to delegated TopNavigation component; adds new TopNavigation with responsive menu (desktop/mobile), authenticated nav items, and integrated AppSwitcher (popover/drawer for app search and creation); deletes Sider and SiderDrawer components.
New Components
src/components/create-app-modal.tsx, src/components/daily-check-quota.tsx
Introduces showCreateAppModal() helper for creating apps via modal with form validation; adds DailyCheckQuota component for displaying user quota metrics with progress bar, warnings, and plan details.
Footer & Types
src/components/footer.tsx, src/types.ts, src/globals.d.ts
Adds shrink-0 utility class to footer; removes SiderMenuProps type and global declaration; extends User type with optional last7dCounts field.
Admin Pages with URL State
src/pages/admin-apps.tsx, src/pages/admin-users.tsx, src/pages/admin-metrics.tsx
Migrates search, pagination, and filters from local state to URL query parameters with debouncing; adds URL-driven sorting/filtering; expands row actions (admin-apps adds versions and realtime metrics links).
Audit Logs Refactor
src/pages/audit-logs.tsx
Switches pagination/filtering/search to URL-backed state; adds free-text search across multiple fields, categorized status filtering, detail drawer panel; updates table columns and Excel export format to include sanitized preview data.
New Apps Listing
src/pages/apps.tsx
Creates new page component for displaying app list with client-side search, aggregate metrics, and app cards; integrates showCreateAppModal for app creation with recent-app tracking.
User & Realtime Pages
src/pages/user.tsx, src/pages/realtime-metrics.tsx, src/pages/manage/index.tsx
Extends user panel with per-app quota metrics and batch queries; adds logout handling and detailed quota UI; updates realtime metrics tooltip and share percentage calculations; adds navigation button to realtime metrics from app management page.
Routing & Services
src/router.tsx, src/services/auth.ts, src/services/api.ts
Changes rootRouterPath.apps from '/apps' to '/'; redirects to apps page instead of user page; updates auth redirect logic; adds defensive cache handling and returns created app ID from createApp.
Utilities & Hooks
src/utils/helper.ts, src/utils/hooks.ts
Adds getRecentAppIds() and rememberRecentApp() utilities for localStorage-backed recent app tracking; exposes isLoading state from useAppList hook.
Styling & Config
src/index.css, package.json
Adds global link styling to disable text-decoration; updates PUBLIC_API env variable; upgrades @rsbuild/* to v2, bumps @tanstack/react-query, react-router-dom, and dev dependencies.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

Possibly related PRs

Poem

🐰 The navigation hops to the top with pride,
State lives in URLs now, far and wide,
Sidebars vanish, new components bloom,
Apps find their listing room,
Quotas sparkle, recents remembered true! ✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/revamp

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant