Commit Graph

9 Commits

Author SHA1 Message Date
saravanakumardb1
cc0bffea86 feat(packages): close ROADMAP TODOs #1, #2, #3 — density tier, react-auth fix, routePrefix
Three coordinated package changes addressing Wave 1 cross-repo TODOs
from the UI/UX roadmap (learning_ai_uxui_web/docs/ROADMAP_2026.md §10).

═══════════════════════════════════════════════════════════════════════
TODO #2 — @bytelyst/react-auth bump 0.1.8 → 0.2.0
═══════════════════════════════════════════════════════════════════════
  - Changes 'workspace:*' to 'workspace:^' for the @bytelyst/api-client
    dependency. On pnpm publish this resolves to a caret range (e.g.
    ^0.1.6) instead of '*', restoring installability for consumers.
    (The 0.1.6 tarball was published with a literal 'workspace:*'
    string — newer minor bump unblocks the showcase react-auth demo.)
  - 21 tests still passing.

═══════════════════════════════════════════════════════════════════════
TODO #3 — @bytelyst/dashboard-shell bump 0.1.7 → 0.2.0
═══════════════════════════════════════════════════════════════════════
  - Adds 'routePrefix?: string' prop to DashboardShellProps, SidebarProps,
    and TopBarProps. Threads through DashboardShell → Sidebar + TopBar.
  - Built-in /profile, /billing, /settings links now use the prefix:
      routePrefix="/app" → /app/profile, /app/billing, /app/settings
  - Defaults to '' (empty string) — fully back-compat with 0.1.x callers.
  - 2 new vitest cases covering both prefixed and default behavior;
    43 / 43 tests passing (+2 from 41).

═══════════════════════════════════════════════════════════════════════
TODO #1 — @bytelyst/design-tokens bump 0.1.8 → 0.2.0
═══════════════════════════════════════════════════════════════════════
  - Adds a density-aware spacing tier on top of the existing raw
    --ml-space-* tier:
        --bl-space-scale: 1                       (default :root)
        --bl-space-1..16: calc(--ml-space-N × --bl-space-scale)
  - Emits density selectors at the end of tokens.css:
        [data-density="compact"]    { --bl-space-scale: 0.875; }
        [data-density="comfortable"] { --bl-space-scale: 1; }
        [data-density="spacious"]   { --bl-space-scale: 1.125; }
  - Generator (scripts/generate.ts) emits both tiers automatically; the
    auto-generated per-product CSS files (lysnrai, mindlyst, etc.) gain
    a single blank-line diff from regeneration — no semantic change.
  - 11 / 11 token tests passing.

═══════════════════════════════════════════════════════════════════════
Decision doc — docs/ROADMAP_2026_DECISIONS.md
═══════════════════════════════════════════════════════════════════════
  - Records pragmatic defaults for TODO ledger items #9–#13 so
    implementation work doesn't block:
      #9  Storybook hosting → self-hosted on Gitea Pages (free)
      #10 useChat protocol  → adopt Vercel AI SDK shape, abstract transport
      #11 react-auth fold-in → defer to Wave 7
      #12 dashboard-shell merge → defer to Wave 7
      #13 mobile-native UI → out of scope (tokens-only sharing)
  - Each decision is reversible via RFC.

═══════════════════════════════════════════════════════════════════════
Publish flow
═══════════════════════════════════════════════════════════════════════
  These three packages now require a release. The existing publish
  workflow (.gitea/workflows/publish-packages.yml) has PACKAGE_FILTER
  pinned to @bytelyst/errors and won't pick them up automatically — a
  manual workflow_dispatch with a broader filter (or the existing
  publish-all-packages.yml on workflow_dispatch) is needed to ship
  0.2.0 to the Gitea npm registry.

Refs: learning_ai_uxui_web/docs/ROADMAP_2026.md §10 TODOs #1, #2, #3, #9–#13
2026-05-27 11:49:20 -07:00
saravanakumardb1
dc8161b382 fix(design-tokens): add --bl-* alias layer to all 10 product CSS files + generator
Root cause: @bytelyst/ui components reference --bl-* tokens (e.g. --bl-accent,
--bl-bg-canvas) but only tokens.css (MindLyst) and chronomind.css had these
aliases. All other 10 product CSS files fell back to hardcoded defaults,
making shared components unstyled.

Changes:
- actiontrail.css: --bl-* → --at-*
- flowmonk.css: --bl-* → --fm-*
- jarvisjr.css: --bl-* → --jj-*
- localllmlab.css: --bl-* → --llm-*
- localmemgpt.css: --bl-* → --lmg-*
- lysnrai.css: --bl-* → --lys-*
- mindlyst.css: --bl-* → --ml-*
- nomgap.css: --bl-* → --ng-*
- notelett.css: --bl-* → --nl-*
- peakpulse.css: --bl-* → --pp-*
- generate.ts: generateProductCSS() now emits --bl-* aliases automatically

31 aliases per file covering: surfaces, borders, text, accent, info/success/
warning/danger, focus ring, overlay scrim.
2026-05-14 20:33:40 -07:00
29ad325514 Improve shared UI primitives 2026-05-08 20:56:05 -07:00
433c3a5493 chore(create-app): document generator output
What changed:
- Classified create-app generator console output as intentional CLI output.
- Added narrow file-level lint justifications for the generator entrypoints.

Warning impact:
- @bytelyst/create-app scoped warnings: 49 -> 0.
- Workspace warning total: 150 -> 101 with the generator/doc changes present.

Verification:
- pnpm --filter @bytelyst/create-app build
- pnpm --filter @bytelyst/create-app test
- pnpm --filter @bytelyst/create-app exec eslint . --ext .ts,.tsx
- pnpm lint
2026-05-04 16:37:13 -07:00
saravanakumardb1
6b6f147de7 feat(design-tokens): extend generator with per-product Swift + Kotlin native themes
- Add generateProductSwift() and generateProductKotlin() to generate.ts
- Add PRODUCT_NATIVE_MAP for 10 products (ChronoMind, JarvisJr, PeakPulse, LysnrAI, NomGap, ActionTrail, FlowMonk, NoteLett, LocalMemGPT, LocalLLMLab)
- Output 20 native token files in generated/native/
- Fix TS type narrowing for gradient objects (line 382)
- Update DESIGN_SYSTEM_AUDIT.md with Appendix G remediation results
2026-03-28 00:25:03 -07:00
saravanakumardb1
b3a1ee5db9 feat(design-tokens): per-product CSS generation for all 11 products 2026-03-27 16:24:58 -07:00
saravanakumardb1
90b9cf93d8 fix(common): configure ESLint 9 and fix lint issues
- Added @eslint/js dependency
- Updated eslint.config.js for ESLint 9 compatibility
- Added required globals (crypto, localStorage, React, etc.)
- Fixed unused imports and variables
- Disabled sort-imports temporarily
- Formatted all files with Prettier
2026-02-12 16:37:30 -08:00
saravanakumardb1
09c767295a feat(design-tokens): generate platform token files (CSS, TS, Kotlin, Swift)
Updated generator to match existing MindLyst conventions:
- Kotlin: SCREAMING_SNAKE_CASE, Palette/Dark/Light/BrainGradient/Typography/Motion/Layout
- Swift: Color(hex: UInt), dark/light prefixes, Gradient(colors:), MindLystMotion, Color ext
- CSS: [data-theme] selectors, --ml-fs-*, --ml-elevation-*, --ml-motion-*, light theme

Generated 4 files:
- generated/tokens.css — CSS custom properties (dark + light themes)
- generated/tokens.ts — Full token tree as const
- generated/MindLystTokens.kt — KMP shared module (drop-in for existing)
- generated/MindLystTheme.swift — SwiftUI structs (drop-in for existing)
2026-02-12 12:15:07 -08:00
saravanakumardb1
b80d249c78 feat(design-tokens): add @bytelyst/design-tokens package
- Canonical bytelyst.tokens.json with colors, typography, spacing, radius, elevation, motion, breakpoints
- loadTokens() for programmatic access
- generate.ts script outputs 4 platform formats:
  - tokens.css (CSS custom properties with --ml-* prefix)
  - tokens.ts (TypeScript constants)
  - MindLystTokens.kt (Kotlin object for KMP shared module)
  - MindLystTheme.swift (Swift structs for SwiftUI)
- Shared across LysnrAI dashboards and MindLyst native apps
2026-02-12 11:22:52 -08:00