1 Start with a working site
A good tutorial begins with a result the reader can see. For OINK, that result is the official Starter served locally by Hugo Extended—before any logo, palette, language set, or content architecture is changed.
Define the outcome
At the end of this chapter you should have English, Chinese, and French home pages; working Docs, Blog, and Book routes; local search; and a color-mode control. That small baseline is enough to distinguish a content mistake from a theme or deployment problem later.

Install the prerequisite
The current Starter needs Git, Go 1.27 or newer, and Hugo Extended 0.165.0 or newer. OINK’s lower declared compatibility floor remains 0.160.1, but the Starter and its workflows deliberately pin the current tested toolchain. Node.js is not required.
Run the preview
Create a repository with GitHub’s Use this template action when it will become a real project. To evaluate the original locally, clone it and start Hugo:
Open the address Hugo prints. Change one sentence in data/home/en.yaml and
confirm that the browser shows it. A preview that responds to a content edit is
more useful evidence than a terminal that only says the server started.
Record the baseline
Before customizing anything, record four facts: the Hugo version, the theme
version in go.mod, the commit under review, and the routes you opened. Chapter
2 turns that running site into a content tree without losing this baseline.
For the complete layered workflow, see Use OINK Starter. For installation without the template, see From scratch.