Devise contains dozens of classes, including, models, controllers, mailers, helpers, hooks, routes, and views, but since Devise exposes it’s functionality in a small number of simple helper methods, It’s unlikely that you will even need to know of the existence of all of them. The most important helper methods Devise gives you to use in your own app are:
http://codepany.com/blog/rails-5-user-accounts-with-3-types-of-roles-devise-rails_admin-cancancan/
https://launchschool.com/blog/how-to-use-devise-in-rails-for-authentication
Devise Utility Methods
Devise contains dozens of classes, including, models, controllers, mailers, helpers, hooks, routes, and views, but since Devise exposes it’s functionality in a small number of simple helper methods, It’s unlikely that you will even need to know of the existence of all of them. The most important helper methods Devise gives you to use in your own app are:
authenticate_user!
https://www.learnhowtoprogram.com/rails/rails-authentication/basic-authorization-with-devise https://github.com/plataformatec/devise/wiki/How-To:-Add-an-Admin-Role http://railsapps.github.io/rails-authorization.html
https://github.com/jendiamond/railsgirls-signup/issues/28