refactor(admin-dash): blade -> react; ui(admin-dash): fit user dashboard - #72
refactor(admin-dash): blade -> react; ui(admin-dash): fit user dashboard#72itzzjustmateo wants to merge 29 commits into
Conversation
- Extend API client with servers, nodes, databases, mounts, buckets CRUD - Consolidate standalone dashboard micro-app into main SPA - Add full CRUD for all admin sections: API, Databases, Buckets, Mounts, Users, Locations, Nodes, and Servers - Refactor settings tabs from useEffect to SWR - Add AdminRouter nav link for Mounts - Remove standalone admin entry from vite.config.ts - Fix TypeScript errors (catch types, unused imports, Recharts casts)
…nto feat/admin-dash-improvement
…rovement # Conflicts: # resources/scripts/components/layout/sidebar/sidebar-modern.css # resources/views/admin/s3/new.blade.php # resources/views/admin/s3/view/details.blade.php # resources/views/admin/s3/view/index.blade.php
|
Broken rn |
Fixed a bug where when viewing a user React crashed
- Custom compact header with inline badges - Profile card with gravatar, email, name - Read-only info tiles with edit-toggle pattern - Servers tab with server list table - Enhanced danger zone with icon header - Pill/segment tab navigation with hugeicons - Support for ?include=servers in API layer - Fixed React hooks ordering (error #310) - Fixed Fractal item response unwrap (no data wrapper)
|
actively working on it :D |
- AdminSettingsContainer: pill/segment tabs with Hugeicons icons - GeneralSettingsTab: profile card, info tiles, edit-toggle, toasts - MailSettingsTab: profile card, SMTP config with edit-toggle, toasts - CaptchaSettingsTab: profile card, provider config, edit-toggle, toasts - DomainsSettingsTab: profile card, styled table, Dialog.Confirm for delete, toasts - BrandingSettingsTab: profile card, Dialog.Confirm for revert, toasts - AdvancedSettingsTab: profile card, HTTP/allocation cards with edit-toggle - Nest/Egg view pages: also remade with same design patterns - AdminSettingsController: user-friendly mail test error messages
Admin Dash Overview wip
|
Looks 🔥 but its buggy as hell |
Mh… I have no issues currently…? What issues do you have? |
|
@naterfute thanks for keeping it upstream again :p |
|
Gonna fix the tests now :D |
|
Bugs/missing thingies/gripes:
Also a few things that could be worth adding now:
Can't wait to see this merged :D |
Ah okay lol I actually had the third issue too, the DNS thing got fixed ig, but I can look at it tomorrow again. The server creation in general is messed up and I am remaking that soon-to-be more similar on how it was before. Gonna look into everything :p |
Copy PNGs from public/assets/images/ into storage/app/public/nests/ and persist the path to nests.icon during seeding. Extends NestCreationService::handle() to accept an optional icon key in $data. Covers Minecraft, Hytale, Source Engine, Rust, Vintage Story, and Voice Servers nests.
…tion handler fatal error - Fix all 216 biome lint/formatting errors across 25+ frontend files (noLabelWithoutControl, noExplicitAny, noSvgWithoutTitle, useButtonType, useTemplate, noUnusedImports, and more) - Add is_dir() guard in EggSeeder to skip missing egg directories gracefully - Wrap Connection resolution in Handler::render() with bound() check to prevent ReflectionException when DatabaseServiceProvider hasn't booted
…olish containers - Dashboard: improve resource health section with gradient dividers and better spacing - Database hosts: catch PDOException in API store/update for user-friendly errors - Database hosts: convert create modal to Dialog overlay with styled error banner - Locations: redesign view with pill-style tabs, back arrow, and card layout - Mounts: add info tooltip with InformationCircleIcon - Users: redesign create modal with reordered fields, language select, cancel/create footer - Remove legacy docker-compose.develop.yml and docker-compose.example.yml
|
I hope I just did not undo anything |
…s history - Add custom tooltips to ResourceGauge, LoadBarChart, CountsBarChart - Replace text action buttons with @hugeicons icon buttons across all admin entity pages - Add @nivo/line chart for metrics timeline with CPU/memory/disk series - Add PHP metrics history ring buffer endpoint for storing samples - Increase dashboard section spacing for better visual breathing room - Standardize icon library usage to @hugeicons across admin panel
…ive mobile/tablet design - Widget framework: 11 widget types, DashboardDataContext for live SWR data, barrel exports - DashboardGrid: react-grid-layout v2 responsive wrapper, vertical card stack on mobile - useDashboardLayout: layout state hook with localStorage + SWR backend persistence - ChartCard: drag handle, remove button, edit-mode styling, responsive padding - WidgetSelectorModal: add-widget dialog with responsive grid - EditModeToggle: customize/done toggle button - AdminBottomNav: mobile bottom navigation (11 admin routes) - AdminDashboardContainer: refactored with grid system, responsive headings, dual card/table for recent servers - SkeletonCards: responsive 2/3/6 column grid with compact mobile padding - PageContentBlock: responsive background padding Co-authored-by: opencode <opencode@opencode.ai>
…docs Backend: - Fix API key creation: auto-assign user_id from authenticated user - Fix allocation creation: send ports array instead of singular port Dashboard: - Remove widget editing system (drag-drop, add/remove, edit mode) - Switch dashboard + bottom nav icons from HugeIcons to Gravity UI - Fix grid: disable dragging, fix tablet overflow, add desktop gap - Migrate to react-grid-layout v2 API Servers: - Complete server creation form (description, overhead memory, backup storage, OOM killer, skip scripts) with collapsible advanced section - Resolve user/node names on server list via SWR lookup maps Nodes: - Add internal FQDN to node create, overview, and settings tabs - Resolve location names on nodes list via SWR lookup map - Replace alert() with toast() for error handling Project: - Add justfile with 31 recipes (dev, build, test, docker, etc.) - Add mise.toml (PHP 8.4, Node 22, pnpm 11.3, just) - Rename LICENSE_MIT to LICENSE_MIT.md - Update README.md with development section and mise/just setup - Update SECURITY.md with version support table (6.0.0+ only)
- Fix all 7 biome check errors (formatting, import sorting, a11y) - Add htmlFor/id to OOM Killer and Skip Scripts checkbox labels - Replace broken .env symlink (→ /app/var/.env) with real .env file so mise/vite resolves APP_URL correctly in local dev - Update mise.toml: PHP 8.5, Node 26, pnpm 11.17, just latest - Keep composer.json at ^8.4 for backwards compatibility - Update Dockerfile to PHP 8.5 base image - Update package.json engines to Node >=26, pnpm@11.17.0
|
I'm sorry, but after careful review of all the code. I don't believe this code is of a quality that I would consider merging into the panel. For starter it fails to use many of the components already defined in other parts of the app, and other than that, I'm not against the use of ai, but this doesn't look like foresight was put behind this implementation. I'll start a branch and start working on this. I'm sorry I didn't review it sooner, but I was busy. |
Okay... D: |
|
I just wanted to say that I stayed up multiple days, just to finish it, but it is your decision |
WIP: Admin dashboard migration and improvements