From f60177934a18daea3b24a37cf109bb2c7bfaaa72 Mon Sep 17 00:00:00 2001 From: hachem Date: Sat, 29 Aug 2026 02:51:16 +0200 Subject: feat: nicer ui --- internal/config/config.go | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 internal/config/config.go (limited to 'internal/config/config.go') diff --git a/internal/config/config.go b/internal/config/config.go new file mode 100644 index 0000000..35842a1 --- /dev/null +++ b/internal/config/config.go @@ -0,0 +1,45 @@ +package config + +import ( + "encoding/json" + "os" + "path/filepath" +) + +type Config struct { + ChannelID string `json:"channel_id"` + CheckIntervalMinutes int `json:"check_interval_minutes"` + MinecraftVersion string `json:"minecraft_version"` + FabricLoaderVersion string `json:"fabric_loader_version"` + LoaderMetaVersion string `json:"loader_meta_version"` + JavaPath string `json:"java_path"` + ServerLocation string `json:"server_location"` + BackupLocation string `json:"backup_location"` + MergePreCommand string `json:"merge_pre_command"` + MergePostCommand string `json:"merge_post_command"` + ModrinthMods []string `json:"modrinth_mods"` +} + +const Dir = "config" + +func Path() string { + return filepath.Join(Dir, "config.json") +} + +func APIPath() string { + return filepath.Join(Dir, "api.json") +} + +func Load() (*Config, error) { + data, err := os.ReadFile(Path()) + if err != nil { + return nil, err + } + + var c Config + if err := json.Unmarshal(data, &c); err != nil { + return nil, err + } + + return &c, nil +} -- cgit v1.3