~/talk

How Do You Structure Your Go Apps?

name:Kat Zień
github:katzien
slides:none on file

Compares flat, layered and modular layouts and shows a working Go beer‑review API (GET/POST beers and reviews) implemented with in‑memory and JSON storage plus a separate data populate command; finds the naïve flat file hits ~92 lines for five endpoints and becomes unmanageable. Advocates grouping by domain‑driven design and enforcing inward dependencies with hexagonal architecture, using top‑level commands and package layout so services are testable, swappable and extendable; references go build template and no framework.

AI-written summary · about

  1. 0:00Introduction and motivation
  2. 3:57Defining good structure
  3. 10:56Flat project structure
  4. 14:41Layered architecture
  5. 18:03Modular grouping
  6. 20:09Domain-driven design
  7. 32:13Hexagonal architecture
  8. 37:35Best practices and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.