I’d be happy to help out. But I think I first would need to understand this. While waiting for an answer I tried to further understand those modules. But so far didn’t get really far.
For a start it might be helpful if one of those examples gets documentation alongside. Also I would suggest to remove the links to the modules blog and wiki. Especially that wiki entry, just think about a beginner reading through Hugo and then get hit by that wiki entry. That entry is gigantic and I have no clue what is actually important in there for me. And they talk about so many things that seems completely unrelated to Hugo.
You basically ask the beginner to first learn the Go language before continuing to learn about Hugo. I really hope that isn’t your intention
So far … imports are dependencies? Similar to dependencies in Maven or NPM/Yarn? Their versions get defined in a go.mod? So a folder with a go.mod is a module? In that blog and wiki entry they also mention packages, which I’m not sure relate to this? But I’m still very unsure about the source of mounts? To which import does the source definition relate? I took a look at the config.toml
of the examples and it didn’t really help. From where does Hugo know which path of which dependency should be mounted into the virtual file system? And that is also what I got so far, the target is a component path in the virtual file system of the site … I guess? How does this work out with transient dependencies though? And who wins when there are multiple targets to the same path?
I think what also confuses me is this answer in the topic over here: Hugo 0.56.0 Released!
I would have assumed that it simply maps the dependency in and thus gets then interpreted by Hugo. But that is not the case? Then for what are modules used? How are they used?
Please don’t feel bad about this. I know very well that writing documentation can be really hard, especially about a topic you understand yourself very well. I feel like the major problem here is that it is too close to Go and thus a lot was forgotten to be explained that someone knowing Go would already know. I would suggest, don’t even mention the Go modules to explain the Hugo modules. Or mention it only as an unimportant side note.