# tinyconf > Go config structs filled from a chain of drivers, every package owns its part of the config and gets its changes without restart tinyconf fills Go config structs from a chain of drivers by struct tags: defaults, YAML, JSON, TOML, INI, properties, environment variables, flags, Consul, Vault and etcd. The next driver overrides the previous one. Packages parse and subscribe to their own parts of the config, reloads create new versions of the config. The module path is github.com/insei/tinyconf/v2. ## Start - [Get started](https://insei.github.io/tinyconf/2.2/index.md): installation and the first config - [Why tinyconf?](https://insei.github.io/tinyconf/2.2/why-tinyconf/index.md): for whom and for what, comparison with viper, koanf, cleanenv - [Use cases](https://insei.github.io/tinyconf/2.2/use-cases/index.md): recipes - [Upgrading to v2](https://insei.github.io/tinyconf/2.2/upgrading/index.md): upgrading from v1 - [For AI agents](https://insei.github.io/tinyconf/2.2/ai-agents/index.md): the skill for AI agents ## Features - [Features](https://insei.github.io/tinyconf/2.2/features/index.md) - [Documentation generation](https://insei.github.io/tinyconf/2.2/features/gendoc/index.md) - [Logging](https://insei.github.io/tinyconf/2.2/features/logging/index.md) - [Manager](https://insei.github.io/tinyconf/2.2/features/manager/index.md) - [Reloading](https://insei.github.io/tinyconf/2.2/features/reloading/index.md) - [Required fields](https://insei.github.io/tinyconf/2.2/features/required/index.md) - [Value sources](https://insei.github.io/tinyconf/2.2/features/sources/index.md) - [Nested structs and sub configs](https://insei.github.io/tinyconf/2.2/features/structs/index.md) - [Struct tags](https://insei.github.io/tinyconf/2.2/features/tags/index.md) - [Supported types](https://insei.github.io/tinyconf/2.2/features/types/index.md) ## Drivers - [Drivers](https://insei.github.io/tinyconf/2.2/drivers/index.md) - [consul](https://insei.github.io/tinyconf/2.2/drivers/consul/index.md) - [Custom drivers](https://insei.github.io/tinyconf/2.2/drivers/custom/index.md) - [env](https://insei.github.io/tinyconf/2.2/drivers/env/index.md) - [etcd](https://insei.github.io/tinyconf/2.2/drivers/etcd/index.md) - [flag](https://insei.github.io/tinyconf/2.2/drivers/flag/index.md) - [Custom formats](https://insei.github.io/tinyconf/2.2/drivers/format/index.md) - [ini](https://insei.github.io/tinyconf/2.2/drivers/ini/index.md) - [json](https://insei.github.io/tinyconf/2.2/drivers/json/index.md) - [properties](https://insei.github.io/tinyconf/2.2/drivers/properties/index.md) - [tag](https://insei.github.io/tinyconf/2.2/drivers/tag/index.md) - [toml](https://insei.github.io/tinyconf/2.2/drivers/toml/index.md) - [vault](https://insei.github.io/tinyconf/2.2/drivers/vault/index.md) - [yaml](https://insei.github.io/tinyconf/2.2/drivers/yaml/index.md)