You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 3eb851f
Browse filesBrowse the repository at this point in the historyBrowse files
Restructure Settings into tabs (General/Models/Integrations/Chat & Prompts/Voice/Data)
Settings had grown into one long scrolling page as features piled up
this session (Ollama, llama.cpp, MCP, Figma, prompt library, voice,
diagnostics, etc. all stacked vertically). Reorganized the same content
- no new settings, nothing removed - into six tabs using the existing
(previously unused) Tabs component:
- General: Ollama Server, llama.cpp, Appearance, Language, updates
- Models: system specs, Ollama model catalog/search, Hugging Face
results, other installed models
- Integrations: cloud provider API keys, Figma, MCP servers
- Chat & Prompts: chat defaults/generation params, Prompt Library
- Voice: TTS/STT settings
- Data: export/import, diagnostics
This should hold up better as more settings get added, per feedback
that the UI needed to scale better rather than just look nicer.
Copy file name to clipboardExpand all lines: README.md
+6-5Lines changed: 6 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,7 +48,7 @@ Beyond chat, Modelforge includes an **agentic mode** — the model can read/writ
48
48
-**Screenshot capture** — pick a screen or window from the Attach menu and it's captured and attached as an image, no separate screenshot tool needed. (macOS may require granting Screen Recording permission the first time.)
49
49
-**OCR** — extract plain text from any attached image with one click, dropped straight into the composer. Runs fully offline via [tesseract.js](https://github.com/naptha/tesseract.js) after its first use (which needs network access once, to download the ~2MB English text-recognition model).
50
50
-**Figma frame import** — add a personal access token in Settings → Integrations, then paste a "Copy link to selection" URL from Figma to fetch that frame as an image, attached like any other screenshot.
51
-
-**Prompt library sharing** — export your saved prompts to a JSON file and import one a teammate sent you (Settings → Prompt Library). There's no live sync — it's just a plain file, sent however you like.
51
+
-**Prompt library sharing** — export your saved prompts to a JSON file and import one a teammate sent you (Settings → Chat & Prompts). There's no live sync — it's just a plain file, sent however you like.
52
52
53
53
**Agent mode** — see the [dedicated section](#agent-mode) below.
54
54
@@ -57,18 +57,19 @@ Beyond chat, Modelforge includes an **agentic mode** — the model can read/writ
57
57
-**GPU offload control** — set how many model layers Ollama offloads to GPU (`num_gpu`) per chat, per project, or as a global default; leave it blank to let Ollama decide automatically.
58
58
-**Real Hugging Face search** — typing in the model search box queries the actual Hugging Face Hub API (not just "paste an exact URL"), showing real repos ranked by downloads/likes; expand one to see its actual GGUF files with real file sizes, then either pull it via Ollama or download it directly for the llama.cpp backend. Pasting an exact `hf.co/user/repo` tag or a full URL still works too, for Ollama's own pull mechanism.
59
59
- Models with reliable tool/function-calling support are flagged with a 🔧 badge, so picking a good Agent mode model doesn't require guesswork.
60
-
-**Custom model storage location** — Settings → Ollama Server → "Model storage location" lets you point downloaded models at any folder (e.g. a larger or faster drive) instead of Ollama's default location. If this app started Ollama, it restarts it automatically with the new location; if Ollama is running outside the app, you're told to restart it yourself.
60
+
-**Custom model storage location** — Settings → General → Ollama Server → "Model storage location" lets you point downloaded models at any folder (e.g. a larger or faster drive) instead of Ollama's default location. If this app started Ollama, it restarts it automatically with the new location; if Ollama is running outside the app, you're told to restart it yourself.
61
61
62
62
**Customization & control**
63
+
-**Settings is organized into tabs** (General, Models, Integrations, Chat & Prompts, Voice, Data) instead of one long scrolling page — it holds up better as more settings get added over time.
63
64
- English and Turkish UI localization.
64
-
-**Theming** — light/dark/system color mode plus a choice of accent colors (default gray, blue, green, purple, orange, rose), in Settings → Appearance.
65
+
-**Theming** — light/dark/system color mode plus a choice of accent colors (default gray, blue, green, purple, orange, rose), in Settings → General → Appearance.
65
66
- Configurable Ollama host — point at a remote server instead of localhost.
66
67
- Data export/import, and one-click "copy diagnostic info" for bug reports.
67
68
-**Updates** — packaged builds check GitHub Releases for new versions automatically on launch, plus a manual "Check for updates" button in Settings (also available from the app menu).
68
69
69
70
**Voice**
70
71
-**Voice input** — record a question with the mic button; it's transcribed via OpenAI's Whisper API and dropped into the composer (requires an OpenAI API key in Settings, even when chatting with a local Ollama model).
71
-
-**Read aloud** — any assistant reply can be played back through your OS's own text-to-speech voices, with a per-message speaker button, an optional "auto-read every response" toggle, and a voice picker with a test button in Settings → Voice. Works fully offline, no API key needed.
72
+
-**Read aloud** — any assistant reply can be played back through your OS's own text-to-speech voices, with a per-message speaker button, an optional "auto-read every response" toggle, and a voice picker with a test button in Settings → Voice tab. Works fully offline, no API key needed.
72
73
- Both are start/stop/cancel controllable mid-action — stop a reply from being read, or cancel a recording before it's sent for transcription.
73
74
- Not included: fully real-time, bidirectional voice conversation (speaking over the model and having it react instantly, à la OpenAI's Realtime API). That's a different streaming architecture and hasn't been built.
src/rag.ts Chunking + embedding + retrieval for large folder attachments
202
-
src/logger.ts Rotating file logs surfaced via Settings → Diagnostics
203
+
src/logger.ts Rotating file logs surfaced via Settings → Data → Diagnostics
203
204
```
204
205
205
206
The frontend builds to a single inlined HTML file (`vite-plugin-singlefile`) so Electron can load it directly via `file://` in production, matching how the packaged app actually runs.
0 commit comments