189 Commits
Author SHA1 Message Date
Andras Bacsai 17957fbb4c feat(ui): restyle sidebar footer user menu and toggle icon
Put the user menu above the toggle in the collapsed sidebar, make the
user menu a full-width 3D button with rounded corners, and use a new
sidebar toggle icon everywhere.
2026-10-09 13:50:07 +02:00
Andras Bacsai 0393d4e931 fix(ui): move deployments indicator into the sidebar
The floating bottom-left pill and its expanded list covered page content.

- Desktop: show a compact 'N deployments' row in the sticky sidebar footer
  (spinner with count badge when the sidebar is collapsed); the list opens
  to the right of the sidebar
- Mobile: show a spinner with the count in the top bar; the list opens
  below the top bar
- Poll only the copy visible at the current breakpoint (wire:poll.visible)
- Show the indicator on the dashboard too, and drop the path-based
  visibility logic and its navigate round trip
2026-09-29 09:58:54 +02:00
Andras BacsaiandClaude Opus 5.5 e62658467f feat(ui): add app icons and web manifest
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-28 11:09:13 +02:00
Andras Bacsai a5564320ab fix: improve terminal and realtime session handling
Commit creation was blocked because the shared Git metadata is read-only in this session. All 14 changes remain staged and ready to commit.
2026-09-22 20:17:14 +02:00
Andras Bacsai 67dd34bce7 Merge remote-tracking branch 'origin/next' into reverb-realtime-migration 2026-09-21 21:32:19 +02:00
Andras Bacsai 6a8cee4630 Merge remote-tracking branch 'origin/next' into automation/sync-main-to-next 2026-09-14 13:26:19 +02:00
Andras Bacsai fbb569a4b3 fix(ui): respect sidebar toggle and show application domains
Honor an explicit sidebarCollapsed preference instead of always auto-collapsing with a second nav. Show the primary domain on the application access card, use a persisted GitLab name in the page title after delete, and shrink the compose view switcher.
2026-09-10 08:36:15 +02:00
Andras Bacsai 9708b78bee Merge remote-tracking branch 'origin/next' into automation/sync-main-to-next
# Conflicts:
#	resources/css/app.css
2026-09-08 13:47:44 +02:00
Andras Bacsai 4a3dc11958 feat(ui): polish env editor, error buttons, and modal layout 2026-09-08 11:49:02 +02:00
Andras Bacsai 0afa59bc02 fix(ui): keep settings subnav in-page and persist sidebar collapse
Scroll active application settings sections with buttons instead of Livewire navigation, persist sidebar collapse even with auto-collapse, drop the unused modal id, and right-align destination status.
2026-09-08 09:20:38 +02:00
Aditya Tripathi 9fbeb352a4 feat(ui): auto-collapse sidebar on settings pages; fixed full-height rail
Auto-collapse the main sidebar on pages that have a settings rail (follows
the page when enabled; expanded elsewhere), with an animated slide and a
profile-menu toggle (localStorage) to disable it.

Rework the settings rail to position:fixed like the main sidebar: full
height (3rem -> viewport bottom), left tracks the sidebar's collapsing
width via --sidebar-w, content pinned to grid column 2. Fixes the sticky
scroll crop and top/bottom gaps.
2026-09-08 07:05:01 +02:00
Aditya Tripathi 6bb8fcd5c7 feat(theme): extract shared Alpine theme controls into components
Introduce theme-controls and theme-controls/picker Blade components
housing the theme/page-width/custom-color logic previously duplicated
in top-user-menu and profile/appearance, and fix custom theme surface
colors to use oklch mixes instead of raw white/black/hex for correct
contrast.
2026-09-08 07:05:01 +02:00
Aditya Tripathi 160be6f571 feat(ui): white settings rail in light mode, unify shadows, mobile sheet polish
- Settings rail (application-settings-navigation) is now white in light mode
  instead of a gray fill; separation comes from the hairline ring + soft lift.
- Mobile slide-over: replace the heavy shadow-modal with a soft left-casting
  shadow (scrim handles content dimming, shadcn-style) + rounded-l corners.
- Unify scattered shadow-lg usages onto the shadow-dropdown / shadow-modal
  tokens across dropdowns, tooltips, popups and slide-over.
- Light-mode semantic text + tertiary/nav contrast tuning for WCAG AA.
- status-summary: support right-aligned dropdown; use it on the app heading.
2026-09-08 07:05:01 +02:00
Aditya Tripathi 28fe3384ed feat(ui): section-heading component, dashboard spacing, sidebar-toggle icon
- Add reusable <x-section-heading> (title, muted subtitle, optional action)
  with a compact contained "View all" button; migrate dashboard Projects/
  Servers/Deployments and shared-variables environment headers to it.
- Dashboard: hide the empty active-deployments node so it no longer adds a
  gap above the first section; align section actions with the title row.
- Mobile: use the panel-left sidebar-toggle icon (matching desktop) as the
  drawer trigger instead of a hamburger.
2026-09-08 07:04:48 +02:00
Aditya Tripathi d91d2fa35d feat(ui): WCAG contrast, neutral oklch surface system, and mobile nav overhaul
Design tokens
- Fix WCAG AA text failures: darken light muted text and lighten dark
  tertiary text so 13-14px copy clears 4.5:1 on every surface.
- Rebuild the dark surface ladder in correct values (oklch compresses to
  near-black below ~15%), giving visible steps: content, chrome, cards.
- Establish a 3-layer shell (deep content, lighter sidebar/topbar chrome,
  lifted cards) with crisp hairline rings and a restrained card shadow.
- Unify every surface to one neutral temperature (pure gray); neutralize
  the cool-tinted sidebar text and legacy surface tokens.
- Convert all color tokens to oklch (neutrals + brand).
- Unify inputs to the recessed token; fix invisible dark placeholders.
- One shared --shadow-dropdown for all menus/listboxes/command palette.

Settings sidebar
- Sticky contained-card rail with subtle scrollbar; collapsible sub-section
  groups (active open by default), cross-page section links.
- Mobile: collapsible disclosure with animated open, outside/Escape dismiss,
  press feedback, and reduced-motion support.

Mobile
- Consolidate the resource header (title + status + links on one row).
- Tighten settings-page vertical rhythm.
- Rebuild the main sidebar as an animated shadcn-style sheet (slide/fade,
  Escape, scroll lock, in-panel close, close-on-navigate).

Fixes
- #11532: selected server invisible in the light-mode terminal toolbar.

Docs: update DESIGN.md tokens, shell layering, and temperature rules.
2026-09-08 07:04:48 +02:00
Andras Bacsai da91ef1578 Merge remote-tracking branch 'origin/next' into reverb-realtime-migration 2026-08-25 20:02:36 +02:00
peaklabs-dev 58d074721c Merge remote-tracking branch 'origin/main' into next 2026-08-24 19:47:51 +02:00
Andras Bacsai c1219576cf feat(livewire): handle infrastructure request failures with toast
Add a local preview route and test coverage for proxy-style failures, suppressing raw Livewire error responses and showing a user-friendly toast after gestures.
2026-08-23 13:51:22 +02:00
Andras Bacsai ca5fcce39b Reapply "Merge branch 'next' into main"
This reverts commit 7bbd91175f.
2026-08-21 12:15:46 +02:00
Andras Bacsai 7bbd91175f Revert "Merge branch 'next' into main"
This reverts commit 2598f3e4c8, reversing
changes made to 83f1a2e503.
2026-08-21 12:12:56 +02:00
peaklabs-dev bd6398e649 chore: remove global copyToClipboard helper 2026-08-19 15:11:49 +02:00
Andras Bacsai 22f0af8d0e feat(platform): support SMTP EHLO, page-preserving teams, and upgrades 2026-08-19 11:41:41 +02:00
Andras Bacsai e3ff6bef07 Merge remote-tracking branch 'origin/next' into reverb-realtime-migration 2026-08-18 19:56:33 +02:00
Andras Bacsai 84021504b3 feat(ui): show Coolify version in mobile sidebar 2026-08-16 21:17:08 +02:00
Andras Bacsai bd79f4ec91 fix(ui): refine breadcrumb search icon and header border 2026-08-16 21:10:15 +02:00
Andras Bacsai 6ad9605734 fix(ui): improve dark-mode loading contrast and remove header borders
Use the warning accent for dark-mode loading indicators and simplify desktop navigation chrome by removing sidebar and top-bar separator borders. Add regression coverage for loading contrast and checkpoint spinner markup.
2026-08-16 21:00:33 +02:00
Andras Bacsai 5b517f21be feat(ui): add configurable page widths and searchable controls
Add full-width and centered layout preferences across the app shell and workspaces.
Replace page-size selects with dropdowns and add searchable breadcrumb switching.
2026-08-16 20:54:50 +02:00
Andras Bacsai b976d19f25 fix(ui): improve dropdown positioning and empty backup states
Refactor dropdown behavior, add sorted resource selection to breadcrumbs, and show an empty state when no backup executions exist.
2026-08-16 19:19:04 +02:00
Andras Bacsai 9729e765b4 fix(ui): prevent floating dropdown Alpine scope errors (#11311) 2026-08-16 13:44:30 +02:00
Andras Bacsai fd5eb3e0cd feat(project): add icons and improve persistent volume management
Add project icon storage and serving with local/S3 support, prevent deletion of compose-managed volumes, and optimize volume backups. Refine project and backup UI components with consistent styling and coverage.
2026-08-13 22:56:52 +02:00
Andras Bacsai 882e25e072 fix(ui): reserve scrollbar space and animate event multiselect
Always reserve vertical scrollbar space on base and v5 body
layouts to prevent content shift. Match notification event
multiselect panel open/close transitions to other listboxes.
2026-08-13 09:17:37 +02:00
Andras Bacsai 8e6e2b099a feat(ui): dock configuration warnings in the navigation HUD 2026-08-12 16:24:01 +02:00
Andras Bacsai 8264129f03 fix(ui): raise top bar above open service actions 2026-08-12 11:32:00 +02:00
Andras Bacsai 262ad8981a feat(ui): unify status summaries, tooltips, and resource headings
Add shared status-summary and icon-tooltip components and wire them into
application, service, and database headings, breadcrumbs, and previews.
Badge production and PR domain links, prefer helper popups below the
trigger, keep full wire targets for button loading, and cover the UI
with feature tests.
2026-08-06 18:15:58 +02:00
Andras Bacsai 6b41899d5b feat(ui): add custom theme color and polish light-mode theming
Support a custom accent theme across nav, terminal, scrollbars, and loaders.
Improve light-mode tokens, helper popup placement, and theme persistence
(including purple→custom migration). Cover with appearance and scrollbar tests.
2026-08-06 16:59:41 +02:00
Andras Bacsai 2a5197fb30 feat(ui): add shared table controls and multi-select filters
Introduce x-table toolbar/search/filter/sort/loading components and
multi-select deployment history filters with OR within groups and AND
across groups. Add live database/service status for breadcrumbs, shared
variables layout controls, logs viewer toolbar polish, and infrastructure
list filter consistency. Document patterns in UI_REDESIGN.md and cover
with feature tests.
2026-08-06 15:37:30 +02:00
Andras Bacsai bb83c1e3be feat(ui): polish domains UX and dark-mode loading accents
Group service domain tables with inline redirect controls, live-save
redirects without full refreshes, and only auto-pair www hosts when a
www redirect is active. Align helper tooltips, server-timing HUD, and
loading spinners with dark-theme accents; default theme-color to dark.
2026-08-06 13:18:46 +02:00
Andras Bacsai 8e57a9ab6b feat(ui): align auth pages to shared shell and truncate team names
Move email verification and team invitation into x-auth.shell with
shared guidance/alert patterns. Truncate long team names in the mobile
header switcher so actions stay visible. Cover both with markup tests.
2026-08-05 21:35:13 +02:00
Andras Bacsai 4d35c63d89 feat(ui): show internal hostname and densify config UI
Add an application Internal access section that loads the running
container hostname (skipped for Compose apps), densify configuration
diff and popup-small defaults, dock the server-timing HUD into the
mobile top bar, restyle the 2FA challenge with the auth shell, and
enforce 16px mobile form fonts to prevent iOS zoom.
2026-08-05 21:24:25 +02:00
Andras Bacsai ec165412c3 feat(ui): dock resource actions in top bar, user menu in sidebar
Teleport application/database/service heading actions into a fixed
#resource-action-hud-slot so they no longer overlay page content.
Render the account menu in the sidebar footer (with collapse-aware
layout) instead of the header, and drop the project card hover arrow.
2026-08-05 20:17:21 +02:00
Andras Bacsai 5de6f97256 feat(ui): unify resource nav sidebars and polish project layouts
Extract application/database/service configuration sidebars and
unified headings; improve clone-to-environment, embedded deployments,
storage actions, OAuth icons, terminal, and shared form components.
2026-08-05 17:56:59 +02:00
Andras Bacsai a7a06aa6c8 feat(ui): polish domains, storage, env vars and resource nav
Improve project resource UIs: sort domains by DNS failure, stop re-adding www pairs on refresh, lazy-load storage tabs with counts, tighten env-var tables, keep application tabs active across Livewire polls, unify database type labels, and update related CSS/JS and tests.
2026-08-05 13:50:11 +02:00
Andras Bacsai dbc6f5e08c fix(realtime): force-WS option and polish connection popup UI
Add PUSHER_FORCE_WS so Echo/Pusher can prefer plain WebSocket
transports, redesign the real-time connection warning popup, and
give copy-button inputs durable right padding in settings forms.
2026-08-04 19:36:36 +02:00
Andras BacsaiandShadowArcanist 8ae56587d5 feat(ui): Shadow UI redesign, domain management, and DNS autoconfigure (#11119)
Co-authored-by: ShadowArcanist <162910371+ShadowArcanist@users.noreply.github.com>
2026-08-03 23:11:54 +02:00
Andras Bacsai f6d06fc95c Merge remote-tracking branch 'origin/next' into reverb-realtime-migration 2026-07-14 14:23:42 +02:00
Andras Bacsai dd10a90d8c fix(meta): update social preview image URL 2026-07-10 10:48:06 +02:00
Andras Bacsai 3a49baad19 feat(realtime): replace Soketi image with bundled Reverb
Run Laravel Reverb and the terminal server inside the Coolify container instead of shipping a separate coolify-realtime image. Update compose files, proxy routing, cleanup behavior, and packaging tests for the embedded realtime services.
2026-06-03 15:43:20 +02:00
Andras Bacsai 88622ba7ea fix(ui): prevent persisted sidebar restore animation
Remove Railpack example applications from the default seed data and update
seed tests to assert they are no longer created.
2026-06-02 11:54:38 +02:00
Andras Bacsai 29b372d17a fix(echo): support default export constructor
Handle both direct and default Echo exports when initializing the Pusher broadcaster.
2026-05-22 13:53:35 +02:00
Andras Bacsai f8849aba73 feat(deployments): track application configuration diffs
Store deployment configuration snapshots on application deployment queues and compare them against the current application state. Surface grouped pending changes in the configuration checker and use build-impact diffs to decide when an existing image can skip the build step.
2026-05-13 09:58:58 +02:00