In reviewing the Adonis docs, I think the biggest difference between citizen and Adonis is convention over configuration.
citizen expects you to put certain things in certain places so it can handle all the imports, execution, and flow control for you. Adonis requires you to be far more explicit.
For example, in Adonis, you define routes within a router file, whereas in citizen, routes are implied by the existence of controllers and actions/handlers in the appropriate locations.
citizen does have config files (and controller/action config overwrites) for things that require an explicit setting, but I tried to keep that to a minimum.
jaysylvester|1 year ago
citizen expects you to put certain things in certain places so it can handle all the imports, execution, and flow control for you. Adonis requires you to be far more explicit.
For example, in Adonis, you define routes within a router file, whereas in citizen, routes are implied by the existence of controllers and actions/handlers in the appropriate locations.
citizen does have config files (and controller/action config overwrites) for things that require an explicit setting, but I tried to keep that to a minimum.