## SummerCMS Module Names | Module | Name | Why | |--------|------|-----| | container | **summer-backpack** | Carries everything you need, you bring it everywhere | | contracts | **summer-pact** | A pact between friends — interfaces are contracts | | support | **summer-towel** | "Always bring a towel" — the utility you always need | | config | **summer-compass** | Guides your direction, tells you where to go | | events | **summer-festival** | Festivals are summer events | | http + routing | **summer-surf** | Surfing the web | | database + pagination | **summer-lagoon** | Deep pool where all the data lives | | auth + sessions | **summer-bouncer** | Checks who gets in | | validation | **summer-lifeguard** | Keeps things safe, blows the whistle on bad input | | cache | **summer-cooler** | Keeps things cold and ready to grab | | queue | **summer-conga** | A conga line is literally a queue | | mail | **summer-postcard** | You send postcards in summer | | console | **summer-bonfire** | Where everyone gathers, commands happen around the fire | | filesystem | **summer-sandcastle** | Building structures, organizing things | | translation | **summer-phrasebook** | Travel phrasebook for speaking other languages | | view | **summer-sunset** | The best view of summer | ## Not Ported (Scala handles it natively) | Module | Why | Where it went | |--------|-----|---------------| | pipeline | Function composition is `f andThen g` in Scala | Inline | | routing | Tapir endpoints ARE routes | Merged into **summer-surf** | | session | Thin for API-first CMS | Merged into **summer-bouncer** | | log | SLF4J is already a facade | Direct SLF4J usage | | collections | Scala stdlib is excellent | Scala stdlib | | pagination | Too small for standalone | Merged into **summer-lagoon** |