# Server documentation tool, ill work out a fun name later This is fun small tool used to document your homelab its very simplistic and should be used more as a fun show case and not as real documentation. ![example image](res/example_image.png) ### how to use it first compile the project with zig 0.16.0, ```bash $ zig build ``` then its time to create your UI, create a json file called what ever you want and follow the schema provided ([`ui.schema.json`](ui.schema.json)) you file should look something like this ([`example.json`](example.json)) ```json [ { "ascii_art": " ╔═══════╗\n ║ ╸╸╸╸ @║\n ║│╳╳╳╳│*║\n ║│╳╳╳╳│.║\n ╟┤╳╳╳╳├╌╢\n ║│╳╳╳╳│ ║\n ║│╳╳╳╳│ ║\n ╚╧════╧═╝", "ip": "10.0.0.9", "name": "truenas", "services": [ { "name": "git", "ports": [ 3069 ], "description": "services for running my forge" }, { "name": "lang tools", "ports": [ 8081 ], "description": "spell checker so i dont have to download the 300GB of the english language" } ] }, { "ascii_art": " ╔══════╤══════╤══════╤══════╤══════╗\n ║╳╳╳╳╳@╏╳╳╳╳╳@╏╳╳╳╳╳@╏╳╳╳╳╳@╏╸=[]@*║\n ╚══════╧══════╧══════╧══════╧══════╝", "ip": "10.0.0.10", "name": "the big boy", "services": [ { "name": "minecraft", "ports": [ 25565 ], "description": "26.2 minecraft server" } ] } ] ``` Finally to run pass the *relative* path of the json to the executable located in [`zig-out/bin/`](zig-out/bin/).