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

Light Chat

A lightweight Android chat application built with React and Capacitor for connecting to locally or remotely hosted LLMs.

Features

  • LLM API Integration: Connect to any OpenAI-compatible API endpoint
  • Session Management: Multiple chat sessions with add/remove functionality
  • Dark Theme: Sleek black/dark UI design
  • Conversation Export: Save chats as text, log, or markdown files
  • Custom System Prompts: Inject your own system prompts for personalized interactions
  • Model Configuration: Custom model name support for local LLMs
  • Offline Ready: Capacitor wrapper for native Android APK generation

Tech Stack

  • Frontend: React + TypeScript
  • Mobile Wrapper: Capacitor
  • Build Tool: Vite
  • Package Manager: pnpm
  • Testing: Vitest + React Testing Library
  • Android Studio: For final APK generation

Getting Started

Prerequisites

  • Node.js (v18+)
  • pnpm
  • Android Studio (for APK building)
  • Capacitor CLI

Installation

# Install dependencies with pnpm
pnpm install

# Start development server
pnpm dev

Build for Android

# Type check TypeScript code
pnpm type-check

# Build the web app
pnpm build

# Sync with Capacitor
npx cap sync

# Open in Android Studio
npx cap open android

Project Structure

The codebase follows these principles:

  • Simple: Keep things straightforward
  • Modular: Separate concerns into distinct modules
  • Reusable: Abstract common functionality
  • Tested: Unit tests for all components

Contributing

When adding features:

  1. Look for existing similar functions to abstract
  2. Write unit tests
  3. Keep components small and focused
  4. Follow the modular architecture
S
Description
No description provided
Readme 179 KiB
Languages
TypeScript 95.2%
CSS 4%
HTML 0.5%
JavaScript 0.3%