diff --git a/.gitignore b/.gitignore
index 49e9a7348ec8c18b74f45535dcd608d4805f8532..5dd8186bf4d40871466f66a2e106cf0c7ca9d363 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,3 @@
 venv
-.secretsenv
+.env
 __pycache__
diff --git a/app/auth/views.py b/app/auth/views.py
index 0e117b332fd0a75aab9908658f47c30900e8a43f..69193d5663f321f75d954f545ab34a850394ab16 100644
--- a/app/auth/views.py
+++ b/app/auth/views.py
@@ -1,5 +1,9 @@
 from flask import flash, redirect, render_template, request, url_for
+<<<<<<< HEAD
 from flask_login import login_required, login_user, logout_user, current_user
+=======
+from flask_login import current_user, login_required, login_user, logout_user
+>>>>>>> 1a973bfbc68dfea26a8b5360074480641cb34f31
 from . import auth
 from .. import db
 from .forms import LoginForm, PasswordResetRequestForm, RegistrationForm
@@ -47,6 +51,8 @@ def register():
 
 @auth.route('/reset', methods=['GET', 'POST'])
 def password_reset_request():
+    if not current_user.is_anonymous:
+        return redirect(url_for('main.index'))
     form = PasswordResetRequestForm()
     if form.validate_on_submit():
         user = User.query.filter_by(email=form.email.data.lower()).first()
@@ -58,4 +64,10 @@ def password_reset_request():
         flash('An email with instructions to reset your password has been '
               'sent to you.')
         return redirect(url_for('auth.login'))
-    return render_template('auth/reset_password.html.j2', form=form, title='Password Reset')
+    return render_template('auth/reset_password.html.j2', form=form,
+                           title='Password Reset')
+
+
+@auth.route('/reset/<token>')
+def password_reset(token):
+    return 'test'
diff --git a/app/models.py b/app/models.py
index d6bccb0251f9667814e5a878cea238f559572ab0..d7d33b853f8078707899253fe68ce4c2979603dd 100644
--- a/app/models.py
+++ b/app/models.py
@@ -1,4 +1,6 @@
+from flask import current_app
 from flask_login import UserMixin
+from itsdangerous import TimedJSONWebSignatureSerializer as Serializer
 from werkzeug.security import generate_password_hash, check_password_hash
 from . import db
 from . import login_manager
@@ -26,6 +28,10 @@ class User(UserMixin, db.Model):
 
     password_hash = db.Column(db.String(128))
 
+    def generate_reset_token(self, expiration=3600):
+        s = Serializer(current_app.config['SECRET_KEY'], expiration)
+        return s.dumps({'reset': self.id}).decode('utf-8')
+
     @property
     def password(self):
         raise AttributeError('password is not a readable attribute')
diff --git a/app/templates/auth/reset_password.html.j2 b/app/templates/auth/reset_password.html.j2
index 782a1f775706d6982870c7884d35bd4ffd9ed1d4..bb9cfe74f1aa8cc673cf9683428a6924e277d5b1 100644
--- a/app/templates/auth/reset_password.html.j2
+++ b/app/templates/auth/reset_password.html.j2
@@ -1,14 +1,20 @@
 {% extends "base.html.j2" %}
 
 {% block page_content %}
-<div class="col s12 m6 offset-m3">
-  <div class="card medium">
+<div class="col s12 m8 offset-m2">
+  <div class="card small">
     <div class="card-content">
-      <p>Sign in into an exisiting account or register a new one!</p>
-      <br>
-    <div class="card-action">
-      <a class="btn" href="{{url_for('auth.register')}}">Register</a>
-    </div>
+      <span class="card-title">Reset Your Password</span>
+      <form method="POST">
+        {{ form.hidden_tag() }}
+        <div class="input-field">
+          {{ form.email(class='validate', type='email') }}
+          {{ form.email.label }}
+        </div>
+        <div class="card-action">
+          {{ form.submit(class='btn right') }}
+        </div>
+      </form>
     </div>
   </div>
 </div>
diff --git a/config.py b/config.py
index fdc2318daa51eee7004901e98f1d42e5c0047d3f..5aee1326e46163ea808ff0ec1292eae4770fd6ec 100644
--- a/config.py
+++ b/config.py
@@ -5,14 +5,14 @@ basedir = os.path.abspath(os.path.dirname(__file__))
 
 
 class Config:
-    MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.uni-bielefeld.de')
+    MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.gmail.com')
     MAIL_PORT = int(os.environ.get('MAIL_PORT', '587'))
     MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'true').lower() in \
         ['true', 'on', '1']
     MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
     MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
     OPAQUE_MAIL_SUBJECT_PREFIX = '[Opaque]'
-    OPAQUE_MAIL_SENDER = 'Opaque Admin <inf_sfb1288@uni-bielefeld.de>'
+    OPAQUE_MAIL_SENDER = 'Opaque Development <dev.opaque@gmail.com>'
     SECRET_KEY = os.environ.get('SECRET_KEY') or 'hard to guess string'
     SQLALCHEMY_TRACK_MODIFICATIONS = False