Thomas Camlong
c9769bf530
feat(beszel): add SSE subscription endpoint and per-period cache TTL
...
- Add subscribeSystemStats tRPC subscription bridging PocketBase SSE
- Add subscribeRealtimeMetrics to BeszelIntegration with SSE parsing
- Add error handling: try/catch in subscription, response check in topic POST
- Add cacheDurationForInput to request handler for per-period cache TTL
- Add mock subscribeRealtimeMetrics with 1s interval for dev testing
2026-06-15 14:58:47 +02:00
Thomas
a42af0e678
fix(boards): add permissions to board summary schema to fix manage page crash ( #5917 )
...
* fix(boards): add permissions to board summary schema to fix manage page crash
The getAllBoards query fetches userPermissions and groupPermissions
from the DB, but boardSummarySchema (the output validator) did not
include them. tRPC stripped the fields, causing a TypeError when
getBoardPermissionsAsync called .some() on undefined.
* fix(backup): cast Buffer to Uint8Array for NextResponse body
Node 24 narrowed the BodyInit type, making Buffer incompatible.
Wrapping in Uint8Array satisfies the type constraint.
* fix(lint): remove forbidden non-null assertions across backup and board code
Replace non-null assertions with safe guards, optional chaining, and
for-of iteration so oxlint passes in CI. Also remove unused Collapse import.
2026-06-10 19:51:56 +02:00
Thomas
aecbca2b81
feat: custom widgets ( #5889 )
2026-06-10 18:58:14 +02:00
Thomas
74443a49b2
feat(ui): add global query cache leveraging Redis ( #5811 )
2026-06-10 18:52:06 +02:00
Thomas
6baff7be3d
feat: add MCP server for AI assistant integration ( #5882 )
2026-06-10 18:28:34 +02:00
Thomas
d77c6f8d4e
feat: add Uptime Kuma, Audiobookshelf, Paperless-ngx, and Navidrome integrations ( #5910 )
2026-06-10 18:27:24 +02:00
Thomas
a4db9cf0dc
feat(beszel): add Beszel integration with system monitoring widgets ( #5900 )
2026-06-10 18:27:05 +02:00
Thomas
484b8cf9f1
fix: gracefully skip widgets with unknown kind instead of crashing ( #5915 )
2026-06-10 18:19:13 +02:00
Thomas Camlong
68f24e34d5
fix: disable onboarding tours when demo mode is enabled
...
Return completed tour status in demo mode so board and manage tours do not start for demo users.
2026-06-05 18:02:08 +02:00
Thomas and copilot-swe-agent[bot]
dbf021e04a
feat(docker): add container logs modal and stats columns ( #4807 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
2026-06-05 16:57:26 +02:00
Thomas
0b663a7fc6
feat(onboarding): guided management and board tours ( #5756 )
2026-06-05 16:54:50 +02:00
Afonso Jorge Ramos
0dc2558faf
feat: add PeaNUT integration and UPS monitoring widget ( #5862 )
2026-06-05 16:51:09 +02:00
Thomas
dd7a4908a3
feat(onboarding): enhance integration setup with Docker discovery and URL templating ( #5607 )
2026-06-05 16:50:35 +02:00
Thomas
0a6467979a
feat: add comprehensive demo mode with mock integrations ( #5870 )
2026-06-05 16:36:45 +02:00
Thomas and Meier Lukas
25d964a197
refactor(spotlight): registry-driven CMDK preferences ( #5817 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-06-05 16:26:48 +02:00
Thomas
3d3e3059a9
feat: media request search as first-class spotlight mode ( #5823 )
2026-06-05 16:09:14 +02:00
Thomas
fd10788838
fix(auth): relax password complexity requirements to suggestions-only ( #5764 )
2026-06-04 07:56:34 +02:00
Meier Lukas
6feb37dfd4
Merge branch 'main' into next
2026-05-08 23:46:21 +02:00
Ashton Batty and Meier Lukas
56af6bcaf0
feat(docker): Podman compatibility, multi-socket support, per-host error isolation ( #5425 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-05-08 17:31:56 +02:00
44bd16d677
fix(calendar): keep working integrations when one fails ( #5629 )
...
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com >
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-05-07 22:02:21 +02:00
Thomas and Meier Lukas
b5c316b825
feat(spotlight): rework !bang search UX ( #4813 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-05-07 18:38:40 +02:00
43cc68bdd4
feat: add Umami Analytics integration and widget ( #5362 )
...
Co-authored-by: Josh G <febrile42@users.noreply.github.com >
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
Co-authored-by: Thomas <thomas@ajnart.fr >
2026-05-07 17:50:58 +02:00
homarr-renovate[bot] and Meier Lukas
a183339063
chore(deps): update dependency eslint to v10 ( #5038 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-05-02 21:41:16 +02:00
Meier Lukas
7561462594
Merge branch 'main' into next
2026-05-01 22:30:33 +02:00
Meier Lukas and Copilot
a1aa5505a3
perf(memory): combine 3 node processes into one ( #5600 )
...
Co-authored-by: Copilot <copilot@github.com >
2026-05-01 16:35:11 +02:00
Meier Lukas
e8edc203b6
fix: migrate from node-cron to croner ( #5407 )
2026-05-01 16:21:38 +02:00
Meier Lukas and Copilot
ce8e330c82
fix(openapi): openapi document empty ( #5579 )
...
Co-authored-by: Copilot <copilot@github.com >
2026-04-29 23:29:42 +02:00
Meier Lukas
2454cac7be
fix(security): remove salt from database ( #5412 )
2026-04-10 20:48:20 +02:00
7879b31630
feat: Anchor integration and Anchor Note widget ( #5040 )
...
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-04-10 20:43:43 +02:00
Kyle and Meier Lukas
22d599c0cf
feat: speedtest tracker integration ( #5363 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-04-10 19:04:42 +02:00
Meier Lukas
6ec058c835
feat(rss-feed): add optional poster ( #5452 )
2026-04-10 18:11:20 +02:00
Meier Lukas
faffb818f9
feat(rss-feed): add periodic live updates ( #5449 )
2026-04-09 22:45:44 +02:00
Meier Lukas
abb2dfc92a
feat(integrations): add search.ch integration with timetable widget ( #5180 )
2026-04-03 20:23:15 +02:00
homarr-renovate[bot] and Meier Lukas
2b4c83dcca
fix(deps): update dependency zod to ^4.3.5 - abandoned ( #4803 )
...
* fix(deps): update dependency zod to ^4.3.5
* fix: omit can not be used with refine
* fix: convert intersection to object due to trpc-openapi issue
* fix: remove omit after refine
---------
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-03-30 23:11:14 +02:00
Matt Van Horn and Matt Van Horn
1639da5779
fix: handle null ports in Docker container table ( #5313 )
...
When Docker API returns `null` for container ports (instead of `[]`),
the Docker management page crashes. Added optional chaining on
`ports?.length` to handle this case.
Fixes #5311
Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com >
2026-03-27 20:04:03 +01:00
Meier Lukas
1938798ba1
Merge commit from fork
2026-03-21 16:07:05 +01:00
StrandedTurtle
f68600150a
feat: Tracearr integration ( #5060 )
2026-03-13 19:19:43 +01:00
Meier Lukas
ba9c3f3e27
fix(boards): duplication of boards fails with postgresql / mysql ( #5228 )
2026-03-13 16:32:48 +01:00
Manuel
cdd90b8aa0
feat: add immich integration and widget ( #5165 )
...
* feat: add immich integration and widget
* feat: use sdk
2026-03-07 09:39:31 +01:00
homarr-releases[bot] and Meier Lukas
3322e82aab
chore: update bug report template ( #5136 )
...
* chore: update bug report template
* fix: ci issues
* chore: update docs sitemap
---------
Co-authored-by: Releases Homarr <175486441+homarr-releases[bot]@users.noreply.github.com>
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-02-27 21:21:49 +01:00
Meier Lukas
91fc5a5c74
Merge commit from fork
...
* fix(security): restrict access to integrations to authenticated users
* chore: github is broken
2026-02-27 19:24:24 +01:00
Meier Lukas
fce970c706
Merge commit from fork
...
* fix(security): restrict rss-feed urls based on authentication
* fix: lint issues
* fix: incrase the limit to 100
2026-02-27 19:13:43 +01:00
Manuel and Meier Lukas
91846bc000
feat: add glances integration ( #5102 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-02-27 16:57:29 +01:00
Meier Lukas and ajnart
8811af5e6e
Merge commit from fork
...
* fix(security): resolve ssrf issue with simple ping
* refactor: improve testability of app-access-control and fix tests
* fix: unnecessary space
Co-authored-by: ajnart <thomas@ajnart.fr >
---------
Co-authored-by: ajnart <thomas@ajnart.fr >
2026-01-30 18:31:13 +01:00
Rhiz3K and Meier Lukas
81dac58005
feat(integrations): add Coolify integration and widget ( #4789 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-01-23 19:09:53 +01:00
Meier Lukas
1623fbaaeb
perf(memory): lazy routers ( #4868 )
2026-01-19 22:37:05 +01:00
a2a34124ae
feat(users): add libravatar / gravatar support ( #4277 )
...
Co-authored-by: HeapReaper <kelivn@heapreaper.nl >
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-01-09 13:10:52 +01:00
Matti Airas and Claude Opus 4.5
0dc61a88b8
feat(auth): extend API key authentication to tRPC endpoints ( #4732 )
...
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com >
2026-01-05 18:43:17 +01:00
homarr-renovate[bot] and Meier Lukas
f0a2551fdf
fix(deps): update dependency typescript-eslint to ^8.51.0 ( #4795 )
...
Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com>
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-01-03 23:17:05 +01:00
Manuel and Meier Lukas
9b0dd6d6ce
feat: unraid integration ( #4439 )
...
Co-authored-by: Meier Lukas <meierschlumpf@gmail.com >
2026-01-02 19:54:47 +01:00