Commit Graph
100 Commits
Author SHA1 Message Date
Mike Cao 6156387251 Generate OpenAPI field descriptions and validate generated clients in CI 2026-09-07 17:30:56 -07:00
Mike Cao 9eef6f22c9 Prevent event details from wrapping in table rows 2026-09-07 10:37:22 -07:00
Mike Cao 9ff1ecb6dd Migrate UI styles to Zen theme tokens and preserve brand colors 2026-09-07 10:28:16 -07:00
Mike Cao 0f187dcac1 Document API operations with concise endpoint descriptions 2026-09-06 23:36:53 -07:00
Mike Cao e2f7cd9488 Fix MCP CLI packaging and update React UI dependencies 2026-09-06 21:33:22 -07:00
Mike Cao 9c78131671 Update API version to 3.3.1 and replace classnames with cn 2026-09-06 20:58:02 -07:00
Mike Cao 7627c36642 Guard API tests against destructive non-loopback targets 2026-09-06 20:41:22 -07:00
Mike Cao 4e47e350bf Run API tests serially and support external targets without stale coverage logs 2026-09-06 20:11:15 -07:00
Mike Cao e18769e8cf Add API integration test suite with Postgres and ClickHouse coverage 2026-09-06 16:42:53 -07:00
Mike Cao 162487eca1 Remove rate limiting from OAuth registration and MCP endpoints
Drop the per-IP registration limiter and the per-user MCP limiter along
with the shared in-memory/Redis helper. Request throttling is an
infrastructure concern (reverse proxy, CDN) rather than something each
endpoint should reimplement.
2026-09-05 19:20:56 -07:00
Mike Cao d2b4aa174e Rate limit dynamic client registration per source address
Replace the process-wide registration counter used without Redis with a
shared per-key fixed-window limiter, so one requester can no longer
exhaust the registration budget for every other client on the process.
The in-memory fallback is bounded (expired windows are swept, then the
oldest keys are shed) so memory stays constant under key churn.

Also fixes checkMcpRateLimit inverting redis.rateLimit's result: it
resolves true once the counter reaches its threshold, so with Redis the
MCP endpoint was denying requests below the limit and allowing those
above it. Both call sites now share the same limiter and semantics.
2026-09-05 17:57:20 -07:00
Mike Cao f1c5b4f7bb Add account API key management 2026-09-01 21:50:07 -07:00
Mike Cao 98b824ce48 Update Next.js and related dependencies 2026-09-01 17:47:03 -07:00
Mike Cao ca661c7057 Merge branch 'dev' 2026-08-20 10:38:48 -07:00
Mike Cao ac4e6c9160 Bump version to v3.3.1. 2026-08-20 10:38:27 -07:00
Mike Cao 79d62720b2 Bump version to 3.3.0 2026-08-11 15:52:33 -04:00
Mike Cao 3447438c49 Upgrade pnpm and verify Prisma engines are installed during build 2026-08-11 15:49:18 -04:00
Mike Cao ba78b9a5c2 Disable standalone output on Vercel builds 2026-08-04 23:08:06 -07:00
Mike Cao 823fd0e607 Pin pnpm version and remove deprecated dev indicator config 2026-08-04 22:23:23 -07:00
Mike Cao aab5462e38 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-08-04 21:21:17 -07:00
Mike Cao 11a158775c Upgrade Next.js and React Zen dependencies 2026-08-04 21:21:07 -07:00
Mike Cao fc7d0d4e6c Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-08-04 07:58:44 -07:00
Mike Cao 9e1a75402f Fix dialog context error in language popover by using DialogTrigger 2026-08-04 07:54:00 -07:00
Mike CaoandClaude Fable 5 2fe062c49e Fix dialog context error in language popover by using DialogTrigger
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-04 07:36:47 -07:00
Mike Cao 8efd5d7279 Avoid saving same-domain referrers and resolve path-only referrers correctly 2026-08-03 23:03:52 -07:00
Mike Cao c5d34d10ad Add spacing between Teams popover and trigger 2026-08-03 18:56:53 -07:00
Mike Cao 668a03f210 Center collapsed navigation items and standardize sidebar row heights 2026-08-03 18:13:50 -07:00
Mike Cao b5e9f7d968 Make mobile menu sheet height responsive and support controlled state 2026-08-03 13:11:57 -07:00
Mike Cao fbc4e86bb9 Add reusable website value combobox to attribution and journey filters 2026-08-03 13:03:58 -07:00
Mike Cao 928c0c7ea1 Use full-height modals for session profiles 2026-08-03 11:45:19 -07:00
Mike Cao 35c3560143 Constrain DataGrid search input width 2026-08-03 11:29:41 -07:00
Mike Cao 2de1c9bcc0 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-08-02 19:43:08 -07:00
Mike Cao 5d8cf10bf1 Replace Focusable navigation wrappers with tabIndex-based focus handling 2026-08-02 19:42:53 -07:00
Mike Cao d336eba27d Fix sidebar user menu accessibility and full-width behavior 2026-08-02 12:43:07 -07:00
Mike Cao fab78f1610 Remove unused allowEdit/allowView props from WebsitesTable and its callers 2026-08-02 11:40:26 -07:00
Mike Cao eb9a77ea64 Return 404 when session is not found and add test coverage for GET session route 2026-07-20 17:15:52 -07:00
Mike Cao 91b31634e1 Align DiceBear core with collection version 2026-06-25 22:29:15 -07:00
Mike Cao 284c192bec Update frontend, database, and build dependencies 2026-06-25 20:57:38 -07:00
Mike Cao 6061bcf14b Fix Docker release cache export 2026-06-24 16:35:37 -07:00
Mike Cao 2f6e2b5ff2 Include all non-dist packages in the pnpm workspace 2026-06-24 11:28:11 -07:00
Mike Cao 17bd781de5 Remove workspace package glob from pnpm configuration 2026-06-24 11:16:22 -07:00
Mike Cao ec56e58567 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-06-22 23:26:10 -07:00
Mike Cao ced1107261 Use sunken styling for heatmap page buttons 2026-06-22 23:26:01 -07:00
Mike Cao 527ef9d769 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-06-22 22:34:21 -07:00
Mike Cao ce3d928f77 Keep heatmap depth labels readable while scaling overlay 2026-06-22 22:32:05 -07:00
Mike Cao 7d84c84d9a Clip outlier heatmap clicks without stretching canvas 2026-06-22 21:48:29 -07:00
Mike Cao a53996575e Keep website filter dialog content within viewport 2026-06-22 21:34:38 -07:00
Mike Cao eb2e271a08 Constrain filter edit tabs to scroll within the modal 2026-06-22 21:22:41 -07:00
Mike Cao 30ca4d6680 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-06-22 17:27:05 -07:00
Mike Cao 5ebb49a8f1 Group heatmap overlays by screen width 2026-06-22 17:26:51 -07:00
Mike Cao cced845be1 Always render heatmap snapshots with their captured page URL 2026-06-22 11:56:25 -07:00
Mike Cao 1d71f9d069 Group heatmap clicks by selectable screen width 2026-06-22 09:57:00 -07:00
Mike Cao beb4881c24 Fit heatmap canvases to viewport 2026-06-21 14:23:05 -07:00
Mike Cao a0587f72e5 Switch heatmap snapshots to iframe previews 2026-06-20 22:51:45 -07:00
Mike Cao ceedbf3176 Upgrade rrweb and chunk replay payloads 2026-06-12 14:05:32 -07:00
Mike Cao caa4ae1fd4 Refresh lockfile for updated frontend dependencies and platform metadata 2026-06-11 22:45:23 -07:00
Mike Cao c38ac660cb Added new headers to tracker. 2026-05-23 22:27:39 -07:00
Mike Cao 6fbf45cd21 Updated lock file. 2026-05-23 22:17:56 -07:00
Mike Cao c6b2364a41 Update test tooling dependencies 2026-05-18 16:43:15 -07:00
Mike Cao f9232086d5 Updated package builds. 2026-05-15 15:59:33 -07:00
Mike Cao c0ea3aefbe Migrate tests to Vitest 2026-05-14 22:05:34 -07:00
Mike Cao d61e824355 Cherry-pick API_URL changes 2026-05-13 00:34:15 -07:00
Mike Cao 216cf6c448 Migrate test suite from Cypress and Jest to Playwright and Vitest 2026-05-09 01:23:20 -07:00
Mike Cao 2fd319f910 Add configurable internal API URL 2026-05-09 01:06:52 -07:00
Mike Cao 6c2155d496 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-05-07 14:54:25 -07:00
Mike Cao 9b18511af0 Merge branch 'heatmaps' into dev
# Conflicts:
#	db/clickhouse/schema.sql
2026-05-07 14:49:21 -07:00
Mike Cao eef10dd897 Use unknown icon for generic browser 2026-05-07 14:34:10 -07:00
Mike Cao 6672ea04f0 Label generic browser as unknown 2026-05-07 14:30:43 -07:00
Mike Cao 3d9e116424 Guard recorder custom events until ready 2026-05-07 14:28:14 -07:00
Mike Cao 6be5b61442 Wait for heatmap snapshot before overlay 2026-05-07 14:06:49 -07:00
Mike Cao abac89b57f Fix heatmap snapshot timestamp query 2026-05-07 14:01:45 -07:00
Mike Cao 923b94ae8e Render heatmaps from replay snapshots 2026-05-07 13:59:30 -07:00
Mike Cao 9c31e7b601 Fix heatmap iframe sizing 2026-05-07 13:52:41 -07:00
Mike Cao 1b69ce6e90 Add scroll heatmaps. 2026-05-05 10:43:39 -07:00
Mike Cao c7f71e5758 Make heatmaps report always available. 2026-05-05 10:43:39 -07:00
Mike Cao 12c10c48cd Gate heatmaps report on UMAMI_SELF_RECORD. 2026-05-04 13:29:53 -07:00
Mike Cao 46bf1904e3 Merge branch 'master' into dev 2026-05-01 15:34:18 -07:00
Mike Cao 62c214d7c5 Add CONTRIBUTING.md. 2026-05-01 15:34:07 -07:00
Mike Cao 3ebd5a44e8 Fix 500 on /api/send when client IP is malformed. 2026-04-28 19:47:38 -07:00
Mike Cao a6b13b71db Add click heatmaps report
Extracts click events from rrweb session-replay buffers at write time
into a new heatmap_event table (Prisma + ClickHouse). New /heatmaps
report shows a page picker plus an overlay of click density on the
dominant viewport, with an optional iframe of the live page behind.
2026-04-27 22:20:38 -07:00
Mike Cao cc829c8f6f Replace react-spring with motion, fix breaking changes in react-window/date-fns-tz/pure-rand. 2026-04-18 15:41:25 -07:00
Mike Cao b822374faa Updated major packages. 2026-04-17 15:57:38 -07:00
Mike Cao 17c5c14f9f Updated outdated packages. 2026-04-17 15:32:22 -07:00
Mike Cao 14ab228572 Revert next and next-intl patch updates 2026-04-02 14:03:59 -04:00
Mike Cao 07356323c1 Updated packages. 2026-03-31 21:15:12 -04:00
Mike Cao a24eb91046 Merge branch 'dev' of https://github.com/umami-software/umami into dev 2026-03-31 18:56:00 -04:00
Mike Cao 030f842242 Updated packages. 2026-03-31 18:55:44 -04:00
Mike Cao c4e52e7dcd Remove fs-extra dependency in favor of native node:fs 2026-03-29 23:12:45 -04:00
Mike Cao 9672969c23 Add components package version bump step to build 2026-02-15 19:28:25 -08:00
Mike CaoandClaude Opus 4.6 365895c389 Fix build type errors in LinkButton and useMessages
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 16:35:57 -08:00
Mike Cao 6a9e732457 Updated packages. Remove unneeded offset. 2026-02-14 22:55:36 -08:00
Mike Cao 6d4d7a3121 Mute disabled board row control icons 2026-02-14 22:52:50 -08:00
Mike Cao 1ef7909dbb Fix missing resize grip for last board row 2026-02-14 14:22:40 -08:00
Mike Cao e52a6b405b Styles updates for board elements. 2026-02-14 00:20:12 -08:00
Mike Cao 15700a6394 Use component name as default board title 2026-02-14 00:07:36 -08:00
Mike Cao 509e1f0083 Changed out logo. 2026-02-13 18:21:18 -08:00
Mike Cao 631cc46f7f Add personal dashboard flow and per-component website selection
This introduces a user-scoped dashboard with board-style view/edit pages while keeping it unavailable in team context, and moves website targeting to component config so dashboard components can each select their own website.
2026-02-13 11:48:15 -08:00
Mike Cao 2633697585 Fix row action hover overlap with column controls 2026-02-13 11:47:44 -08:00
Mike Cao 676d83e8f6 Remove board component title fallback 2026-02-13 02:15:34 -08:00
Mike Cao 432be5a5d5 Fix board component scrolling layout consistency 2026-02-13 02:02:44 -08:00