Hexagon is a terminal based Homelab dashboard so you can monitor all the apps you run locally and remember them 😉.
- 🔥 Blazing fast
- ✅ Status indicators
- 🔐 Secure authentication
- 🎉 Terminal UI
Using a terminal application instead of a browser makes viewing your dashboard a more streamlined experience. Because if you are like me you prefer using your terminal over your browser.
After you setup the server just put the server info into the client (You will be prompted) when it first starts. Once you get into the main screen of the client you should be able to see all of your apps. Press enter to goto it if you configured a URL. Emojis indicate status checking if you have it enabled.
The server loads a config when it starts which stores all of your apps and authentication details. It is pretty simple here is an example config it should be stored in the root directory in which you are running it as config.json
:
{
"authentication": {
"enabled": false,
"_comment": "You can generate this hash using online tools like this passwordsgenerator.net/sha256-hash-generator/"
"sha256_password_hash": "AEC8084845B41A6952D46CBAA1C9B798659487FFD133796D95D05BA45D9096C2"
},
"apps": [
{
"name": "App 1",
"description": "This is an app (1)",
"url": "https://example.com/",
"checkStatus": true
},
{
"name": "App 2",
"description": "This is an app (2)",
"url": "https://example.com/",
"checkStatus": true
},
{
"_comment1": "The name of the app",
"name": "App 3",
"description": "This is an app (3)",
"_comment2": "The url of the app to open",
"url": "https://fdsfsdfsdfs.com/3",
"_comment3": "Should the status of this app be checked using the above url",
"checkStatus": true,
"_comment4": "This is optional defaults to 200 as accepted code:",
"acceptableStatusCode": [200,201]
}
]
}
To run the server natively just run the below command to compile the binary then just run it!
go build .
To run the server inside Docker compose just download the repo and then run the below command inside of the server/ directory to use docker-compose file
docker-compose up
Or use the built docker image https://hub.docker.com/r/maxall4/hexagon
NOTE: Make sure to use the correct image for your CPU architecture you can find that by running lscpu
if you are on linux.
Just run the below command to download the binary and then add it to your path
wget https://github.com/maxall41/hexagon/releases/latest/download/client
Or run this command in the source directory to build it yourself
go build .
If you want to contribute to this project I'm happy to review your PRs!
- Docker file
- Docker-Compose config
- Custom acceptable status codes returned from URL endpoint
- Homebrew formula
- Helm config
- Automated install for client
- Widgets
- In-client configuration
- Localization
- Custom status code resolvers