Нужны шаблоны, миграции или небольшая статика, но не хочется таскать их рядом с бинарником?
import "embed"
//go:embed templates/*.html
var templatesFS embed.FS
Дальше embed.FS можно использовать с html/template, text/template или net/http.
templates.ParseFS(templatesFS, "templates/*.html»)
Можно вшить и отдельный файл:
//go:embed version.txt
var version string
📌 Файлы попадают в программу при сборке. Изменили ресурс — пересобирайте бинарник.
Для шаблонов, миграций и небольшой статики — отличный вариант. Для огромных ассетов — уже стоит подумать о другом подходе.
🔗 Документация
📍 Навигация: Вакансии • Задачи • Собесы
🐸 Библиотека Go-разработчика
#GoToProduction