Skip to content

Commit 119adb4

Browse files
committed
docs: update README to reflect new features and enhancements in model management, chat UI, content extraction, and customization options
1 parent 5b32fc0 commit 119adb4

File tree

1 file changed

+72
-27
lines changed

1 file changed

+72
-27
lines changed

README.md

Lines changed: 72 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -50,40 +50,76 @@
5050

5151
## ✨ Features
5252

53-
- 🔌 **Local Ollama Integration** – Connect to a local Ollama server (no API keys)
54-
- 💬 **In-Browser Chat UI** – Lightweight, minimal, fast
55-
- ⚙️ **Custom Settings** – Control model parameters, themes, prompt templates
56-
- 🔄 **Model Switcher** – Switch between models in real time
57-
- 🔍 **Model Search & Pull** – Pull models directly in the UI (with progress indicator)
58-
59-
- 🗑️ **Model Deletion with Confirmation** – Clean up unused models from the UI
53+
### 🤖 Model Management
54+
- 🔌 **Local Ollama Integration** – Connect to a local Ollama server (no API keys required)
55+
- 🔄 **Model Switcher** – Switch between models in real time with a beautiful UI
56+
- 🔍 **Model Search & Pull** – Search and pull models directly from Ollama.com in the UI (with progress indicator)
57+
- 🗑️ **Model Deletion** – Clean up unused models with confirmation dialogs
6058
- 🧳 **Load/Unload Models** – Manage Ollama memory footprint efficiently
6159
- 📦 **Model Version Display** – View and compare model versions easily
60+
- 🎛️ **Advanced Parameter Tuning** – Per-model configuration: temperature, top_k, top_p, repeat penalty, stop sequences, system prompts
61+
62+
### 💬 Chat & Conversations
63+
- 💬 **Beautiful Chat UI** – Modern, polished interface built with Shadcn UI
64+
- 🗂️ **Multi-Chat Sessions** – Create, manage, and switch between multiple chat sessions
65+
- 📤 **Export Chat Sessions** – Export single or all chat sessions as **PDF** or **JSON**
66+
- 📥 **Import Chat Sessions** – Import single or multiple chat sessions from JSON files
67+
- 📋 **Copy & Regenerate** – Quickly rerun or copy AI responses
68+
-**Streaming Responses** – Real-time streaming with typing indicators
69+
6270

63-
- 🎛️ **Tune Parameters** – Temperature, top_k, top_p, repeat penalty, stop sequences
64-
- 🧠 **Enhanced Content Extraction** – Smart extraction with lazy loading support, site-specific overrides, Defuddle integration, and automated YouTube transcript extraction
71+
### 🌐 Webpage Integration
72+
- 🧠 **Enhanced Content Extraction** – Advanced extraction with multiple scroll strategies (none, instant, gradual, smart)
73+
- 🔄 **Lazy Loading Support** – Automatically waits for dynamic content to load
6574
- 📄 **Site-Specific Overrides** – Configure extraction settings per domain (scroll strategies, delays, timeouts)
66-
- 🔊 **Advanced Text-to-Speech** – Searchable voice selector, adjustable speech rate & pitch, cross-browser compatibility, and voice testing
67-
- 🗂️ **Multi-Chat Sessions** – Save/load/delete local chats
68-
- 📤 Export Chat Sessions – Export single or all chat sessions as **PDF** or **JSON**
69-
- 📥 Import Chat Sessions – Import single or multiple chat sessions from JSON files
70-
- 🧯 **Declarative Net Request (DNR)** – Automatic CORS handling
75+
- 🎯 **Defuddle Integration** – Smart content extraction with Defuddle fallback
76+
- 📖 **Mozilla Readability** – Fallback extraction using Mozilla Readability
77+
- 🎬 **YouTube Transcripts** – Automated YouTube transcript extraction
78+
- 📊 **Extraction Metrics** – View scroll steps, mutations detected, and content length
79+
80+
### ⚙️ Customization & Settings
81+
- 🎨 **Professional UI** – Modern design system with glassmorphism effects, gradients, and smooth animations
82+
- 🌓 **Dark Mode** – Beautiful dark theme with smooth transitions
83+
- 📝 **Prompt Templates** – Create, manage, and use custom prompt templates (Ctrl+/)
84+
- 🔊 **Advanced Text-to-Speech** – Searchable voice selector with adjustable speech rate & pitch
85+
- 🎚️ **Cross-Browser Compatibility** – Works with Chrome, Brave, Edge, Opera, Vivaldi, LibreWolf, and more
86+
- 🧪 **Voice Testing** – Test voices before using them
87+
88+
### 🔒 Privacy & Performance
7189
- 🛡️ **100% Local and Private** – All storage and inference happen on your device
72-
- 📋 **Copy & Regenerate** – Quickly rerun or copy AI responses
90+
- 🧯 **Declarative Net Request (DNR)** – Automatic CORS handling
91+
- 💾 **IndexedDB Storage** – Efficient local storage for chat sessions
92+
-**Performance Optimized** – Lazy loading, debounced operations, optimized re-renders
93+
- 🔄 **State Management** – Clean Zustand-based state management
7394

7495
---
7596

7697
## 🧩 Tech Stack
7798

78-
- TypeScript
79-
- React + Vite
80-
- Plasmo (for Chrome extension boilerplate)
81-
- Shadcn UI
82-
- Biome (formatter & linter)
83-
- Ollama (local LLM backend)
84-
- Chrome Extension APIs (`declarativeNetRequest`, `storage`, `sidePanel`)
85-
- Defuddle (content extraction)
86-
- Mozilla Readability (content extraction)
99+
### Frontend
100+
- **TypeScript** – Type-safe development
101+
- **React 18** – Modern UI framework
102+
- **Vite** – Fast build tool
103+
- **Plasmo** – Chrome extension framework
104+
- **Shadcn UI** – Professional component library (Radix UI primitives)
105+
- **Tailwind CSS** – Utility-first styling
106+
- **Zustand** – Lightweight state management
107+
- **Dexie** – IndexedDB wrapper for chat storage
108+
109+
### Backend & APIs
110+
- **Ollama** – Local LLM backend
111+
- **Chrome Extension APIs**`declarativeNetRequest`, `storage`, `sidePanel`, `tabs`
112+
113+
### Content Processing
114+
- **Defuddle** – Advanced content extraction
115+
- **Mozilla Readability** – Content extraction fallback
116+
- **highlight.js** – Code syntax highlighting
117+
- **markdown-it** – Markdown rendering
118+
119+
### Developer Tools
120+
- **Biome** – Fast formatter & linter
121+
- **TypeScript** – Strict type checking
122+
- **Husky** – Git hooks
87123

88124
---
89125

@@ -329,15 +365,24 @@ Here’s what’s coming up next in **Ollama Client**—grouped by priority:
329365

330366
### Embeddings & Semantic Search
331367

332-
- [ ] Implement **Hybrid Embeddings**:
333-
- [ ] Default: transformer.js
334-
- [ ] Optional: pull Ollama-hosted(locally) embedding models when toggled
368+
- [ ] Implement **Ollama Embedding Models**:
369+
- [ ] Integration with Ollama embedding models (e.g., `nomic-embed-text`, `all-minilm`)
370+
- [ ] Generate embeddings for chat messages and store in IndexedDB
371+
- [ ] Semantic search over chat history
372+
- [ ] Semantic filtering for chat sessions
335373
- [ ] Enable **Local RAG** over chats, PDFs, and image text
374+
- [ ] **Browser Search Feature**:
375+
- [ ] Contextual search within webpage content
376+
- [ ] Semantic search over extracted content
377+
- [ ] Search result highlighting
378+
- [ ] Search history
336379
- [ ] Optional **Web Search Enrichment**:
337380
- [ ] Offline-first architecture
338381
- [ ] Opt-in Brave / DuckDuckGo API (user-provided key)
339382
- [ ] WASM fallback (e.g., tinysearch) when no key
340383

384+
> **Note**: Hybrid embeddings with client-side transformers (`@xenova/transformers`) have been tested and show degraded model response quality compared to direct text prompts. The focus will be on Ollama-hosted embedding models instead.
385+
341386
### File Upload & Processing
342387

343388
- [ ] Plain text-based formats: `.txt`, `.md`, `.js`, `.ts` (direct read)

0 commit comments

Comments
 (0)