Commit Graph

12 Commits

Author SHA1 Message Date
sleepy c430766afc fix: separate text-accent from background-accent colors
- Add --text-accent CSS variable (light purple #c4b5fd)
- Keep --accent for backgrounds only (dark purple #2e0a5d)
- Update Assistant name color to use --text-accent
- Update drawer section headers to use --text-accent
- Update streaming label to use --text-accent
- All purple text is now much lighter for readability
- Backgrounds retain the dark purple shade
- All 52 tests passing, build successful
2026-02-26 02:30:27 +01:00
sleepy 36eebafeb3 style: darken purple accent colors to 1/3 brightness
- Accent: #5b21b6 → #1e0b3d
- Accent-hover: #6d28d9 → #240d48
- Accent-light: #8b5cf6 → #2e1f52

Very dark purple now used for:
- Assistant name in chat bubbles
- STREAMING badge background
- Code block language label background
- Toggle button active state
- Session drawer section headers
- Input focus border
- Button hover state background

All 52 tests passing, build successful
2026-02-26 02:15:26 +01:00
sleepy 5e42bee3dd feat: user bubbles now use neutral gray background
- User messages: var(--bg-tertiary) instead of accent color
- Assistant messages: var(--bg-secondary) (unchanged)
- User bubbles: slightly lighter gray (1f1f1f) than assistant (1a1a1a)
- User bubble border: var(--border-light) for subtle distinction
- User label color: var(--text-secondary) instead of white
- Both message types now have consistent text color (var(--text-primary))
- Streaming bubble unchanged (assistant style)
- All 52 tests passing
2026-02-26 02:08:58 +01:00
sleepy 1672fadc05 style: darken all accent colors for eye comfort
- Accent: #818cf8 → #5558e6 (darker indigo)
- Error: #f87171 → #b91c1c (darker red)
- Success: #10b981 → #0d9488 (darker teal)
- Backgrounds: #0d→#0a, #1a→#16, #25→1f (darker)
- Borders: #33→2a, #40→38 (darker)
- Text: #fff→#e8, #b0→a8, #88→80 (softer)
- Code block background: #1e1e1e → #1a1a1a
- Code block text: #d4d4d4 → #e8e8e8 (lighter for contrast)
- All 52 tests passing
2026-02-26 02:08:05 +01:00
sleepy f0ce25991f feat: improve Markdown rendering with proper styling
- Add remark-gfm for GitHub Flavored Markdown support
- Create dedicated MarkdownContent component
- Improved message bubble padding (16px 20px) for better spacing
- Code blocks now in separate box with dark background (#1e1e1e)
- Code blocks show language label in blue accent header
- Fixed list indentation to align properly with message text
- Lists have consistent spacing (margin/padding)
- Better blockquote styling with background and border
- Improved table styling with borders and alternating row colors
- Support for all common Markdown elements (headings, links, bold, italic, hr)
- All 52 tests passing
2026-02-26 02:03:30 +01:00
sleepy 183241536d feat: add Markdown rendering support
- Add react-markdown dependency
- Render message content as Markdown
- Style Markdown elements (code blocks, headings, lists, tables, blockquotes, etc.)
- Code blocks use monospace font with dark background
- Keep export functionality as-is (already preserves Markdown)
- All 52 tests passing
2026-02-26 01:58:46 +01:00
sleepy e8968ee87b feat: center session name in header
- Use flexbox to horizontally center session title
- Add absolute positioned spacer for menu button
- Session name now perfectly centered in the top bar
- Message count and streaming badge remain centered below
- Export button stays on the right side
- All 52 tests passing
2026-02-26 01:53:04 +01:00
sleepy 4e65745bf9 refactor: remove animations and emoji, fix layout spacing
- Remove all button shine/hover animations from CSS
- Replace all emoji with text labels
- Fix header padding to prevent overlap with drawer
  - Added left padding (80px) to header content
  - Session name is now fully visible
- Simplified empty states without icons
- Updated delete button text from icon to 'Del'
- Menu button now shows 'Menu' text instead of hamburger icon
- All 52 tests passing
2026-02-26 01:50:23 +01:00
sleepy 0789893e19 feat: improve UI styling and add streaming support
UI Improvements:
- Modern gradient buttons with hover effects and shine animation
- Better typography and spacing throughout the app
- Improved session cards with message count and timestamps
- Better styled input fields with focus states
- Smooth transitions and animations
- Added emoji icons for better visual cues
- Improved empty states with icons and better messaging

New Features:
- Added streaming toggle button in API configuration
- Real-time streaming response support with live token display
- Stop button to cancel streaming requests
- Message count display in header
- STREAMING indicator badge when enabled
- AbortController support for request cancellation
- Export now includes streaming status

Technical Changes:
- Added sendMessageStream function to llmApi
- Added streaming field to Config interface
- Updated all components to support streaming mode
- All 52 tests passing
2026-02-26 01:45:19 +01:00
sleepy 7928fc1f00 refactor: convert project from JavaScript to TypeScript and switch to pnpm
- Convert all .js/.jsx files to .ts/.tsx
- Add TypeScript configuration (tsconfig.json, tsconfig.node.json)
- Update vite.config.js to vite.config.ts
- Add TypeScript type definitions (@types/react, @types/react-dom, @types/node)
- Replace npm with pnpm (pnpm-lock.yaml)
- Add model configuration option for LLM API
- Update package.json scripts for TypeScript build
- All 52 tests passing
2026-02-26 01:35:33 +01:00
sleepy f516f87ccf fix: resolve React act() warnings in ChatWindow tests and add TypeScript dependency 2026-02-26 01:20:52 +01:00
sleepy fcc8b78887 feat: initial implementation of Light Chat app with React, Capacitor, and comprehensive tests 2026-02-26 01:13:07 +01:00