Are Hugo modules the suggested way to provide and receive themes

hmmm, i’ve got something to work (not sure if I fully understand it, through):

Here is the situation:

// Directory with several local sites 

Sites/
├── hugo-site/
│   ├── content/
│   ├── config.toml
│   └── go.mod
└── hugo-theme/
    ├── layouts/
    └── config.toml

go.mod is "empty (is this correct?)

module .

go 1.12

Now, there seems to be some interesting behavior depending when theme is set in the sites’s config.toml relative to when modules are imported.

# sites/hugo-site/config.toml

baseURL = "http://example.org/"
languageCode = "en-us"
title = "My New Hugo Site"
disableKinds = [
    "taxonomyTerm"
]
# theme = "Hugo Theme" > server fails if theme set here

[module]
[module.hugoVersion]
  min = "0.56.0"
[[module.imports]]
  path="../../hugo-mod-theme" # I'm not sure why i need to go up 2 directories here...

theme = "Hugo Mod Theme" # works when theme set here

is this expected behavior?