diff --git a/flask_security/templates/security/base.html b/flask_security/templates/security/base.html
new file mode 100644
index 00000000..da792e73
--- /dev/null
+++ b/flask_security/templates/security/base.html
@@ -0,0 +1,30 @@
+{% block doc -%}
+
+
+ {%- block html %}
+
+ {%- block head %}
+ {% block title %}{{ title|default }}{% endblock title %}
+
+ {%- block metas %}
+
+ {%- endblock metas %}
+
+ {%- block styles %}
+ {%- endblock styles %}
+ {%- endblock head %}
+
+
+ {% block body -%}
+ {% block navbar %}
+ {%- endblock navbar %}
+ {% block content -%}
+ {%- endblock content %}
+
+ {% block scripts %}
+ {%- endblock scripts %}
+ {%- endblock body %}
+
+ {%- endblock html %}
+
+{% endblock doc -%}
diff --git a/flask_security/templates/security/change_password.html b/flask_security/templates/security/change_password.html
index f1a9cccd..0c08d165 100644
--- a/flask_security/templates/security/change_password.html
+++ b/flask_security/templates/security/change_password.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Change password') }}
-
+{% endblock %}
diff --git a/flask_security/templates/security/forgot_password.html b/flask_security/templates/security/forgot_password.html
index ce5fd5d4..22391db9 100644
--- a/flask_security/templates/security/forgot_password.html
+++ b/flask_security/templates/security/forgot_password.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Send password reset instructions') }}
{% include "security/_menu.html" %}
+{% endblock %}
diff --git a/flask_security/templates/security/login_user.html b/flask_security/templates/security/login_user.html
index 6801dde5..d9b46e98 100644
--- a/flask_security/templates/security/login_user.html
+++ b/flask_security/templates/security/login_user.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Login') }}
{% include "security/_menu.html" %}
+{% endblock %}
diff --git a/flask_security/templates/security/register_user.html b/flask_security/templates/security/register_user.html
index 0380c742..abad512f 100644
--- a/flask_security/templates/security/register_user.html
+++ b/flask_security/templates/security/register_user.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Register') }}
{% include "security/_menu.html" %}
+{% endblock %}
diff --git a/flask_security/templates/security/reset_password.html b/flask_security/templates/security/reset_password.html
index ee1166cd..18cf6f9c 100644
--- a/flask_security/templates/security/reset_password.html
+++ b/flask_security/templates/security/reset_password.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Reset password') }}
{% include "security/_menu.html" %}
+{% endblock %}
diff --git a/flask_security/templates/security/send_confirmation.html b/flask_security/templates/security/send_confirmation.html
index 473b9835..730c8b8e 100644
--- a/flask_security/templates/security/send_confirmation.html
+++ b/flask_security/templates/security/send_confirmation.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Resend confirmation instructions') }}
{% include "security/_menu.html" %}
+{% endblock %}
diff --git a/flask_security/templates/security/send_login.html b/flask_security/templates/security/send_login.html
index df6f089a..cb628fc3 100644
--- a/flask_security/templates/security/send_login.html
+++ b/flask_security/templates/security/send_login.html
@@ -1,4 +1,7 @@
+{% extends "security/base.html" %}
{% from "security/_macros.html" import render_field_with_errors, render_field %}
+
+{% block content %}
{% include "security/_messages.html" %}
{{ _('Login') }}
{% include "security/_menu.html" %}
+{% endblock %}