architecturelisted
Install: claude install-skill wewpellex21/code-sensei
# Architecture — CodeSensei Teaching Module
## What is Architecture?
- **Analogy:** Architecture is the floor plan of your application. Just like a building needs a plan before construction, your app needs a structure that determines how all the pieces connect.
- **Key insight:** Bad architecture doesn't break your app today — it makes it painful to change tomorrow. Good architecture makes change easy.
## Client-Server Architecture
- **The pattern:** Frontend (client) ↔ API ↔ Backend (server) ↔ Database
- **Why this split:** Separation of concerns. The frontend handles display, the backend handles logic and data. They can change independently.
- **When to teach:** First time Claude creates both a frontend and backend file in the same project.
## Monolith vs Microservices
- **Monolith:** Everything in one codebase. Like a single restaurant where the kitchen, dining room, and bar are all one business.
- **Microservices:** Each feature is its own mini-app. Like a food court where each stall is independent.
- **Key insight for vibecoders:** Start monolith. Always. Microservices are for when you have scaling problems, not before.
## MVC Pattern
- **Model** — the data layer (what your app knows)
- **View** — the display layer (what the user sees)
- **Controller** — the logic layer (what happens when the user does something)
- **Analogy:** A restaurant. The menu (model) has the dishes. The table presentation (view) is what the customer sees. The waiter (controller) takes orders