Functional options in go are design patterns for configuring structs cleanly when there are many optional settings. Basically a function that carries a configuration change. It let the library to add configuration without continually changing the constructor shape.
Source: [Hacker News](https://archetechmes.vercel.app/blog/functional-options-go)