I am a fan of Slice Architecture for years. The basic idea is that an application is sliced vertically. The goal is to keep features separated as much as possible. Isolation is the key benefit. There is still Layers with Api, Application, Core/Domain.
Recently with Claude Code, I asked it to explore one feature in the project. The CLAUDE.md file already tells it the Slice Architecture with Layer organization. The result is a clear picture of:
Recently with Claude Code, I asked it to explore one feature in the project. The CLAUDE.md file already tells it the Slice Architecture with Layer organization. The result is a clear picture of:
- Related files
- What includes in each layer: Api, Application, Core
- How things wire up together
- Diagram between components
- Key things to remember. Some hidden constraints from validation logic in code
Create a trace command that I can use to explore other feature.
I use trace command to explore existing features or to recall my memory on a feature. For new comers, they can use it to explore. For Claude Code, it uses the command to explore before planning and writing code.