DeviseFoundationViews
Devise authentication views styled with Foundation for Sites 6, aligned with the current Devise view templates.
Requirements
- Ruby >= 3.0
- Rails >= 6.0
- Devise >= 4.9, < 6.0
- Devise 5 requires Rails 7+
- Foundation 6 CSS in your application (not included in this gem)
Installation
Add to your Gemfile:
gem 'devise-foundation-views', '~> 1.0.1'
bundle install
Include gem styles in application.css.
Sprockets without Sass (recommended — no sassc required):
*= require devise_foundation_views
With Sass (requires sassc or dartsass-rails in the host app):
*= require devise_foundation_views_scss
Or Less:
*= require devise_foundation_views_less
Ensure your app loads Foundation 6 (e.g. via foundation-rails, npm, or CDN).
Centered auth layout (optional)
Copy a minimal Devise-only layout (centered card, no app chrome):
rails g devise:views:foundation_layout
Then add to ApplicationController:
layout :layout_for_controller
private
def layout_for_controller
devise_controller? ? "devise" : "application"
end
And in application.css:
*= require devise_foundation_layout
Sign out without Turbo
If you do not use Turbo, sign out must use DELETE, not GET:
<%= button_to "Sign out", destroy_user_session_path, method: :delete, class: "button" %>
link_to ..., data: { turbo_method: :delete } only works when turbo-rails is loaded.
Generators
Copy locale files:
rails g devise:views:locale it
Copy Foundation-styled Devise views into your app:
rails g devise:views:foundation_templates
rails g devise:views:foundation_templates slim
rails g devise:views:foundation_templates haml
Features (1.0.x)
- Foundation 6 XY grid layout (
grid-container,grid-x,cell) devise/shared/_error_messagespartial (Devise standard)- ERB, HAML, and Slim templates
- Devise 4.9+ and 5.x compatible fields (
autocomplete,pending_reconfirmation?, Turbo confirm on delete) - OmniAuth providers use
button_towithdata-turbo="false"
Error messages
Prefer the shared partial (used in all bundled views):
<%= render "devise/shared/error_messages", resource: resource %>
foundation_devise_error_messages! remains available but is deprecated.
Upgrading from 0.x
Version 1.0.0 requires Ruby 3.0+, Rails 6.0+, Foundation 6, and Devise 4.9+. See UPGRADE_GUIDE.md.
Contributing
Bug reports and pull requests are welcome at https://github.com/ethirajsrinivasan/devise-foundation-views.
License
MIT — see LICENSE.txt.