architecture-designlisted
Install: claude install-skill MatrixFounder/Agentic-development
# Architecture Design
## 1. Core Principles
### Simplicity Above All
- **Goal:** Solve the task maximally simply.
- **Avoid Overengineering:** Complex architecture and heavy libraries complicate maintenance.
- **Zero-Dependency:** Add only truly necessary components.
- **No-ORM Preference:** Do not use ORM if simple SQL queries are easier.
- **Frameworks:** Do not use frameworks if API is easier on lower-level libraries.
### Modularity
- Loose coupling, high cohesion.
- Clear interface definitions between components.
### Common Patterns
If building a complex system, refer to these standard patterns:
- **Clean Architecture:** `references/clean_architecture.md` (Layers, Dependency Rule).
- **Event-Driven:** `references/event_driven.md` (Async, Brokers, Idempotency).
## 2. Requirements for Architecture Components
### Data Model
1. **Design Detailedly:**
- All entities, attributes with types.
- All relationships (1:1, 1:N, M:N).
- All constraints and indexes.
2. **Think about Migrations:**
- How data will migrate with changes.
- Backward compatibility.
3. **Consider Performance:**
- Frequent queries -> Indexes.
- Denormalization if necessary.
### Security
- **Built-in:** Security must be designed, not patched.
- **Auth:** OAuth2/JWT/Session strategies defined.
- **Protection:** OWASP Top 10 consideration.
### Scalability
- **Horizontal:** Stateless services.
- **Database:** Partitioning, Replication strategies.
## 3. Important Rules
### ✅ DO:
1. **B