Hugo server does not create html files after deleting public folder

To clean up my project, I have deleted the public folder. When I now run hugo it just creates the XML files for the rss feeds but not the actual HTML files with the content.

I have checked and all my files are set to draft = false

Are there any other reasons why it would not build the HTML files?

Perhaps you turned off HTML as output format?

But if you want more than guesses as answers, you should provide more information. For example, your config data. Or even better, a link to your Github repository.

Sorry, you are right. Here the link: GitHub - maxbobse/wiki · GitHub

and here my config.toml:

baseURL = 'localhost/'
locale = 'en-us'
title = "Max' wiki"
param.docs.prism = true
theme = 'hextra'

[[menu.main]]
name = "Documentation"
pageRef = "/docs"
weight = 1

[[menu.main]]
name = "Blog"
pageRef = "/blog"
weight = 2

[[menu.main]]
name = "Search"
weight = 4

    [menu.main.params]
    type = "search"

The site builds without issue for me.

baseURL in the repo is set to baseURL = 'https://sunnybug.hopto.org/wiki/public'. Why add “public”? That look wrong. You should set it to what the actual address of the site is.

Setting baseURL to “localhost” is also wrong/unneeded. When running hugo server that is done automatically.

yes, when I clone the repo and start again it all shows well. But if I then make changes to any of the .md files, none of them are reflected in the HTML files afterwards. Hugo sever just prompts this

Watching for config changes in /Users/max/Documents/hugo2/wiki/hugo.toml, /Users/max/Documents/hugo2/wiki/go.mod
Start building sites … 
hugo v0.161.1+extended+withdeploy darwin/arm64 BuildDate=2026-04-29T13:56:01Z VendorInfo=Homebrew

WARN  found no layout file for "html" for kind "section": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
WARN  found no layout file for "html" for kind "taxonomy": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
WARN  found no layout file for "html" for kind "page": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
WARN  found no layout file for "html" for kind "home": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.

                  │ EN 
──────────────────┼────
 Pages            │  8 
 Paginator pages  │  0 
 Non-page files   │  0 
 Static files     │  0 
 Processed images │  0 
 Aliases          │  0 
 Cleaned          │  0 

Built in 19 ms
Environment: "development"
Serving pages from disk
Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
Web Server is available at http://localhost:1313/wiki/public/ (bind address 127.0.0.1) 
Press Ctrl+C to stop

Works without issues for me.

I run hugo server and edit e.g. content/blog/my-first-post.md and it updates as it should.

I notice that you have committed the public dir to the repo, that is wrong and unnecessary.

did you clone the submodules ? check your themes folder if there’s something inside

hint: you have two unused submodules inside that you may want to get rid of:

git clone --no-recurse-submodules https://github.com/maxbobse/wiki.git  cleanup 
cd cleanup
git submodule deinit -f ./themes/lotusdocs ./themes/hugo-book
git rm -f ./themes/lotusdocs ./themes/hugo-book

following @frjo: committing public and I add resources is usually not needed unless you have a lot of content there and you handle that special in your build scripts.

# remove the public - contains a lot of old garbage
rm -rf public

# you might want to delete the resources folder, too
# minimal content, won't impact performance, always fresh state after clone
rm -rf resources

create a .gitignore with the following content:

.hugo_build.lock
/public
/resources

and update your repo:

git add -f .gitignore public resources
git commit "chore(repo) cleanup"
git push 

Thank you so much! I missed cloning the submodules :slight_smile:

Fixed it with

git submodule update --init --recursive

I have also cleaned up the repo according to your recommendations.