SmartChat is a complete chat platform with a plugin/extension architecture.
backend/: core SmartChat backend (auth, chat, sockets, plugin runtime)frontend/: SmartChat web clientbackend/plugins/chat-summarizer-plugin/: chat summarization extension pluginrun-dev.sh: convenience script to run backend + frontend together
chat-summarizer-plugin adds summarization without modifying core chat routes.
Plugin endpoints:
POST /api/plugins/chat-summarizer/private/:participantIdPOST /api/plugins/chat-summarizer/groupGET /api/plugins/chat-summarizer/capabilities
Access model:
- Private summary: only messages between requester and selected participant
- Group summary: any authenticated user in SmartChat
cd backend
npm install
cp .env.example .env
npm run devcd frontend
npm install
cp .env.example .env
npm run devFrom smart-chat/:
./run-dev.sh- Start SmartChat services.
- Register User A and User B.
- Exchange group and private messages.
- Use
Summarize Groupin group chat. - Use
Summarize Privatein DM chat.
- Add new plugin at
backend/plugins/<plugin-name>/index.js. - Export plugin metadata +
register(context). - Register in
backend/config/plugins.js.
No core backend route modifications are required for new extension capabilities.