
SimpleChatJS
โ 3from Tomobobo710
A lightweight AI chat application with MCP support, built with pure JavaScript and Node.js.
๐ฅ๐ฅโ VerifiedFreeQuick setup
SimpleChatJS
An Electron desktop AI chat application with MCP (Model Context Protocol) support.
Tech Stack
- Frontend: Vanilla JS, HTML, CSS (no frameworks)
- Backend: Node.js + Express
- Desktop: Electron
- Database: SQLite (better-sqlite3)
- MCP: @modelcontextprotocol/sdk
Features
- Multiple persistent chat sessions with SQLite storage
- Real-time streaming responses from AI providers
- Model Context Protocol (MCP) integration for tool execution
- Chat branching and turn-based history
- Multimodal messages (images, documents)
- Debug panels with API request/response inspection
- Settings profiles for different AI providers
- Anthropic thinking mode and Google Gemini thinking support
Architecture
src/js/
โโโ app/ # Core logic (message sending, API calls, settings)
โโโ chat/ # Chat modes and history management
โโโ tools/ # MCP server management and tool handling
โโโ render/ # Message rendering and streaming
โโโ ui/ # Settings, debug panels, context menus
backend/
โโโ server.js # Express server (runs inside Electron)
โโโ config/ # Database initialization
โโโ routes/ # API endpoints
โโโ services/ # Chat, MCP, settings, tool events
โโโ utils/ # LoggingAPI Compatibility
Works with any OpenAI-compatible API:
- Ollama - Local AI models
- OpenAI API - GPT models
- Anthropic - Claude (via proxy or direct)
- Google Gemini - Gemini models
- LM Studio / vLLM - Local inference servers
CI/CD
Pushes to main trigger automated builds via GitHub Actions:
- Build job: Runs on Windows, Linux, and macOS in parallel. Produces distributable packages (
.zip,.AppImage,.dmg). - Release job: Triggers only when the version in
package.jsondiffers from the latest git tag. Creates a draft GitHub Release with all platform builds attached.
Development
- Edit files in
src/js/orbackend/ - Reload the app (Ctrl+R) for frontend changes
- Restart the app for backend changes
Copy & paste โ that's it
npm install
npm run devQuick Start
Prerequisites
- Node.js
- An AI API (Ollama, OpenAI, or any OpenAI-compatible endpoint)
Installation
npm install
npm run devBuild
npm run buildNo common issues documented yet. If you hit a problem, the repository's GitHub Issues page is the best place to look.
Licensed under MITโ you can use, modify, and redistribute it under that license's terms.
View the full license file on GitHub โ