# nixfig Read a nix file as a config. Essentially just wraps `nix eval (--json) --expr`. Allows parsing the following: ```nix let user = "jolheiser"; in { log = { level = "warn"; # Name the log file after the user....for reasons file = "${user}.log"; }; http = { host = "0.0.0.0"; port = 1234; # Make user an admin, but also make a generic admin user admins = [user "admin"]; }; } ``` Into a struct like: ```go type Config struct { Log struct { Level string // warn File string // jolheiser.log } HTTP struct { Host string // 0.0.0.0 Port int // 1234 Admins []string // [jolheiser admin] } } ``` It can also marshal a struct into a valid (albeit minified) nix expression. ## License [MIT](LICENSE)