
В Go есть очень полезная фишка – go:embed, это поддержка встраивания файлов и папок в исполняемый файл приложения во время компиляции без использования внешних инструментов.
С помощью этой функции вы можете встроить все ресурсы, необходимые для работы веб-приложения, в один бинарный файл.
Сборочный процесс упростится, поскольку этап встраивания, не требует использования каких-либо дополнительных инструментов для включения всех статических файлов в исполняемый файл.
В качестве примера, простое приложение/каталог AI моделей, которое читает JSON файл со списком моделей.
https://github.com/avkcode/AwesomeAI
//go:embed LICENSE README.md favicon.svg index.html models.json
var content embed.FS
То есть можно фронт и бэк встраивать в один исполняемый файл. Мы не ограничены в выборе файлов – это может и база данных SQLite или TLS сертификаты. Для некоторых use-кейсов это может изрядно упростить работу.