diff --git a/home/templates/registration/activation_email.html b/accounts/templates/activation_email.html
similarity index 100%
rename from home/templates/registration/activation_email.html
rename to accounts/templates/activation_email.html
diff --git a/home/templates/registration/create_account.html b/accounts/templates/create_account.html
similarity index 100%
rename from home/templates/registration/create_account.html
rename to accounts/templates/create_account.html
diff --git a/home/templates/registration/login.html b/accounts/templates/login.html
similarity index 100%
rename from home/templates/registration/login.html
rename to accounts/templates/login.html
diff --git a/accounts/urls.py b/accounts/urls.py
index 47d47d739dc31d02ce28559e8c342ebd928f2148..752dbc0ac84c0f41ea2900c193a0bf1e1b8d5260 100644
--- a/accounts/urls.py
+++ b/accounts/urls.py
@@ -1,13 +1,12 @@
 from django.urls import include, path
-import django.contrib.auth.views as dj_auth_views
 
-from accounts.views import logout_view, ActivateAccountView, CreateAccountView
+from accounts.views import ActivateAccountView, CreateAccountView, LogoutView, LoginView
 
 app_name = "accounts"
 
 urlpatterns = [
-	path("login/", dj_auth_views.LoginView.as_view(), name="login"),
-	path("logout/", logout_view, name="logout"),
+	path("login/", LoginView.as_view(), name="login"),
+	path("logout/", LogoutView.as_view(), name="logout"),
 	path("create/", CreateAccountView.as_view(), name="create"),
 	path('activate/<uidb64>/<token>/', ActivateAccountView.as_view(), name='activate'),
 ]
diff --git a/accounts/views.py b/accounts/views.py
index 903d734cd99a9ccc156b7ca28db0a029f122fba9..ce64f6dde3e5902cdacd7f6f9b8d1596ec3d5e8d 100644
--- a/accounts/views.py
+++ b/accounts/views.py
@@ -1,7 +1,7 @@
 from django.conf import settings
 from django.contrib import messages
 from django.contrib.auth import authenticate, login, logout
-from django.contrib.auth.decorators import login_required
+from django.contrib.auth.views import LoginView as DjangoLoginView
 from django.contrib.sites.shortcuts import get_current_site
 from django.http import Http404
 from django.utils.encoding import force_bytes, force_text
@@ -16,17 +16,26 @@ from accounts.models import EmailUser
 from accounts.tokens import email_token_generator
 from site_settings.models import SiteSettings
 
-@login_required
-def logout_view(request):
+class LoginView(DjangoLoginView):
+	"""Vue pour se connecter"""
+	template_name = "login.html"
+
+class LogoutView(RedirectView):
 	"""Vue pour se deconnecter"""
-	logout(request)
-	messages.success(request, "Vous avez bien été déconecté·e.")
-	return redirect("home")
+
+	permanent = False
+	pattern_name = "home"
+
+	def get_redirect_url(self, *args, **kwargs):
+		if self.request.user.is_authenticated:
+			logout(self.request)
+		messages.info(self.request, "Vous avez bien été déconnecté·e.")
+		return super().get_redirect_url(*args, **kwargs)
 
 class CreateAccountView(View):
 	"""Vue pour la creation de compte"""
 	form_class = CreateAccountForm
-	template_name = 'registration/create_account.html'
+	template_name = 'create_account.html'
 
 	@staticmethod
 	def check_creation_allowed():