Пакет в Go — директория с .go файлами, имеющими одинаковый package declaration.
myproject/
├── go.mod
├── main.go // package main
└── utils/
├── strings.go // package utils
└── math.go // package utils
// utils/strings.go
package utils
func ToUpper(s string) string { ... } // exported (заглавная)
func helper() { ... } // unexported (строчная)
Импорт:
import "myproject/utils"
utils.ToUpper("hello")
Правила: имя пакета = имя директории (convention), все файлы в директории — один пакет, package main — точка входа с функцией main().