Thomas Camlong
1065e30c8d
feat(init): unify onboarding step widths with shared layout
...
Replace per-step hardcoded Card widths (384px, 776px, 1024px) with a
consistent 1024px shell defined in _constants.ts. All steps now use an
InitStepCard wrapper set to w=100%, inheriting width from the page shell.
Also updates old-import cards to w=100% for proper width propagation.
2026-05-28 12:15:44 +02:00
Thomas Camlong
0e2441167d
Merge branch 'dev' into feat/add-integration-from-dashboard
...
Integrate dev's centralized Mantine theme in @homarr/ui and reconcile modal grid work.
2026-05-28 11:20:03 +02:00
Thomas
4454e3fb7a
fix: matine ui fixes for concistency ( #5733 )
2026-05-28 10:59:03 +02:00
Thomas
c252b4f9ac
feat(manage): unified management page layout ( #5758 )
2026-05-28 10:56:46 +02:00
Thomas Camlong
2268aa3d99
fix(ui): enforce minimum width on all grid-based select modals
...
Apply miw="min(1400px, 90vw)" to app select and integration select
modals so they never shrink when filtering reduces visible items.
2026-05-28 10:54:32 +02:00
Thomas Camlong
10c2e42172
fix(ui): enforce minimum width on item select modal to prevent resizing
2026-05-28 10:51:47 +02:00
Thomas Camlong
095d40b065
fix(ui): prevent item select grid from collapsing with few results
2026-05-28 10:42:45 +02:00
Thomas Camlong
d0f63b9563
fix(seed): use 10 columns for default dashboard layout
2026-05-28 10:39:24 +02:00
homarr-renovate[bot]
4f2b3cf3ee
chore(deps): update node.js to v24.16.0 ( #5790 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-28 08:09:15 +00:00
Vivaan Dhawan
b19549b601
fix: parse Speedtest Tracker created_at as local time ( #5751 )
2026-05-28 07:48:00 +00:00
homarr-renovate[bot]
a0cc68798d
chore(deps): update mantine monorepo to ^9.2.1 ( #5801 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-28 03:50:55 +00:00
homarr-renovate[bot]
9a538941ee
chore(deps): update dependency ws to ^8.21.0 ( #5804 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-27 23:20:59 +00:00
homarr-renovate[bot]
fc12500b3e
chore(deps): update tanstack-query monorepo to ^5.100.13 ( #5803 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-27 21:45:28 +00:00
homarr-renovate[bot]
64dccec362
chore(deps): update dependency oxfmt to ^0.51.0 ( #5799 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-27 16:46:40 +00:00
ajnart
8cb3c9d12d
style: auto-fix lint and format
2026-05-27 15:32:21 +00:00
Thomas
710187fee1
Merge branch 'dev' into feat/add-integration-from-dashboard
2026-05-27 17:31:10 +02:00
homarr-renovate[bot] and Thomas Camlong
f7ea1b33a0
chore(deps): update mantine monorepo to v9 ( #5411 )
...
Co-authored-by: Thomas Camlong <thomas@ajnart.fr >
2026-05-27 17:29:52 +02:00
Thomas Camlong
0efbe8f6a3
style: format onboard-router with oxfmt
2026-05-27 17:28:55 +02:00
Thomas Camlong
4d801aa231
feat(onboarding): add Docker scanning loading animation and fix hydration
...
- Show animated "Scanning Docker..." indicator with dots loader while
the discovery query is pending
- Add isLoading prop to DockerDiscoveryIndicator
- Fix button hydration mismatch with suppressHydrationWarning
- Add scanning/scanningDescription translation keys
2026-05-27 16:42:24 +02:00
Thomas Camlong
a89479ed6f
fix(onboarding): strict Docker discovery — only running containers with matched icons
...
- Change listContainers to all:false so only running containers are discovered
- Replace loose bestMatch with strictIconMatch (exact or startsWith) to avoid
false positives from short image names matching unrelated icons
- Gate discovered apps behind DB icon match; unmatched containers are hidden
- Add CDN icon URL fallback for matched integrations display
2026-05-27 16:42:14 +02:00
Thomas Camlong
460875345b
fix(onboarding): fallback to CDN icon URL when icons table is empty
...
During fresh onboarding the icons DB table hasn't been populated by the
cron job yet. Fall back to a dashboard-icons CDN URL guess based on
the container image name so apps still get icons for popular services.
2026-05-27 16:28:04 +02:00
Thomas Camlong
d571396fba
fix(onboarding): discover Docker apps even without icon match
...
Containers that don't match a known integration were only added as apps
if they had a matching icon in the DB. Remove the iconUrl requirement
so all non-integration containers appear as selectable apps.
2026-05-27 16:25:45 +02:00
Thomas Camlong
51004f0857
revert changes
2026-05-27 16:23:44 +02:00
Thomas Camlong
1b19248262
fix(ui): revert Modal.extend, not available at runtime
2026-05-27 16:23:06 +02:00
Thomas Camlong
6461d84ec8
fix(ui): use Modal.extend for proper Mantine v7 typing
2026-05-27 16:22:16 +02:00
Thomas Camlong
18db344ed1
fix(security): replace regex with loop to prevent ReDoS
...
CodeQL flagged `/\/+$/` as polynomial-time on repeated slashes.
Use `while (endsWith("/"))` loop instead.
2026-05-27 16:20:19 +02:00
Thomas Camlong
1df84cbccd
feat(onboarding): hide 0-widget integrations and add selectable app grid
...
- Filter out integrations with no widgets from onboarding selection
- Replace single checkbox app toggle with a compact selectable grid
- Each Docker-discovered app is individually toggleable (all on by default)
- Track selected apps by container ID instead of a boolean flag
2026-05-27 15:55:40 +02:00
Thomas Camlong
a6566f74c9
fix: address PR review feedback
...
- Show error notification on setup failure instead of silent reset
- Fix toggleKind stale closure by using prop array directly
- Remove duplicate translations from en-gb.json (falls back to en.json)
- Align seed board columnCount to 12 (codebase default)
- Extract shared placeAllWidgetsAsync helper to @homarr/db/queries
- Remove redundant onboardingFormSchema; reuse formSchema for both paths
- Fix lint errors (optional chain, unused imports, unnecessary conditions)
2026-05-27 15:53:14 +02:00
Thomas Camlong
c97513a61c
chore: trigger deployment
2026-05-27 15:20:33 +02:00
homarr-renovate[bot]
fe3cebb902
chore(deps): update dependency hono@<4.6.5 to >=4.12.22 ( #5797 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-27 13:06:33 +00:00
Thomas Camlong
309ba0590d
feat(onboarding): enhance integration setup with Docker discovery, URL templating, and API key helpers
...
Add automatic Docker container discovery during onboarding to pre-select
and pre-fill integrations. Introduce base URL templating with subdomain/port
modes, API key settings path links, and a curated onboarding list that
hides niche integrations (GitHub, npm, Docker Hub, etc.). Prevent duplicate
widget seeding and remove the timetable widget from defaults.
2026-05-27 14:36:04 +02:00
homarr-renovate[bot]
ba1d213870
chore(deps): update dependency oxlint to ^1.66.0 ( #5798 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-27 10:00:11 +00:00
Thomas
8f03a38de5
perf(boards): parallelize board page data fetching ( #5736 )
2026-05-27 07:44:37 +00:00
605af19cd8
refactor: replace ESLint + Prettier with OXC (oxlint + oxfmt) ( #5741 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
Co-authored-by: Meierschlumpf <63781622+Meierschlumpf@users.noreply.github.com >
2026-05-27 09:37:44 +02:00
homarr-renovate[bot]
b4921af60d
chore(deps): update dependency sass to ^1.100.0 ( #5795 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-27 05:24:00 +00:00
homarr-renovate[bot]
32385206ad
chore(deps): update tiptap monorepo to v3.23.6 ( #5793 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-26 21:03:11 +00:00
homarr-renovate[bot]
7e59ba3d5e
chore(deps): update dependency vite@>=5.0.0 <=5.4.18 to >=8.0.14 ( #5791 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-26 07:57:31 +00:00
Thomas Camlong
1fcc149c91
feat(seed): add demo user seeding with pre-placed widgets on dashboard board
...
- seedBoardWidgetsAsync always places widgets (clock, weather, bookmarks,
integration-linked, app widgets) on the default board
- seedDemoUserAsync creates demo user + admin group, skips onboarding,
reuses the existing dashboard board instead of creating a duplicate
- Fix broken open-collective icon URL in defaultBookmarkApps
2026-05-25 12:42:55 +02:00
Thomas Camlong
9377e4b2f8
Merge remote-tracking branch 'origin/dev' into feat/add-integration-from-dashboard
...
# Conflicts:
# packages/db/migrations/seed.ts
2026-05-25 11:36:33 +02:00
homarr-renovate[bot]
81caaa9d6c
chore(deps): update vitest monorepo to ^4.1.7 ( #5789 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-25 08:30:36 +00:00
homarr-renovate[bot]
09243148da
chore(deps): update dependency ldapts to v8.1.8 ( #5788 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-25 04:03:12 +00:00
homarr-update-contributors[bot]
c7c57887cf
chore: update contributors ( #5771 )
2026-05-24 22:44:36 +02:00
homarr-renovate[bot]
990a924631
chore(deps): update testcontainers-node monorepo to v12 ( #5785 )
2026-05-24 22:09:13 +02:00
homarr-renovate[bot]
83caf3ef4b
chore(deps): update dependency @types/react to v19.2.15 ( #5787 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-24 19:26:04 +00:00
homarr-renovate[bot]
991f07ae51
chore(deps): update tiptap monorepo to v3.23.5 ( #5783 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-24 15:12:39 +00:00
homarr-renovate[bot]
bc05128cd4
chore(deps): update dependency hono@<4.6.5 to >=4.12.21 ( #5782 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-24 13:34:35 +00:00
homarr-renovate[bot]
cf0fb8a879
chore(deps): update dependency hono@<4.6.5 to >=4.12.20 ( #5780 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-24 11:25:35 +00:00
homarr-renovate[bot]
1f31735ee0
chore(deps): update dependency isomorphic-dompurify to ^3.14.0 ( #5779 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-24 10:02:26 +00:00
homarr-crowdin[bot]
ff974bf343
chore(lang): updated translations from crowdin
...
Co-authored-by: Crowdin Homarr <190541745+homarr-crowdin[bot]@users.noreply.github.com>
2026-05-24 02:04:49 +00:00
homarr-renovate[bot]
d42bbfce17
chore(deps): update tanstack-query monorepo to ^5.100.11 ( #5777 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
2026-05-23 20:13:50 +00:00