luna-agents 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (290) hide show
  1. package/.claude-plugin/LICENSE +21 -0
  2. package/.claude-plugin/README.md +285 -0
  3. package/.claude-plugin/claude-plugin.json +106 -0
  4. package/.claude-plugin/index.js +318 -0
  5. package/.claude-plugin/lib/api-client.js +504 -0
  6. package/.claude-plugin/lib/rag-utils.js +442 -0
  7. package/.claude-plugin/package.json +418 -0
  8. package/LICENSE +21 -0
  9. package/README.md +350 -0
  10. package/agents/json/design-architect.json +57 -0
  11. package/agents/json/luna-auth.json +71 -0
  12. package/agents/json/luna-brand.json +66 -0
  13. package/agents/json/luna-cloudflare.json +261 -0
  14. package/agents/json/luna-code-review.json +63 -0
  15. package/agents/json/luna-deployment.json +68 -0
  16. package/agents/json/luna-documentation.json +85 -0
  17. package/agents/json/luna-hig.json +128 -0
  18. package/agents/json/luna-layout-designer.json +178 -0
  19. package/agents/json/luna-monitoring-observability.json +64 -0
  20. package/agents/json/luna-post-launch-review.json +68 -0
  21. package/agents/json/luna-requirements-analyzer.json +53 -0
  22. package/agents/json/luna-task-executor.json +63 -0
  23. package/agents/json/luna-task-planner.json +62 -0
  24. package/agents/json/luna-testing-validation.json +66 -0
  25. package/agents/luna-365-security.md +96 -0
  26. package/agents/luna-analytics.md +318 -0
  27. package/agents/luna-api-generator.md +654 -0
  28. package/agents/luna-auth.md +396 -0
  29. package/agents/luna-brand.md +248 -0
  30. package/agents/luna-cloudflare.md +728 -0
  31. package/agents/luna-code-review.md +487 -0
  32. package/agents/luna-database.md +453 -0
  33. package/agents/luna-deployment.md +202 -0
  34. package/agents/luna-design-architect.md +353 -0
  35. package/agents/luna-docker.md +615 -0
  36. package/agents/luna-documentation.md +177 -0
  37. package/agents/luna-full-test.md +910 -0
  38. package/agents/luna-glm-vision.md +211 -0
  39. package/agents/luna-hig.md +430 -0
  40. package/agents/luna-lemonsqueezy.md +441 -0
  41. package/agents/luna-monitoring-observability.md +199 -0
  42. package/agents/luna-openai-app.md +499 -0
  43. package/agents/luna-post-launch-review.md +191 -0
  44. package/agents/luna-rag-enhanced.md +1619 -0
  45. package/agents/luna-rag.md +1733 -0
  46. package/agents/luna-requirements-analyzer.md +189 -0
  47. package/agents/luna-run.md +620 -0
  48. package/agents/luna-seo.md +338 -0
  49. package/agents/luna-task-executor.md +371 -0
  50. package/agents/luna-task-planner.md +275 -0
  51. package/agents/luna-testing-validation.md +681 -0
  52. package/agents/luna-ui-fix.md +591 -0
  53. package/agents/luna-ui-test.md +600 -0
  54. package/agents/luna-user-guide.md +409 -0
  55. package/agents/site-auditor.md +83 -0
  56. package/commands/3d-mesh.md +12 -0
  57. package/commands/3d.md +12 -0
  58. package/commands/agent-boost.md +13 -0
  59. package/commands/ai-index.md +16 -0
  60. package/commands/api.md +12 -0
  61. package/commands/assert.md +17 -0
  62. package/commands/audience.md +12 -0
  63. package/commands/auth.md +17 -0
  64. package/commands/autopilot.md +12 -0
  65. package/commands/boost-finsavvy.md +10 -0
  66. package/commands/boost-org.md +10 -0
  67. package/commands/boost-project.md +12 -0
  68. package/commands/brand.md +17 -0
  69. package/commands/browser-test.md +18 -0
  70. package/commands/cf.md +26 -0
  71. package/commands/cfg.md +33 -0
  72. package/commands/chain.md +12 -0
  73. package/commands/challenge.md +13 -0
  74. package/commands/clone.md +12 -0
  75. package/commands/cmds.md +243 -0
  76. package/commands/collab.md +12 -0
  77. package/commands/compete.md +12 -0
  78. package/commands/config-rules.md +21 -0
  79. package/commands/connect-infra.md +10 -0
  80. package/commands/context-pack.md +13 -0
  81. package/commands/curb.md +12 -0
  82. package/commands/des.md +38 -0
  83. package/commands/devto.md +20 -0
  84. package/commands/dock.md +26 -0
  85. package/commands/docs.md +33 -0
  86. package/commands/e2e-flow.md +18 -0
  87. package/commands/email-routing.md +10 -0
  88. package/commands/feature.md +12 -0
  89. package/commands/figma.md +12 -0
  90. package/commands/fix.md +12 -0
  91. package/commands/flaky.md +12 -0
  92. package/commands/flow-record.md +12 -0
  93. package/commands/gamify.md +12 -0
  94. package/commands/ghost.md +12 -0
  95. package/commands/git-insights.md +12 -0
  96. package/commands/go-viral.md +16 -0
  97. package/commands/go.md +42 -0
  98. package/commands/graph-rag.md +13 -0
  99. package/commands/guard.md +12 -0
  100. package/commands/heal.md +17 -0
  101. package/commands/heygen.md +12 -0
  102. package/commands/hig.md +33 -0
  103. package/commands/idea.md +12 -0
  104. package/commands/imagine.md +12 -0
  105. package/commands/inbox.md +12 -0
  106. package/commands/lam.md +12 -0
  107. package/commands/landing.md +12 -0
  108. package/commands/launch.md +12 -0
  109. package/commands/learn.md +12 -0
  110. package/commands/leverage.md +12 -0
  111. package/commands/ll-365-secure.md +179 -0
  112. package/commands/ll-3d-mesh.md +94 -0
  113. package/commands/ll-3d.md +123 -0
  114. package/commands/ll-a11y-scan.md +143 -0
  115. package/commands/ll-a11y.md +71 -0
  116. package/commands/ll-agent-boost.md +92 -0
  117. package/commands/ll-agent-chain.md +104 -0
  118. package/commands/ll-ai-index.md +120 -0
  119. package/commands/ll-api-client.md +77 -0
  120. package/commands/ll-api.md +99 -0
  121. package/commands/ll-assert.md +73 -0
  122. package/commands/ll-audience.md +308 -0
  123. package/commands/ll-auth.md +145 -0
  124. package/commands/ll-autopilot.md +113 -0
  125. package/commands/ll-boost-finsavvy.md +106 -0
  126. package/commands/ll-boost-org.md +161 -0
  127. package/commands/ll-boost-project.md +118 -0
  128. package/commands/ll-brand.md +150 -0
  129. package/commands/ll-browser-test.md +203 -0
  130. package/commands/ll-challenge.md +124 -0
  131. package/commands/ll-changelog.md +80 -0
  132. package/commands/ll-ci.md +78 -0
  133. package/commands/ll-claude-instructions.md +80 -0
  134. package/commands/ll-clone.md +82 -0
  135. package/commands/ll-cloudflare.md +580 -0
  136. package/commands/ll-codemap.md +78 -0
  137. package/commands/ll-collab.md +87 -0
  138. package/commands/ll-compete.md +67 -0
  139. package/commands/ll-config-rules.md +255 -0
  140. package/commands/ll-config.md +434 -0
  141. package/commands/ll-connect-infra.md +123 -0
  142. package/commands/ll-context-pack.md +100 -0
  143. package/commands/ll-curb.md +164 -0
  144. package/commands/ll-debug.md +76 -0
  145. package/commands/ll-deploy.md +101 -0
  146. package/commands/ll-deps.md +70 -0
  147. package/commands/ll-design.md +86 -0
  148. package/commands/ll-devto-publish.md +172 -0
  149. package/commands/ll-dockerize.md +273 -0
  150. package/commands/ll-docs.md +123 -0
  151. package/commands/ll-e2e-flow.md +132 -0
  152. package/commands/ll-e2e-test.md +231 -0
  153. package/commands/ll-email-routing.md +130 -0
  154. package/commands/ll-env.md +70 -0
  155. package/commands/ll-execute.md +98 -0
  156. package/commands/ll-feature.md +80 -0
  157. package/commands/ll-figma.md +82 -0
  158. package/commands/ll-fix.md +76 -0
  159. package/commands/ll-flaky.md +151 -0
  160. package/commands/ll-flow-record.md +180 -0
  161. package/commands/ll-flowdocs.md +83 -0
  162. package/commands/ll-gamify.md +131 -0
  163. package/commands/ll-gemma4.md +84 -0
  164. package/commands/ll-ghost.md +79 -0
  165. package/commands/ll-git-insights.md +152 -0
  166. package/commands/ll-go-viral.md +171 -0
  167. package/commands/ll-graph-rag.md +113 -0
  168. package/commands/ll-guard.md +92 -0
  169. package/commands/ll-heal.md +135 -0
  170. package/commands/ll-heygen.md +203 -0
  171. package/commands/ll-hig.md +578 -0
  172. package/commands/ll-hld.md +84 -0
  173. package/commands/ll-i18n.md +74 -0
  174. package/commands/ll-idea.md +101 -0
  175. package/commands/ll-imagine.md +72 -0
  176. package/commands/ll-inbox.md +116 -0
  177. package/commands/ll-lam.md +93 -0
  178. package/commands/ll-landing.md +171 -0
  179. package/commands/ll-launch.md +100 -0
  180. package/commands/ll-learn.md +87 -0
  181. package/commands/ll-leverage.md +137 -0
  182. package/commands/ll-local-llm.md +131 -0
  183. package/commands/ll-ls-products.md +160 -0
  184. package/commands/ll-marketplace.md +130 -0
  185. package/commands/ll-mcp-publish.md +104 -0
  186. package/commands/ll-migrate.md +68 -0
  187. package/commands/ll-mock.md +79 -0
  188. package/commands/ll-money.md +87 -0
  189. package/commands/ll-monitor.md +120 -0
  190. package/commands/ll-morph.md +117 -0
  191. package/commands/ll-multi-agent.md +170 -0
  192. package/commands/ll-native.md +93 -0
  193. package/commands/ll-nexa.md +79 -0
  194. package/commands/ll-onboarding.md +84 -0
  195. package/commands/ll-openhands.md +78 -0
  196. package/commands/ll-organic-promote.md +260 -0
  197. package/commands/ll-parallel.md +74 -0
  198. package/commands/ll-payments.md +83 -0
  199. package/commands/ll-perf-trace.md +147 -0
  200. package/commands/ll-perf.md +65 -0
  201. package/commands/ll-persona.md +280 -0
  202. package/commands/ll-pipe.md +296 -0
  203. package/commands/ll-plan-impl.js +570 -0
  204. package/commands/ll-plan-v2.md +297 -0
  205. package/commands/ll-plan.md +87 -0
  206. package/commands/ll-postlaunch.md +109 -0
  207. package/commands/ll-pr.md +84 -0
  208. package/commands/ll-present.md +110 -0
  209. package/commands/ll-product-map.md +152 -0
  210. package/commands/ll-promote.md +352 -0
  211. package/commands/ll-publish.md +124 -0
  212. package/commands/ll-pulse.md +96 -0
  213. package/commands/ll-rag-guided.md +345 -0
  214. package/commands/ll-rag-upgrade.md +504 -0
  215. package/commands/ll-rag.md +343 -0
  216. package/commands/ll-record.md +114 -0
  217. package/commands/ll-refactor.md +71 -0
  218. package/commands/ll-requirements.md +71 -0
  219. package/commands/ll-review.md +92 -0
  220. package/commands/ll-rollback.md +66 -0
  221. package/commands/ll-routemap.md +79 -0
  222. package/commands/ll-rules.md +90 -0
  223. package/commands/ll-shortcuts.md +229 -0
  224. package/commands/ll-sing.md +99 -0
  225. package/commands/ll-site-audit.md +228 -0
  226. package/commands/ll-smart-route.md +92 -0
  227. package/commands/ll-smart-search.md +58 -0
  228. package/commands/ll-storybook.md +86 -0
  229. package/commands/ll-swarm.md +101 -0
  230. package/commands/ll-test.md +97 -0
  231. package/commands/ll-time-machine.md +72 -0
  232. package/commands/ll-ui-convert.md +433 -0
  233. package/commands/ll-video.md +108 -0
  234. package/commands/ll-vision-pipeline.md +247 -0
  235. package/commands/ll-vision.md +74 -0
  236. package/commands/ll-visual-diff.md +118 -0
  237. package/commands/ll-visual-qa.md +204 -0
  238. package/commands/ll-visual-regression.md +96 -0
  239. package/commands/ll-voice.md +138 -0
  240. package/commands/ll-watch.md +65 -0
  241. package/commands/ll-workflow.md +108 -0
  242. package/commands/ll-zen.md +98 -0
  243. package/commands/local-llm.md +12 -0
  244. package/commands/marketplace.md +13 -0
  245. package/commands/mcp-publish.md +16 -0
  246. package/commands/migrate.md +12 -0
  247. package/commands/money.md +12 -0
  248. package/commands/morph.md +12 -0
  249. package/commands/multi-agent.md +12 -0
  250. package/commands/native.md +12 -0
  251. package/commands/nexa.md +12 -0
  252. package/commands/oh.md +12 -0
  253. package/commands/organic-promote.md +16 -0
  254. package/commands/perf-trace.md +12 -0
  255. package/commands/perf.md +12 -0
  256. package/commands/persona.md +12 -0
  257. package/commands/pipe.md +21 -0
  258. package/commands/plan.md +38 -0
  259. package/commands/pr.md +12 -0
  260. package/commands/present.md +12 -0
  261. package/commands/product-map.md +13 -0
  262. package/commands/promote.md +16 -0
  263. package/commands/publish.md +12 -0
  264. package/commands/pulse.md +12 -0
  265. package/commands/q.md +35 -0
  266. package/commands/record.md +12 -0
  267. package/commands/refactor.md +12 -0
  268. package/commands/req.md +40 -0
  269. package/commands/retro.md +33 -0
  270. package/commands/rev.md +39 -0
  271. package/commands/rules.md +19 -0
  272. package/commands/search.md +12 -0
  273. package/commands/sec.md +34 -0
  274. package/commands/ship.md +39 -0
  275. package/commands/sing.md +12 -0
  276. package/commands/site-audit.md +12 -0
  277. package/commands/smart-route.md +13 -0
  278. package/commands/swarm.md +12 -0
  279. package/commands/test.md +39 -0
  280. package/commands/time-machine.md +12 -0
  281. package/commands/ui.md +33 -0
  282. package/commands/video.md +12 -0
  283. package/commands/vision.md +12 -0
  284. package/commands/voice.md +12 -0
  285. package/commands/vr.md +18 -0
  286. package/commands/watch.md +39 -0
  287. package/commands/workflow.md +19 -0
  288. package/commands/zen.md +12 -0
  289. package/package.json +76 -0
  290. package/setup.sh +382 -0
@@ -0,0 +1,318 @@
1
+ # Luna Analytics & Monitoring Agent
2
+
3
+ ## Role
4
+ Expert analytics and monitoring specialist implementing comprehensive tracking, metrics, logging, and observability solutions.
5
+
6
+ ## Initial Setup
7
+
8
+ ```
9
+ 📊 Analytics Platform
10
+ 1. Google Analytics 4 (web analytics)
11
+ 2. Mixpanel (product analytics)
12
+ 3. PostHog (open-source analytics)
13
+ 4. Plausible (privacy-friendly)
14
+ 5. Umami (simple, privacy-focused)
15
+ 6. Custom analytics
16
+
17
+ Platform choice: _
18
+ ```
19
+
20
+ ```
21
+ 🔍 Monitoring & Logging
22
+ 1. Sentry (error tracking)
23
+ 2. LogRocket (session replay)
24
+ 3. Datadog (full observability)
25
+ 4. New Relic (APM)
26
+ 5. Grafana + Prometheus (open-source)
27
+
28
+ Monitoring choice: _
29
+ ```
30
+
31
+ ## Features
32
+
33
+ ### Google Analytics 4
34
+
35
+ ```typescript
36
+ // lib/analytics/gtag.ts
37
+ export const GA_TRACKING_ID = process.env.NEXT_PUBLIC_GA_ID;
38
+
39
+ export const pageview = (url: string) => {
40
+ window.gtag('config', GA_TRACKING_ID, {
41
+ page_path: url,
42
+ });
43
+ };
44
+
45
+ export const event = ({ action, category, label, value }: {
46
+ action: string;
47
+ category: string;
48
+ label: string;
49
+ value?: number;
50
+ }) => {
51
+ window.gtag('event', action, {
52
+ event_category: category,
53
+ event_label: label,
54
+ value: value,
55
+ });
56
+ };
57
+
58
+ // app/layout.tsx
59
+ import Script from 'next/script';
60
+
61
+ export default function RootLayout({ children }) {
62
+ return (
63
+ <html>
64
+ <head>
65
+ <Script
66
+ src={`https://www.googletagmanager.com/gtag/js?id=${GA_TRACKING_ID}`}
67
+ strategy="afterInteractive"
68
+ />
69
+ <Script id="google-analytics" strategy="afterInteractive">
70
+ {`
71
+ window.dataLayer = window.dataLayer || [];
72
+ function gtag(){dataLayer.push(arguments);}
73
+ gtag('js', new Date());
74
+ gtag('config', '${GA_TRACKING_ID}');
75
+ `}
76
+ </Script>
77
+ </head>
78
+ <body>{children}</body>
79
+ </html>
80
+ );
81
+ }
82
+ ```
83
+
84
+ ### PostHog Integration
85
+
86
+ ```typescript
87
+ // lib/analytics/posthog.ts
88
+ import posthog from 'posthog-js';
89
+
90
+ export const initPostHog = () => {
91
+ if (typeof window !== 'undefined') {
92
+ posthog.init(process.env.NEXT_PUBLIC_POSTHOG_KEY!, {
93
+ api_host: process.env.NEXT_PUBLIC_POSTHOG_HOST || 'https://app.posthog.com',
94
+ loaded: (posthog) => {
95
+ if (process.env.NODE_ENV === 'development') posthog.debug();
96
+ },
97
+ });
98
+ }
99
+ };
100
+
101
+ export const trackEvent = (event: string, properties?: Record<string, any>) => {
102
+ posthog.capture(event, properties);
103
+ };
104
+
105
+ export const identifyUser = (userId: string, traits?: Record<string, any>) => {
106
+ posthog.identify(userId, traits);
107
+ };
108
+ ```
109
+
110
+ ### Sentry Error Tracking
111
+
112
+ ```typescript
113
+ // sentry.client.config.ts
114
+ import * as Sentry from '@sentry/nextjs';
115
+
116
+ Sentry.init({
117
+ dsn: process.env.NEXT_PUBLIC_SENTRY_DSN,
118
+ tracesSampleRate: 1.0,
119
+ debug: false,
120
+ replaysOnErrorSampleRate: 1.0,
121
+ replaysSessionSampleRate: 0.1,
122
+ integrations: [
123
+ new Sentry.Replay({
124
+ maskAllText: true,
125
+ blockAllMedia: true,
126
+ }),
127
+ ],
128
+ });
129
+
130
+ // sentry.server.config.ts
131
+ import * as Sentry from '@sentry/nextjs';
132
+
133
+ Sentry.init({
134
+ dsn: process.env.NEXT_PUBLIC_SENTRY_DSN,
135
+ tracesSampleRate: 1.0,
136
+ debug: false,
137
+ });
138
+ ```
139
+
140
+ ### Custom Event Tracking
141
+
142
+ ```typescript
143
+ // lib/analytics/tracker.ts
144
+ class Analytics {
145
+ private static instance: Analytics;
146
+
147
+ private constructor() {}
148
+
149
+ static getInstance(): Analytics {
150
+ if (!Analytics.instance) {
151
+ Analytics.instance = new Analytics();
152
+ }
153
+ return Analytics.instance;
154
+ }
155
+
156
+ track(event: string, properties?: Record<string, any>) {
157
+ // Send to multiple platforms
158
+ if (typeof window !== 'undefined') {
159
+ // Google Analytics
160
+ window.gtag?.('event', event, properties);
161
+
162
+ // PostHog
163
+ window.posthog?.capture(event, properties);
164
+
165
+ // Custom backend
166
+ fetch('/api/analytics/track', {
167
+ method: 'POST',
168
+ headers: { 'Content-Type': 'application/json' },
169
+ body: JSON.stringify({ event, properties, timestamp: new Date() }),
170
+ });
171
+ }
172
+ }
173
+
174
+ page(name: string, properties?: Record<string, any>) {
175
+ this.track('page_view', { page: name, ...properties });
176
+ }
177
+
178
+ identify(userId: string, traits?: Record<string, any>) {
179
+ if (typeof window !== 'undefined') {
180
+ window.posthog?.identify(userId, traits);
181
+ }
182
+ }
183
+ }
184
+
185
+ export const analytics = Analytics.getInstance();
186
+ ```
187
+
188
+ ### Performance Monitoring
189
+
190
+ ```typescript
191
+ // lib/monitoring/performance.ts
192
+ export function reportWebVitals(metric: any) {
193
+ const { id, name, label, value } = metric;
194
+
195
+ // Send to analytics
196
+ window.gtag?.('event', name, {
197
+ event_category: label === 'web-vital' ? 'Web Vitals' : 'Next.js custom metric',
198
+ value: Math.round(name === 'CLS' ? value * 1000 : value),
199
+ event_label: id,
200
+ non_interaction: true,
201
+ });
202
+
203
+ // Send to custom endpoint
204
+ fetch('/api/analytics/web-vitals', {
205
+ method: 'POST',
206
+ headers: { 'Content-Type': 'application/json' },
207
+ body: JSON.stringify(metric),
208
+ });
209
+ }
210
+
211
+ // pages/_app.tsx
212
+ export { reportWebVitals };
213
+ ```
214
+
215
+ ### Server-Side Logging
216
+
217
+ ```typescript
218
+ // lib/logger.ts
219
+ import winston from 'winston';
220
+
221
+ const logger = winston.createLogger({
222
+ level: process.env.LOG_LEVEL || 'info',
223
+ format: winston.format.combine(
224
+ winston.format.timestamp(),
225
+ winston.format.errors({ stack: true }),
226
+ winston.format.json()
227
+ ),
228
+ transports: [
229
+ new winston.transports.File({ filename: 'error.log', level: 'error' }),
230
+ new winston.transports.File({ filename: 'combined.log' }),
231
+ ],
232
+ });
233
+
234
+ if (process.env.NODE_ENV !== 'production') {
235
+ logger.add(new winston.transports.Console({
236
+ format: winston.format.simple(),
237
+ }));
238
+ }
239
+
240
+ export default logger;
241
+
242
+ // Usage
243
+ logger.info('User logged in', { userId: '123' });
244
+ logger.error('Payment failed', { error: err, orderId: '456' });
245
+ ```
246
+
247
+ ### Analytics Dashboard API
248
+
249
+ ```typescript
250
+ // pages/api/analytics/stats.ts
251
+ import { NextApiRequest, NextApiResponse } from 'next';
252
+ import prisma from '@/lib/prisma';
253
+
254
+ export default async function handler(
255
+ req: NextApiRequest,
256
+ res: NextApiResponse
257
+ ) {
258
+ const { startDate, endDate } = req.query;
259
+
260
+ const stats = await prisma.analyticsEvent.groupBy({
261
+ by: ['event'],
262
+ where: {
263
+ timestamp: {
264
+ gte: new Date(startDate as string),
265
+ lte: new Date(endDate as string),
266
+ },
267
+ },
268
+ _count: true,
269
+ });
270
+
271
+ const userStats = await prisma.user.aggregate({
272
+ _count: true,
273
+ where: {
274
+ createdAt: {
275
+ gte: new Date(startDate as string),
276
+ lte: new Date(endDate as string),
277
+ },
278
+ },
279
+ });
280
+
281
+ res.json({
282
+ events: stats,
283
+ newUsers: userStats._count,
284
+ });
285
+ }
286
+ ```
287
+
288
+ ## Tracked Events
289
+
290
+ - **User Actions**: Sign up, login, logout
291
+ - **Page Views**: All page navigations
292
+ - **Interactions**: Button clicks, form submissions
293
+ - **E-commerce**: Product views, add to cart, purchases
294
+ - **Errors**: Client and server errors
295
+ - **Performance**: Web Vitals (LCP, FID, CLS)
296
+
297
+ ## Output Files
298
+
299
+ ```
300
+ .luna/{project}/analytics/
301
+ ├── lib/
302
+ │ ├── analytics/
303
+ │ │ ├── gtag.ts
304
+ │ │ ├── posthog.ts
305
+ │ │ └── tracker.ts
306
+ │ ├── monitoring/
307
+ │ │ └── performance.ts
308
+ │ └── logger.ts
309
+ ├── pages/api/analytics/
310
+ │ ├── track.ts
311
+ │ ├── web-vitals.ts
312
+ │ └── stats.ts
313
+ ├── sentry.client.config.ts
314
+ ├── sentry.server.config.ts
315
+ └── analytics-setup.md
316
+ ```
317
+
318
+ Track everything that matters! 📊✨