@squadbase/vantage-template 0.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 (99) hide show
  1. package/README.md +112 -0
  2. package/base-template/.squadbase/skills/vantage-add-feature/SKILL.md +162 -0
  3. package/base-template/.squadbase/skills/vantage-app/SKILL.md +120 -0
  4. package/base-template/.squadbase/skills/vantage-pitfalls/SKILL.md +137 -0
  5. package/base-template/AGENTS.md +339 -0
  6. package/base-template/_404.tsx +18 -0
  7. package/base-template/_error.tsx +14 -0
  8. package/base-template/_gitignore +5 -0
  9. package/base-template/_layout.tsx +60 -0
  10. package/base-template/components/user-card.tsx +132 -0
  11. package/base-template/index.tsx +59 -0
  12. package/base-template/package.json +27 -0
  13. package/base-template/server/api/health.ts +12 -0
  14. package/base-template/squadbase.yml +5 -0
  15. package/base-template/styles.css +18 -0
  16. package/base-template/tsconfig.json +28 -0
  17. package/chart-presets/berry.css +16 -0
  18. package/chart-presets/blue.css +16 -0
  19. package/chart-presets/forest.css +16 -0
  20. package/chart-presets/mono.css +16 -0
  21. package/chart-presets/ocean.css +16 -0
  22. package/chart-presets/sunset.css +16 -0
  23. package/dist/index.js +1157 -0
  24. package/package.json +55 -0
  25. package/ui-templates/CLAUDE.md +200 -0
  26. package/ui-templates/blank/manifest.json +8 -0
  27. package/ui-templates/blank/pages/index.tsx +33 -0
  28. package/ui-templates/blank-ja/manifest.json +8 -0
  29. package/ui-templates/blank-ja/pages/index.tsx +33 -0
  30. package/ui-templates/chart-grid/lib/mock-data.ts +139 -0
  31. package/ui-templates/chart-grid/lib/types.ts +31 -0
  32. package/ui-templates/chart-grid/manifest.json +10 -0
  33. package/ui-templates/chart-grid/pages/index.tsx +331 -0
  34. package/ui-templates/chart-grid/preview-square.png +0 -0
  35. package/ui-templates/chart-grid/preview-wide.png +0 -0
  36. package/ui-templates/chart-grid-ja/lib/mock-data.ts +139 -0
  37. package/ui-templates/chart-grid-ja/lib/types.ts +31 -0
  38. package/ui-templates/chart-grid-ja/manifest.json +10 -0
  39. package/ui-templates/chart-grid-ja/pages/index.tsx +331 -0
  40. package/ui-templates/chart-grid-ja/preview-square.png +0 -0
  41. package/ui-templates/chart-grid-ja/preview-wide.png +0 -0
  42. package/ui-templates/funnel/components/chart-helpers.ts +11 -0
  43. package/ui-templates/funnel/components/stage-table.tsx +63 -0
  44. package/ui-templates/funnel/lib/mock-data.ts +22 -0
  45. package/ui-templates/funnel/lib/types.ts +11 -0
  46. package/ui-templates/funnel/manifest.json +12 -0
  47. package/ui-templates/funnel/pages/index.tsx +252 -0
  48. package/ui-templates/funnel/preview-square.png +0 -0
  49. package/ui-templates/funnel/preview-wide.png +0 -0
  50. package/ui-templates/funnel-ja/components/chart-helpers.ts +11 -0
  51. package/ui-templates/funnel-ja/components/stage-table.tsx +63 -0
  52. package/ui-templates/funnel-ja/lib/mock-data.ts +22 -0
  53. package/ui-templates/funnel-ja/lib/types.ts +11 -0
  54. package/ui-templates/funnel-ja/manifest.json +12 -0
  55. package/ui-templates/funnel-ja/pages/index.tsx +251 -0
  56. package/ui-templates/funnel-ja/preview-square.png +0 -0
  57. package/ui-templates/funnel-ja/preview-wide.png +0 -0
  58. package/ui-templates/kpi-chart-advanced/components/campaign-table.tsx +69 -0
  59. package/ui-templates/kpi-chart-advanced/lib/mock-data.ts +109 -0
  60. package/ui-templates/kpi-chart-advanced/lib/types.ts +38 -0
  61. package/ui-templates/kpi-chart-advanced/manifest.json +11 -0
  62. package/ui-templates/kpi-chart-advanced/pages/index.tsx +339 -0
  63. package/ui-templates/kpi-chart-advanced/preview-square.png +0 -0
  64. package/ui-templates/kpi-chart-advanced/preview-wide.png +0 -0
  65. package/ui-templates/kpi-chart-advanced-ja/components/campaign-table.tsx +69 -0
  66. package/ui-templates/kpi-chart-advanced-ja/lib/mock-data.ts +109 -0
  67. package/ui-templates/kpi-chart-advanced-ja/lib/types.ts +38 -0
  68. package/ui-templates/kpi-chart-advanced-ja/manifest.json +11 -0
  69. package/ui-templates/kpi-chart-advanced-ja/pages/index.tsx +333 -0
  70. package/ui-templates/kpi-chart-advanced-ja/preview-square.png +0 -0
  71. package/ui-templates/kpi-chart-advanced-ja/preview-wide.png +0 -0
  72. package/ui-templates/kpi-chart-simple/components/top-items-table.tsx +73 -0
  73. package/ui-templates/kpi-chart-simple/lib/types.ts +44 -0
  74. package/ui-templates/kpi-chart-simple/manifest.json +11 -0
  75. package/ui-templates/kpi-chart-simple/pages/index.tsx +200 -0
  76. package/ui-templates/kpi-chart-simple/preview-square.png +0 -0
  77. package/ui-templates/kpi-chart-simple/preview-wide.png +0 -0
  78. package/ui-templates/kpi-chart-simple/server/kpi-summary.ts +141 -0
  79. package/ui-templates/kpi-chart-simple-ja/components/top-items-table.tsx +73 -0
  80. package/ui-templates/kpi-chart-simple-ja/lib/types.ts +44 -0
  81. package/ui-templates/kpi-chart-simple-ja/manifest.json +11 -0
  82. package/ui-templates/kpi-chart-simple-ja/pages/index.tsx +200 -0
  83. package/ui-templates/kpi-chart-simple-ja/preview-square.png +0 -0
  84. package/ui-templates/kpi-chart-simple-ja/preview-wide.png +0 -0
  85. package/ui-templates/kpi-chart-simple-ja/server/kpi-summary.ts +141 -0
  86. package/ui-templates/table-focus/components/detail-table.tsx +88 -0
  87. package/ui-templates/table-focus/lib/mock-data.ts +69 -0
  88. package/ui-templates/table-focus/lib/types.ts +24 -0
  89. package/ui-templates/table-focus/manifest.json +11 -0
  90. package/ui-templates/table-focus/pages/index.tsx +180 -0
  91. package/ui-templates/table-focus/preview-square.png +0 -0
  92. package/ui-templates/table-focus/preview-wide.png +0 -0
  93. package/ui-templates/table-focus-ja/components/detail-table.tsx +95 -0
  94. package/ui-templates/table-focus-ja/lib/mock-data.ts +69 -0
  95. package/ui-templates/table-focus-ja/lib/types.ts +24 -0
  96. package/ui-templates/table-focus-ja/manifest.json +11 -0
  97. package/ui-templates/table-focus-ja/pages/index.tsx +180 -0
  98. package/ui-templates/table-focus-ja/preview-square.png +0 -0
  99. package/ui-templates/table-focus-ja/preview-wide.png +0 -0
@@ -0,0 +1,18 @@
1
+ /*
2
+ * Project styles. Vantage imports its own Tailwind v4 theme first and then this
3
+ * file, so anything declared here wins.
4
+ *
5
+ * There is no `tailwind.config.*` in a Vantage app — theme tokens are plain CSS
6
+ * variables. Override the ones below to rebrand the dashboard: the UI kit, every
7
+ * Tailwind utility (`bg-primary`, `bg-chart-1`, …) and `EChart` all resolve
8
+ * through them.
9
+ *
10
+ * Charts included: since v0.2.1 `EChart` reads `--chart-1..5` for series colours
11
+ * and the foreground/border tokens for axes, legend and tooltip, in both light
12
+ * and dark mode. Override `--chart-*` here and the charts follow. Pass
13
+ * `option.color` only when one chart needs its own palette.
14
+ */
15
+ :root {
16
+ /* --primary: hsl(221 83% 53%); */
17
+ /* --radius: 0.625rem; */
18
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2022",
4
+ "module": "ESNext",
5
+ "moduleResolution": "Bundler",
6
+ "lib": ["ES2023", "DOM", "DOM.Iterable"],
7
+ "jsx": "react-jsx",
8
+ "strict": true,
9
+ "skipLibCheck": true,
10
+ "esModuleInterop": true,
11
+ "resolveJsonModule": true,
12
+ "isolatedModules": true,
13
+ "verbatimModuleSyntax": true,
14
+ "noUncheckedIndexedAccess": true,
15
+ "forceConsistentCasingInFileNames": true,
16
+ "useDefineForClassFields": true,
17
+ "noEmit": true,
18
+ "types": ["react", "react-dom", "node"]
19
+ },
20
+ "include": ["**/*.ts", "**/*.tsx", ".vantage/types/**/*.d.ts"],
21
+ "exclude": [
22
+ "node_modules",
23
+ "dist",
24
+ ".vantage/client-entry.tsx",
25
+ ".vantage/route-tree.gen.ts",
26
+ ".vantage/server-routes.gen.ts"
27
+ ]
28
+ }
@@ -0,0 +1,16 @@
1
+ :root {
2
+ --chart-1: var(--color-purple-600);
3
+ --chart-2: var(--color-pink-500);
4
+ --chart-3: var(--color-fuchsia-500);
5
+ --chart-4: var(--color-violet-500);
6
+ --chart-5: var(--color-rose-400);
7
+ }
8
+
9
+ .dark,
10
+ [data-theme="dark"] {
11
+ --chart-1: var(--color-purple-400);
12
+ --chart-2: var(--color-pink-400);
13
+ --chart-3: var(--color-fuchsia-400);
14
+ --chart-4: var(--color-violet-400);
15
+ --chart-5: var(--color-rose-300);
16
+ }
@@ -0,0 +1,16 @@
1
+ :root {
2
+ --chart-1: var(--color-blue-600);
3
+ --chart-2: var(--color-teal-500);
4
+ --chart-3: var(--color-fuchsia-500);
5
+ --chart-4: var(--color-violet-500);
6
+ --chart-5: var(--color-gray-400);
7
+ }
8
+
9
+ .dark,
10
+ [data-theme="dark"] {
11
+ --chart-1: var(--color-blue-400);
12
+ --chart-2: var(--color-teal-400);
13
+ --chart-3: var(--color-fuchsia-400);
14
+ --chart-4: var(--color-violet-400);
15
+ --chart-5: var(--color-gray-500);
16
+ }
@@ -0,0 +1,16 @@
1
+ :root {
2
+ --chart-1: var(--color-emerald-600);
3
+ --chart-2: var(--color-lime-500);
4
+ --chart-3: var(--color-amber-500);
5
+ --chart-4: var(--color-green-600);
6
+ --chart-5: var(--color-stone-400);
7
+ }
8
+
9
+ .dark,
10
+ [data-theme="dark"] {
11
+ --chart-1: var(--color-emerald-400);
12
+ --chart-2: var(--color-lime-400);
13
+ --chart-3: var(--color-amber-400);
14
+ --chart-4: var(--color-green-400);
15
+ --chart-5: var(--color-stone-500);
16
+ }
@@ -0,0 +1,16 @@
1
+ :root {
2
+ --chart-1: var(--color-zinc-900);
3
+ --chart-2: var(--color-zinc-600);
4
+ --chart-3: var(--color-zinc-400);
5
+ --chart-4: var(--color-zinc-300);
6
+ --chart-5: var(--color-zinc-200);
7
+ }
8
+
9
+ .dark,
10
+ [data-theme="dark"] {
11
+ --chart-1: var(--color-zinc-100);
12
+ --chart-2: var(--color-zinc-300);
13
+ --chart-3: var(--color-zinc-500);
14
+ --chart-4: var(--color-zinc-600);
15
+ --chart-5: var(--color-zinc-700);
16
+ }
@@ -0,0 +1,16 @@
1
+ :root {
2
+ --chart-1: var(--color-sky-600);
3
+ --chart-2: var(--color-cyan-500);
4
+ --chart-3: var(--color-indigo-500);
5
+ --chart-4: var(--color-teal-500);
6
+ --chart-5: var(--color-slate-400);
7
+ }
8
+
9
+ .dark,
10
+ [data-theme="dark"] {
11
+ --chart-1: var(--color-sky-400);
12
+ --chart-2: var(--color-cyan-400);
13
+ --chart-3: var(--color-indigo-400);
14
+ --chart-4: var(--color-teal-400);
15
+ --chart-5: var(--color-slate-500);
16
+ }
@@ -0,0 +1,16 @@
1
+ :root {
2
+ --chart-1: var(--color-orange-600);
3
+ --chart-2: var(--color-amber-500);
4
+ --chart-3: var(--color-rose-500);
5
+ --chart-4: var(--color-yellow-500);
6
+ --chart-5: var(--color-stone-400);
7
+ }
8
+
9
+ .dark,
10
+ [data-theme="dark"] {
11
+ --chart-1: var(--color-orange-400);
12
+ --chart-2: var(--color-amber-400);
13
+ --chart-3: var(--color-rose-400);
14
+ --chart-4: var(--color-yellow-400);
15
+ --chart-5: var(--color-stone-500);
16
+ }