diff --git a/Gemfile b/Gemfile
index 0f4aea4..8c0e89f 100644
--- a/Gemfile
+++ b/Gemfile
@@ -54,3 +54,5 @@ end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
+
+gem "haml-rails", "~> 2.0"
diff --git a/Gemfile.lock b/Gemfile.lock
index ea789dc..3eaa86f 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -80,9 +80,24 @@ GEM
concurrent-ruby (1.1.9)
crass (1.0.6)
erubi (1.10.0)
+ erubis (2.7.0)
ffi (1.15.4)
globalid (1.0.0)
activesupport (>= 5.0)
+ haml (5.2.2)
+ temple (>= 0.8.0)
+ tilt
+ haml-rails (2.0.1)
+ actionpack (>= 5.1)
+ activesupport (>= 5.1)
+ haml (>= 4.0.6, < 6.0)
+ html2haml (>= 1.0.1)
+ railties (>= 5.1)
+ html2haml (2.2.0)
+ erubis (~> 2.7.0)
+ haml (>= 4.0, < 6)
+ nokogiri (>= 1.6.0)
+ ruby_parser (~> 3.5)
i18n (1.8.11)
concurrent-ruby (~> 1.0)
jbuilder (2.11.4)
@@ -149,6 +164,8 @@ GEM
ffi (~> 1.0)
regexp_parser (2.2.0)
rexml (3.2.5)
+ ruby_parser (3.18.1)
+ sexp_processor (~> 4.16)
rubyzip (2.3.2)
sass-rails (6.0.0)
sassc-rails (~> 2.1, >= 2.1.1)
@@ -165,6 +182,7 @@ GEM
rexml (~> 3.2, >= 3.2.5)
rubyzip (>= 1.2.2)
semantic_range (3.0.0)
+ sexp_processor (4.16.0)
spring (4.0.0)
sprockets (4.0.2)
concurrent-ruby (~> 1.0)
@@ -174,6 +192,7 @@ GEM
activesupport (>= 5.2)
sprockets (>= 3.0.0)
sqlite3 (1.4.2)
+ temple (0.8.2)
thor (1.1.0)
tilt (2.0.10)
turbolinks (5.2.1)
@@ -209,6 +228,7 @@ DEPENDENCIES
bootsnap (>= 1.4.4)
byebug
capybara (>= 3.26)
+ haml-rails (~> 2.0)
jbuilder (~> 2.7)
listen (~> 3.3)
puma (~> 5.0)
diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb
deleted file mode 100644
index c99f5b2..0000000
--- a/app/views/layouts/application.html.erb
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
- Sharedlists
-
- <%= csrf_meta_tags %>
- <%= csp_meta_tag %>
-
- <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
- <%= javascript_pack_tag 'application', 'data-turbolinks-track': 'reload' %>
-
-
-
- <%= yield %>
-
-
diff --git a/app/views/layouts/application.html.haml b/app/views/layouts/application.html.haml
new file mode 100644
index 0000000..3a83c8d
--- /dev/null
+++ b/app/views/layouts/application.html.haml
@@ -0,0 +1,12 @@
+!!!
+%html
+ %head
+ %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/
+ %title Sharedlists
+ %meta{:content => "width=device-width,initial-scale=1", :name => "viewport"}/
+ = csrf_meta_tags
+ = csp_meta_tag
+ = stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload'
+ = javascript_pack_tag 'application', 'data-turbolinks-track': 'reload'
+ %body
+ = yield
diff --git a/app/views/layouts/mailer.html.erb b/app/views/layouts/mailer.html.erb
deleted file mode 100644
index cbd34d2..0000000
--- a/app/views/layouts/mailer.html.erb
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
- <%= yield %>
-
-
diff --git a/app/views/layouts/mailer.html.haml b/app/views/layouts/mailer.html.haml
new file mode 100644
index 0000000..cbf6b8e
--- /dev/null
+++ b/app/views/layouts/mailer.html.haml
@@ -0,0 +1,8 @@
+!!!
+%html
+ %head
+ %meta{:content => "text/html; charset=utf-8", "http-equiv" => "Content-Type"}/
+ :css
+ /* Email styles need to be inline */
+ %body
+ = yield
diff --git a/app/views/layouts/mailer.text.erb b/app/views/layouts/mailer.text.erb
deleted file mode 100644
index 37f0bdd..0000000
--- a/app/views/layouts/mailer.text.erb
+++ /dev/null
@@ -1 +0,0 @@
-<%= yield %>
diff --git a/app/views/layouts/mailer.text.haml b/app/views/layouts/mailer.text.haml
new file mode 100644
index 0000000..0a90f09
--- /dev/null
+++ b/app/views/layouts/mailer.text.haml
@@ -0,0 +1 @@
+= yield