Commit graph

5529 commits

Author SHA1 Message Date
Yann MAHE
4e972509dd update curl 2025-12-04 10:40:48 -05:00
Yann MAHE
7f201e6e59 one call 2025-12-04 10:02:26 -05:00
Yann MAHE
a1a1965d2b timing 2025-12-04 09:50:31 -05:00
Sajid Mehmood
23a3c6cf6b Fix dials HMR by using window-based singleton
The static class property singleton pattern doesn't survive HMR
when module boundaries get crossed. New dials would register with
a fresh registry instance while DialsOverlay stayed subscribed to
the old one.

Fix: Store the singleton on `window.__NITESHIFT_DIALS_REGISTRY__`
so it persists across module re-evaluations during hot reload.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:46:02 -05:00
Sajid Mehmood
2727fd6dff Add Niteshift Dials SDK for runtime design prototyping
Introduces a complete design dials system that allows designers and PMs
to adjust UI parameters at runtime without code changes.

**Dials SDK (`packages/dials/`):**
- useDynamicColor: Color values with design system integration
- useDynamicSpacing: Spacing/padding/margin controls
- useDynamicVariant: Discrete choice selections
- useDynamicBoolean: Toggle/feature flag controls
- useDynamicNumber: Numeric values with min/max/step
- DialsOverlay: Compact Leva-inspired UI (Ctrl+D to toggle)
- DialsProvider: React context for dial state management
- Design manifest integration for design system tokens

**App Integration:**
- Added DialsProvider to app Providers
- Example dials on WebsitePage (metrics bar, panels, navigation)
- MetricCard component with adjustable typography dials
- TypeScript manifest at src/config/niteshift-manifest.ts

**Documentation:**
- Comprehensive CLAUDE.md section on dials usage
- Best practices for preserving original appearance
- Examples for all dial types

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-26 11:46:02 -05:00
KC Beard
f4d0a65b16
Merge pull request #102 from niteshiftdev/kc/umami
fix login
2025-11-26 00:18:32 -05:00
KC Beard
cf530ba100 fix login 2025-11-25 15:54:38 -05:00
Sajid Mehmood
596784d6a0 Change default date range from 24 hours to 30 days
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-25 13:56:18 -05:00
Yann
a78994c351
Merge pull request #83 from niteshiftdev/yann/ns-107/skip-prebake-sync-on-resume
Skip prebake sync on resume
2025-11-24 16:14:40 -05:00
Yann MAHE
2a1997ad36 Add prebake sync sentinel for resume fast path 2025-11-24 15:39:37 -05:00
Yann
67d90e2ee5
Merge pull request #81 from niteshiftdev/yann/ns-107/remove-dev-server-wait
Remove dev server readiness check from setup script
2025-11-24 13:23:57 -05:00
Yann MAHE
e72f6ef268 Remove dev server readiness check from setup script
The 60-second polling loop that waits for the dev server to respond
adds unnecessary setup time. The warmup step that follows already has
a timeout, so we can proceed directly to it.
2025-11-24 13:13:19 -05:00
Yann
fa0a665ab7
Merge pull request #76 from niteshiftdev/yann/ns-107/prebaked-db-sentinel
Run DB setup once in prebaked flow
2025-11-23 11:05:36 -05:00
Yann MAHE
85c99ce135 Run prebaked DB setup once per sandbox 2025-11-23 10:58:31 -05:00
Yann
cd5091e50c
Merge pull request #75 from niteshiftdev/yann/ns-107/skip-prebaked-install-on-resume
Skip pnpm install on prebaked resume
2025-11-23 10:04:55 -05:00
Yann MAHE
1e6f71b5ba Skip prebaked install when node_modules exists 2025-11-23 10:02:53 -05:00
Sajid Mehmood
e5e71f6988 fix: set DEFAULT_ANIMATION_DURATION to 0
🤖 Generated with Claude Code

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-20 13:01:39 +00:00
Sajid Mehmood
1c440c9e1c Use pnpm copy method for Modal compatibility
Add --package-import-method=copy to all pnpm install commands in niteshift-setup.sh.
This ensures packages are copied instead of hard-linked, which is required for
proper functionality in Modal's containerized environment where hard links don't
work across filesystem layers.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-16 15:37:57 -05:00
Sajid Mehmood
9d1b4e3665 Make test data generation more current 2025-11-14 13:16:37 -05:00
Sajid Mehmood
f28b18f850 Update CLAUDE.md to note how to useNavigation 2025-11-14 11:41:02 -05:00
Sajid Mehmood
391480364d Add DISABLE_AUTH env var 2025-11-14 10:37:03 -05:00
Yann
1a0f5f8385
Merge pull request #18 from niteshiftdev/yann/warm-up-dev-server
Warm up Next.js routes after dev server starts
2025-11-14 09:55:34 -05:00
Yann MAHE
9d7bca80de Warm up Next.js routes after dev server starts
Add a curl request to / after the dev server is ready to pre-compile the main application routes. This triggers Next.js compilation on first access during setup rather than on first user interaction, significantly improving the initial user experience by avoiding 5-10 second compilation delays.

The warm-up is non-blocking - if it fails or times out, the setup continues successfully and routes will compile on first user access as before.
2025-11-14 09:53:27 -05:00
Sajid Mehmood
eb532d98c9 Merge branch 'master' of github.com:niteshiftdev/umami 2025-11-13 18:00:01 -05:00
Sajid Mehmood
e2f0e020d2 Force light mode theme instead of system preference
Set ZenProvider to use theme="light" to ensure consistent light mode
across all contexts regardless of system preferences or iframe embedding.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 17:59:51 -05:00
Yann
9820274ded
Merge pull request #17 from niteshiftdev/yannmh/do-nothing-686v42
Specify pnpm package manager version
2025-11-13 17:56:17 -05:00
Sajid Mehmood
b7e5b7012a Merge branch 'master' of github.com:niteshiftdev/umami 2025-11-13 17:55:34 -05:00
Sajid Mehmood
0699b05e57 Use system color scheme preference for theme detection
Configure ZenProvider to use colorScheme="system" to consistently respect
OS/browser dark mode preference across all contexts including iframes.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 17:55:24 -05:00
Yann
4d55d9eedb feat: specify pnpm package manager version 2025-11-13 22:49:20 +00:00
Yann
8960f0942c
Merge pull request #10 from niteshiftdev/yann/quick-start-niteshift
USE_PREBAKED_SETUP for niteshift-setup
2025-11-13 17:14:32 -05:00
Yann MAHE
97b2735364 skip extra checks 2025-11-13 16:57:20 -05:00
Yann MAHE
0b073dc451 update 2025-11-13 16:44:53 -05:00
Yann MAHE
2d426ed39e USE_PREBAKED_SETUP for niteshift-setup 2025-11-13 15:57:14 -05:00
Sajid Mehmood
a4e47e923d Add CLAUDE.md with comprehensive development guide
This file provides guidance to Claude Code when working in the repository.
Key sections include:
- Niteshift sandbox configuration status
- Rapid UI prototyping guide with component library usage
- Data fetching patterns with React Query
- State management with Zustand
- Common UI patterns and code examples
- Project architecture overview

Optimized for Niteshift sandbox environment where dev server and
database are pre-configured and running.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 15:42:38 -05:00
Sajid Mehmood
dc8db69a6f Add test data generation script for Umami analytics
- Create generate-test-data.js script for generating realistic demo data
- Support for small (3 days), medium (14 days), and full (30 days) scales
- Generates realistic user sessions, pageviews, custom events, and revenue
- Includes geographic diversity, device variety, and traffic source distributions
- Implements proper UTM campaign tracking and conversion funnels
- Uses direct Prisma writes for performance (~10k sessions in 5 minutes)
- Add npm script: 'generate-test-data' for easy execution

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 14:51:50 -05:00
Sajid Mehmood
210a676ed9 Fix navigation during render warning
Move navigation logic from render to useEffect to prevent React warning
about state updates during render. Use ref to track redirect state and
handle both cloud mode (window.location.assign) and standard mode
(router.replace) navigation.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 13:38:28 -05:00
Sajid Mehmood
e063a177dc
Add niteshift setup script for umami development (#4)
* feat: add niteshift setup script for umami application

* refactor: switch dev setup to use dev server with hot reload instead of production build

* feat: add unified logging to development server output

Allow dev server logs to be written to both /tmp/umami-server.log and NITESHIFT_LOG_FILE when configured, enabling centralized log aggregation.

* refactor: simplify dev server logging to use single log file

Consolidate dual logging logic into single append to LOG_FILE,
simplify error reporting to reference the configured log file,
and remove unnecessary /tmp/umami-server.log references.
2025-11-11 17:27:43 -05:00
Mike Cao
7ac5913c86
Merge pull request #3704 from prince0xdev/fix/disable-download-when-no-data
Some checks failed
Node.js CI / build (postgresql, 18.18, 10) (push) Has been cancelled
Fix: Disable download button when no data available
2025-11-10 22:43:42 -08:00
Mike Cao
a6e130ab2e
Fix DownloadButton to avoid duplicate downloadCsv call
Removed redundant downloadCsv call from handleClick.
2025-11-10 22:43:22 -08:00
Mike Cao
4fe4bb99b7
Apply suggestion from @greptile-apps[bot]
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
2025-11-10 22:42:20 -08:00
Prince EKPINSE
b9e90268d1 chore [#3699] : fix .gitignore syntax and untrack package-lock.json 2025-11-08 22:33:22 +01:00
Mike Cao
03c892aac0
Merge pull request #3688 from mathis5711/patch-docker-image-name
Some checks failed
Node.js CI / build (postgresql, 18.18, 10) (push) Has been cancelled
Fixing docker image name
2025-11-08 11:26:31 -08:00
Prince EKPINSE
cf31ca20b9 Fix: disable download button when no data available 2025-11-08 18:22:38 +01:00
Prince EKPINSE
c3f3a7db3f Fix: disable download button when no data available 2025-11-08 18:17:22 +01:00
Mike Cao
6ba9c1c40c New docker workflow.
Some checks are pending
Node.js CI / build (postgresql, 18.18, 10) (push) Waiting to run
2025-11-07 22:41:10 -08:00
Mike Cao
de6515139e Fixed Docker permissions.
Some checks are pending
Node.js CI / build (postgresql, 18.18, 10) (push) Waiting to run
2025-11-07 18:17:51 -08:00
Mike Cao
e3ca002d77 Fixed tags in build. 2025-11-07 14:35:05 -08:00
Mike Cao
8119dae3c3 Updated GH workflow. 2025-11-07 13:59:50 -08:00
Mike Cao
6ee93f7ac9 Updated README and cd.yml. 2025-11-07 12:21:17 -08:00
Mike Cao
3e9ca8761e Removed workflow script.
Some checks are pending
Node.js CI / build (postgresql, 18.18, 10) (push) Waiting to run
2025-11-07 09:15:01 -08:00