summit is a portable and self-contained Linux server management web dashboard that fits in 10MB.
Important
A lot of features (storage, networking, containers, updates, etc.) are missing currently.
- All of summit is distributed as one small file
- Portability across init systems and libcs (Tested with Debian and Alpine so far)
- Fast page loads
- PAM-based login system
- xterm.js-based terminal
- HTTP/2 & HTTPS
All of these commands assume you're running as root. summit will likely build & run on other systems, but I have not tested.
The final compiled output is simply ./summit. By default, summit installs to /usr/local/bin.
Note
Make sure you have the community repo enabled
apk add go make linux-pam-dev git openssl minify \
&& git clone https://github.com/prescott2m/summit \
&& cd summit \
&& make all installapt install golang-go make libpam0g-dev git openssl minify \
&& git clone https://github.com/prescott2m/summit \
&& cd summit \
&& make all installThe backend server code. It serves the frontend, and provides a simple API using WebSockets + MessagePack. Written in Go.
The frontend web UI code. Written in HTML, vanilla CSS, and vanilla JS.
- HTTP/2
- TLS
- Login
- PAM
- Login page
- Cookies
- Admin system
- Stats
- Basic numerical stats
- Implement Odometer
- Make stat values persist across pages
- WebSocket terminal
- Switch to xterm.js
- Firefox compatibility
- Fix doas
- UI Notifications
- Implement templates
- WebSocket + MessagePack API
- Settings
- Settings page
- Backend settings system
- Frontend settings system
- Default config
- Complete frontend redesign
- Independent pages
- Login prototype
- Responsiveness
- Admin page
- Cleanup
- Main UI
- Colors
- Sidebar
- Main page content
- Messages
- Input elements
- Light mode
- Sync with system dark/light theme
- Independent pages
- Global config
- 404 page
- Go embedding
- Extend session + connection length on activity
- Storage
- Backend
- ID/name
- Readonly
- Size
- Model/serial
- Partitions
- FS type
- Mountpoint
- Basic SMART data (Temperature, power cycles, power on hours, etc.)
- Advanced SMART data (Reallocated_Sector_Ct, Percent_Lifetime_Remain, etc.)
- Formatting
- Partitioning
- Storage page
- Handle unpartitioned disks
- Backend
- Networking
- Backend
- Name
- MAC address
- Virtual
- Speed
- Duplex
- IPs
- Usage meter
- Networking page
- Backend
- Services
- Backend
- OpenRC support
- systemd support
- other init systems
- Services page
- Backend
- Updates
- Backend
- apt support
- apk support
- other package managers
- Updates page
- Backend
- Service files
- Installer shell script
- Containers
- Backend
- Podman support
- Docker support
- Container page
- Backend
- Logging
- Backend
- Application-specific logs?
- Init system logs
- Kernel logs
- Logging page
- Backend

