← ClaudeAtlas

functional-designlisted

Use when starting design or review, deciding how much design a task warrants, from a throwaway script to a subsystem, unsure which skill fits, or the requirement is undecided.
yutna/functional-design-skills · ★ 0 · Web & Frontend · score 75
Install: claude install-skill yutna/functional-design-skills
# Functional Design ## Overview This pack is a set of executable design rules for codebases written in a functional style. It covers complexity and module boundaries, modelling a domain in types, composing workflows, immutability, and where effects belong. One method runs through all of it: make the domain explicit in types, express behaviour as composed total functions, push effects to the edges, and hide everything else behind deep interfaces. ## When to use - Starting a new module, workflow, endpoint, or bounded context - A small change forces edits in many places, or nobody can predict what a change will break - Reviewing a design or a diff and needing a concrete checklist - Unsure which skill in this pack applies to the problem in front of you Not for: language syntax lookups, build and tooling problems, or deciding what the software should do in the first place. ## How much design does this need? Decide this before opening a skill. The row is chosen by something you can observe about the task, not by how important it feels. | The task | Apply | Skip | | ----------------------------- | ------------------- | ------------ | | Output is an answer | nothing | everything | | One function, module exists | names, totality | modelling | | A feature in an existing flow | the flow's idiom | new contexts | | A new module or workflow | the design loop | nothing | | A new bounded c