Rails engines allow our plug-in to have its own controllers, models, helpers, views, assets, and routes, just like in a regular Rails application. Let’s generate a plug-in called live_assets using the Rails plug-in generator. But this time we’ll pass the --full flag, which will generate directories for models, controllers, routes, and more:
$ rails plug-in new live_assets --full
In addition to the files the generator normally creates for us, the --full flag also generates these files:
An app directory with controllers, models, and others seen in a regular application
A config/routes.rb file for routes
A lib/live_assets/engine.rb file declaring our engine
An empty test/integration/navigation_test.rb file to which ...