Zender

Zender is a monitoring system written in Go + Vue3, providing simple and user-friendly real-time data and status monitoring across multiple servers.






| Login |
Home |
| Group |
Service |
| Setting |
Status Notification |
Features
Server support features:
- Restful api, wirtten by gin
- MVC structure
- Mariadb storage, via self-made orm libirary
- Graceful shutdown
- Authentication, support jwt
- GRPC supported
- SSE supported
- Containerization supported by docker / podman
Frontend support features:
TODOs:
- Redis cache
- Jwt black list
- Request rate limit
- Oath2 Authentication
- Mobile UI
- Registry page
- document page
Get started
Before starting, you should already install golang, mariadb and nodejs in your develop env.
Build & Run server
Env:
- golang (1.22 or later)
- mariadb (11 or later)
Build:
go mod download
go build
Before run:
- You can change the server and the database setting in
conig/server.json
- You can build the database automatically by script in
script/database.sql
Run locally:
./zender
Build & Run UI
Env:
Build ui:
cd web
npm install --legacy-peer-deps
npm run build
Before run ui:
You sould check web/vite.config.mts first
See Vite Configuration Reference.
Run ui with vite:
cd web
npm run dev
View Web
Default user account/password is Zak/12345
Containerization
Zender is supported with docker or podman
Build & Run server in container
# build image
docker(podman) build -t zender:latest .
# run server
docker(podman) run --detach --name zenfer-server --env GIN_MODE=release zender:latestt
build database, see Mariadb Official Image