Video series · Episode 4 · 10–12 min

Your first Chenile service (live demo)

Hands-on: generate an api + service pair and a deployable monolith with gen.sh, build it, and call it. The definition/implementation split, made real.

← All episodes

Episode goal: convert theory into muscle memory. Viewer watches a service go from nothing to a running endpoint, and sees the two-module structure appear.

Cold open
On camera: “Enough theory. Let’s generate a real Chenile service, build it, and call it — and watch the definition/implementation split appear on disk.”
Prereqs
On screen checklist: Node, GNU make, Maven, a shell. “If you have these, you’re ten minutes from a running service.”
Demo — setup
Terminal: clone chenile-gen, cd app-gen, run make, add bin to PATH. Narrate: “make compiles the generator and grabs Mustache. One-time setup.”
Demo — config
Run gen.sh → “create a local config”. Open config/setenv.sh; set company and org. “These become your Java package names — set them once.”
Demo — generate
Run gen.sh → “create a normal service and monolith”. Service name stringdemo; monolith stringdemodeploy; accept defaults. Two folders appear.
Payoff
Expand stringdemo/: point at stringdemo-api and stringdemo-service. “There it is — the exact split from last episode, generated for you.”
Demo — build
cd output/stringdemo && make build, then cd ../stringdemodeploy && make build. Narrate the api and service libraries building, then the deployable.
Demo — run & call
Start the monolith; hit the generated endpoint with a curl script from scripts/. Show the response, then the health endpoint. “Business logic, a health probe, and an HTTP binding — and we wrote none of the plumbing.”
Point
Voiceover: “Look at the impl again — still just business logic. Everything else came from the framework. Next, we start adding the horizontal behavior as policies.”
Recap card
“Generated an api + service pair and a deployable monolith, built and called it — no plumbing written by hand.”

Companion reading: Get started · Definition vs. implementation