What is the Dependency Rule in Clean Architecture?

Updated Apr 28, 2026

Short answer

Dependencies must only point inwards, toward higher-level policies.

Deep explanation

In Clean Architecture, the concentric circles represent different levels of software. The innermost circle contains the most stable business rules (Entities). The rule states that source code dependencies can only point inwards. Nothing in an inner circle can know anything at all about something in an outer circle. This includes functions, classes, variables, or any other named software entity.

Real-world example

Your Business Logic (Use Case) should not import an Express Request object or a TypeORM Repository directly. Instead, it should use a simple DTO or an Interface.

Common mistakes

  • Importing a database model into a domain entity to perform a check.

Follow-up questions

  • How do you handle data moving from an inner layer to an outer layer?

More Clean Architecture interview questions

View all →