A full-featured internal team chat system built with React + Express + Socket.IO
ไธๅฅๅ่ฝๅฎๆด็ๅ ้จๅข้่ๅคฉ็ณป็ป๏ผๅบไบ React + Express + Socket.IO ๆๅปบ
Quick Start ยท Features ยท Contributing
Internal teams need a simple, self-hosted chat tool that works out of the box โ without relying on third-party SaaS or complex infrastructure. Siliao provides private messaging, group channels, file sharing, search, notifications, and admin controls in a single deployable package.
ๅ ้จๅข้้่ฆไธไธชๅผ็ฎฑๅณ็จใๅฏ่ชๆ็ฎก็่ๅคฉๅทฅๅ ท๏ผไธไพ่ต็ฌฌไธๆน SaaS ๆๅคๆๅบ็ก่ฎพๆฝใSiliao ๅจไธไธชๅฏ้จ็ฝฒ็ๅ ้ๆไพไบ็ง่ใ็พค่ใๆไปถๅ ฑไบซใๆ็ดขใ้็ฅๅ็ฎก็ๅๅๅฐใ
- ๐ Login โ Username/password authentication with JWT
- ๐ฌ Direct Messages โ One-on-one private chat with real-time sync
- ๐ฅ Group Channels โ Create channels, invite members, manage membership
- ๐ File Upload โ Share files/images up to 10MB per message
- ๐ Global Search โ Search across all private and group messages
- ๐ Unread Counts โ Persistent per-thread unread badges + notification center
- โฉ๏ธ Message Recall โ Recall your own messages (syncs to all participants)
- ๐ Admin Console โ System overview, user role management, channel deletion
- ๐ฑ Responsive โ Works on desktop and mobile browsers
- โก Real-time โ Socket.IO powered instant message delivery
- ๐จ Polished UI โ Lucide icons, glass morphism, Slack/Linear-inspired layout
# Clone
git clone https://github.com/zhizhishuo/siliao.git
cd siliao
# Install
npm install
# Run (starts both frontend and backend)
npm run devAfter startup, open the URL shown in terminal (default port 5173 for frontend, 3001 for backend API).
ๅฏๅจๅ๏ผๅจ็ป็ซฏไธญๆฅ็ๆพ็คบ็่ฎฟ้ฎๅฐๅ๏ผๅ็ซฏ้ป่ฎค็ซฏๅฃ 5173๏ผๅ็ซฏ API ้ป่ฎค็ซฏๅฃ 3001๏ผใ
All passwords are password123:
| Username | Display Name | Role |
|---|---|---|
li.lei |
ๆ้ท | Admin |
han.mei |
้ฉๆข ๆข | Member |
wang.wei |
็ไผ | Member |
A default channel ๅ
จๅ็พค is created automatically.
โโโโโโโโโโโโโโโ WebSocket โโโโโโโโโโโโโโโ
โ React App โโโโโโโโโโโโโโโโโโโโโบโ Express + โ
โ (Vite) โ REST API โ Socket.IO โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโบโโโโโโโโฌโโโโโโโโ
โ
โโโโโโโโดโโโโโโโโ
โ SQLite DB โ
โ + File Store โ
โโโโโโโโโโโโโโโโ
| Layer | Technology |
|---|---|
| Frontend | React 19, TypeScript, Vite 8, Socket.IO Client, Lucide Icons |
| Backend | Express 5, Socket.IO 4, Better-SQLite3, JWT, Multer, bcrypt |
| Storage | SQLite (WAL mode) + local file uploads |
| Dev Tools | ESLint, Nodemon, Concurrently |
frontend/ React Web client (Vite + TypeScript)
backend/ Express API, Socket.IO, SQLite, uploads
Contributions are welcome! Please read our Contributing Guide and Code of Conduct.
ๆฌข่ฟ่ดก็ฎ๏ผ่ฏท้ ่ฏป่ดก็ฎๆๅๅ่กไธบๅๅใ
MIT ยฉ 2026 zhizhishuo
If this project helps you, give it a โญ
ๅฆๆ่ฟไธช้กน็ฎๅฏนไฝ ๆๅธฎๅฉ๏ผ่ฏท็ปไธไธช โญ