Clean
Clean architecture is modeled as ordered layers:
architecture :clean
Dependencies move inward:
frameworks -> interface_adapters -> use_cases -> entities
This compiles to the same primitive rules as Layered, with names that match Clean Architecture vocabulary.
The default Rails-flavored directories are:
frameworks: %w[app/controllers/**/*.rb app/jobs/**/*.rb app/mailers/**/*.rb]
interface_adapters: %w[app/adapters/**/*.rb app/presenters/**/*.rb app/serializers/**/*.rb]
use_cases: %w[app/use_cases/**/*.rb app/services/**/*.rb]
entities: %w[app/entities/**/*.rb app/domain/**/*.rb app/models/**/*.rb]
Pass any of those keys to override the defaults.