diff --git a/app.js b/app.js
index bcbbfbfea641c144798b6d65c147f34e033622e8..debd5c3632871c1bc29c6cf4dce6fec8abff6a60 100644
--- a/app.js
+++ b/app.js
@@ -9,6 +9,10 @@ const session = require('express-session');
 const errorhandler = require('errorhandler');
 const flash = require('express-flash');
 const i18n = require('i18n'); // internationalization
+i18n.configure({
+  locales:['de', 'en'],
+  directory: './locales'
+});
 
 var env = process.env.NODE_ENV || 'development';
 const config = require('./config/config')[env];
@@ -24,6 +28,12 @@ app.use(bodyParser.json());
 app.use(bodyParser.urlencoded({extended: false}));
 app.use(express.static(path.join(__dirname, 'public')));
 
+app.use(i18n.init);
+app.use((req, res, next) => {
+  res.setLocale('de');
+  next();
+});
+
 app.use(session(
   {
     resave: true,
@@ -48,14 +58,9 @@ app.use(function(req, res, next) {
   next();
 });
 
-// internationalization (i18n)
-i18n.configure({
-  locales:['de', 'en'],
-  directory: './locales'
-});
-app.use(i18n.init);
-
-require('./routes/routes')(app, config, passport, i18n);
+//require('./routes/routes')(app, config, passport, i18n);
+require('./routes/routes-account')(app, config, passport, i18n);
+require('./routes/routes-project')(app, config, passport);
 //require('./routes/dbconn')(app, config);
 require('./routes/api')(app, config, passport);
 
diff --git a/public/js/jquery-ui/i18n/datepicker-de.js b/public/js/jquery-ui/i18n/datepicker-de.js
new file mode 100644
index 0000000000000000000000000000000000000000..e2e61d27b6b4bf33c0fd59e9ebf2d307d0337af3
--- /dev/null
+++ b/public/js/jquery-ui/i18n/datepicker-de.js
@@ -0,0 +1,37 @@
+/* German initialisation for the jQuery UI date picker plugin. */
+/* Written by Milian Wolff (mail@milianw.de). */
+( function( factory ) {
+	if ( typeof define === "function" && define.amd ) {
+
+		// AMD. Register as an anonymous module.
+		define( [ "../widgets/datepicker" ], factory );
+	} else {
+
+		// Browser globals
+		factory( jQuery.datepicker );
+	}
+}( function( datepicker ) {
+
+datepicker.regional.de = {
+	closeText: "Schließen",
+	prevText: "<Zurück",
+	nextText: "Vor>",
+	currentText: "Heute",
+	monthNames: [ "Januar","Februar","März","April","Mai","Juni",
+	"Juli","August","September","Oktober","November","Dezember" ],
+	monthNamesShort: [ "Jan","Feb","Mär","Apr","Mai","Jun",
+	"Jul","Aug","Sep","Okt","Nov","Dez" ],
+	dayNames: [ "Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag" ],
+	dayNamesShort: [ "So","Mo","Di","Mi","Do","Fr","Sa" ],
+	dayNamesMin: [ "So","Mo","Di","Mi","Do","Fr","Sa" ],
+	weekHeader: "KW",
+	dateFormat: "dd.mm.yy",
+	firstDay: 1,
+	isRTL: false,
+	showMonthAfterYear: false,
+	yearSuffix: "" };
+datepicker.setDefaults( datepicker.regional.de );
+
+return datepicker.regional.de;
+
+} ) );
\ No newline at end of file
diff --git a/routes/mailer.js b/routes/mailer.js
new file mode 100644
index 0000000000000000000000000000000000000000..510b5bb1d11e075f446cdf19b8a954411025ee38
--- /dev/null
+++ b/routes/mailer.js
@@ -0,0 +1,31 @@
+const nodemailer = require('nodemailer')
+
+var env = process.env.NODE_ENV || 'development';
+const config = require('../config/config')[env]
+
+var smtpTransport = nodemailer.createTransport({
+    host: config.mailer.host,
+    secureConnection: config.mailer.secureConnection,
+    port: config.mailer.port,
+    auth: {
+      user: config.mailer.authUser,
+      pass: config.mailer.authPass
+    },
+    tls: {
+        ciphers: config.mailer.tlsCiphers
+    } 
+});
+  
+var mailOptions = {
+    to: "",
+    from: config.mailer.from,
+    subject: "",
+    text: ""
+};
+
+var mailer = {
+    transport: smtpTransport,
+    options: mailOptions
+}
+
+module.exports = mailer
\ No newline at end of file
diff --git a/routes/routes.js b/routes/routes-account.js
similarity index 74%
rename from routes/routes.js
rename to routes/routes-account.js
index febd0ccc73be9203e6d64f33841f5d3529a3dcd8..edba628a284d1302dc4af590ae0f4c14bfde4e9e 100644
--- a/routes/routes.js
+++ b/routes/routes-account.js
@@ -9,7 +9,7 @@ const salt = 64; // salt length
 // forgot pwd
 const async = require('async')
 const crypto = require('crypto')
-const nodemailer = require('nodemailer')
+const mailer = require('./mailer')
 
 module.exports = function (app, config, passport, i18n) {
 
@@ -74,28 +74,17 @@ module.exports = function (app, config, passport, i18n) {
       res.status(200).send(spMetadata);
     }
   );
-
-  // ======== NODEMAILER ====================
-  var smtpTransport = nodemailer.createTransport({
-    host: config.mailer.host,
-    secureConnection: config.mailer.secureConnection,
-    port: config.mailer.port,
-    auth: {
-      user: config.mailer.authUser,
-      pass: config.mailer.authPass
-    },
-    tls: {
-        ciphers: config.mailer.tlsCiphers
-    } 
+  
+  // ================ test i18n ==================
+  i18n.setLocale('de');
+  app.get('/de', function(req, res) {
+    var greeting = i18n.__('Hello World')
+    res.send(greeting)
   });
   
-  var mailOptions = {
-    to: "",
-    from: config.mailer.from,
-    subject: "",
-    text: ""
-  };
+  var lang = 'DE'
 
+  // ======== APP ROUTES - ACCOUNT ====================
   var updatePasswordMailSubject = "Ihr Passwort für das Transferportal wurde gespeichert."
   var mailSignature = "Mit den besten Grüßen,\ndas Transferportal-Team der HFT Stuttgart\n\n"+
     "Transferportal der Hochschule für Technik Stuttgart\n"+
@@ -104,17 +93,7 @@ module.exports = function (app, config, passport, i18n) {
     "m4lab@hft-stuttgart.de\n"+
     "https://transfer.hft-stuttgart.de"
   var updatePasswordMailContent = "Lieber Nutzer,\n\n"+"Ihr Passwort wurde erfolgreich geändert.\n\n"+mailSignature
-  
-  // ================ test i18n ==================
-  i18n.setLocale('de');
-  app.get('/de', function(req, res) {
-    var greeting = i18n.__('Hello World')
-    res.send(greeting)
-  });
-  
-  var lang = 'DE'
 
-  // ======== APP ROUTES - ACCOUNT ====================
   app.get('/', function (req, res) {
     if (req.isAuthenticated()) {
       methods.getUserByEmail(req.user.email, function(data, err){
@@ -332,11 +311,11 @@ module.exports = function (app, config, passport, i18n) {
                         else {
                           //req.flash('success', "Pasword updated!")
                           req.flash('success', "Passwort aktualisiert!")
-                          mailOptions.to = req.user.email
+                          mailer.options.to = req.user.email
                           //mailOptions.subject = "Your M4_LAB Password has been updated."
-                          mailOptions.subject = updatePasswordMailSubject
-                          mailOptions.text = updatePasswordMailContent
-                          smtpTransport.sendMail(mailOptions, function(err) {
+                          mailer.options.subject = updatePasswordMailSubject
+                          mailer.options.text = updatePasswordMailContent
+                          mailer.transport.sendMail(mailer.options, function(err) {
                             if (err) {
                               console.log(err)
                             }
@@ -407,10 +386,10 @@ module.exports = function (app, config, passport, i18n) {
             });
 
             // send email
-            mailOptions.to = emailAddress;
-            mailOptions.subject = emailSubject;
-            mailOptions.text = emailContent;
-            smtpTransport.sendMail(mailOptions, function(err) {
+            mailer.options.to = emailAddress;
+            mailer.options.subject = emailSubject;
+            mailer.options.text = emailContent;
+            mailer.transport.sendMail(mailer.options, function(err) {
               done(err, 'done');
             });
           }
@@ -470,10 +449,10 @@ module.exports = function (app, config, passport, i18n) {
                 //req.flash('success', "Your pasword has been updated.")
                 req.flash('success', "Passwort aktualisiert!")
                 // send notifiaction email
-                mailOptions.to = user.email
-                mailOptions.subject = updatePasswordMailSubject
-                mailOptions.text = updatePasswordMailContent
-                smtpTransport.sendMail(mailOptions, function(err) {
+                mailer.options.to = user.email
+                mailer.options.subject = updatePasswordMailSubject
+                mailer.options.text = updatePasswordMailContent
+                mailer.transport.sendMail(mailer.options, function(err) {
                   if (err) {
                     console.log(err)
                   }
@@ -551,146 +530,5 @@ module.exports = function (app, config, passport, i18n) {
       }
     })
   })
-    app.get('/mailinglists', function (req, res) {
-        async.waterfall([
-            function(done) {
-                methods.getAllMailinglists(function(mailinglistOverview, err) {
-                    if (!err) {
-                        done(err, mailinglistOverview)
-                    }
-                })
-            },
-            // create JSON object of mailinglists for front-end
-            function(mailinglistOverview, done) {
-                var allMailingLists = []  // JSON object
-                for (let i = 0; i < mailinglistOverview.length; i++) {
-                    // add data to JSON object
-                    allMailingLists.push({
-                        id: mailinglistOverview[i].id,
-                        name: mailinglistOverview[i].name,
-                        src: mailinglistOverview[i].src,
-                        projectstatus: mailinglistOverview[i].projectstatus,
-                        project_title: mailinglistOverview[i].project_title
-                    });
-                }
-
-                res.render(lang+'/mailinglists', {
-                    isUserAuthenticated: req.isAuthenticated(),
-                    user: req.user,
-                    mailinglists: allMailingLists
-                });
-            }
-        ])
-    });
-
-  // ======== APP ROUTES - PROJECT ====================
-  app.get('/project', function (req, res) {
-    async.waterfall([
-      // get all projects from projectdb
-      function(done) {
-        methods.getAllProjects(function(projectsOverview, err) {
-          if (!err) {
-            done(err, projectsOverview)
-          }
-        })
-      },
-      // create JSON object for front-end
-      function(projectsOverview, done) {
-        var activeProjects = []
-        var nonActiveProjects = []
-
-        for (var i = 0; i < projectsOverview.length; i++) {
-          var project = {
-            id: projectsOverview[i].id,
-            logo: projectsOverview[i].logo,
-            akronym: projectsOverview[i].pname,
-            title: projectsOverview[i].title,
-            summary: projectsOverview[i].onelinesummary,
-            category: projectsOverview[i].category,
-            cp: projectsOverview[i].contact_email,
-            gitlab: projectsOverview[i].gitlab
-          }
-          if (projectsOverview[i].projectstatus == 0) {
-            nonActiveProjects.push(project)
-          }
-          else if (projectsOverview[i].projectstatus == 1) {
-            activeProjects.push(project)
-          }
-        }
-
-        // render the page
-        if (req.isAuthenticated()) {
-          res.render(lang+'/project/projects', {
-            isUserAuthenticated: true,
-            nonActive: nonActiveProjects,
-            active: activeProjects
-          });
-        }
-        else {
-          res.render(lang+'/project/projects', {
-            isUserAuthenticated: false,
-            nonActive: nonActiveProjects,
-            active: activeProjects
-          });
-        }
-      }
-    ])
-  })
-
-  app.get('/addprojectoverview', function (req, res) {
-    if (req.isAuthenticated()) {
-      res.render(lang+'/project/addProjectOverview')
-    }
-    else {
-      res.redirect('/account/login')
-    }
-  })
-  
-  app.post('/addprojectoverview', function (req, res) {
-    if (req.isAuthenticated()) {
-      var wiki = 0
-      if (req.body.wiki)
-        wiki = 1
-
-      var projectOverviewData = {
-        pname: req.body.pname,
-        title: req.body.title,
-        onelinesummary: req.body.summary,
-        category: req.body.category,
-        logo: req.body.logo,
-        gitlab: req.body.gitlabURL,
-        wiki: wiki,
-        overview: req.body.overview,
-        question: req.body.question,
-        approach: req.body.approach,
-        result: req.body.result,
-        keywords: req.body.keywords,
-        announcement: req.body.announcement,
-        term: req.body.term,
-        further_details: req.body.furtherDetails,
-        website: req.body.website,
-        src: req.body.src,
-        caption: req.body.caption,
-        contact_firstname: req.body.contactFirstname,
-        contact_lastname: req.body.contactLastname,
-        contact_email: req.body.contactEmail,
-        leader_firstname: req.body.leaderFirstname,
-        leader_lastname: req.body.leaderLastname,
-        leader_email: req.body.leaderEmail
-      }
-      
-      methods.addProjectOverview(projectOverviewData, function(err){
-        if (err) {
-          //req.flash('error', "Failed")
-          req.flash('error', "Fehlgeschlagen")
-          res.redirect('/account/addProjectOverview');
-        }
-        else {
-          req.flash('success', 'Your project has been created.')
-          res.redirect('/account/project');
-        }
-      })
-    }
-  })
   
 };
\ No newline at end of file
diff --git a/routes/routes-project.js b/routes/routes-project.js
new file mode 100644
index 0000000000000000000000000000000000000000..6b8ac371b0eb983b000f9f9e0e806adcfc96c5aa
--- /dev/null
+++ b/routes/routes-project.js
@@ -0,0 +1,157 @@
+const methods = require('./methods')
+const async = require('async')
+
+module.exports = function (app) {
+ 
+  // ======== APP ROUTES - PROJECT ====================
+  var lang = 'DE'
+
+  app.get('/mailinglists', function (req, res) {
+    async.waterfall([
+        function(done) {
+            methods.getAllMailinglists(function(mailinglistOverview, err) {
+                if (!err) {
+                    done(err, mailinglistOverview)
+                }
+            })
+        },
+        // create JSON object of mailinglists for front-end
+        function(mailinglistOverview, done) {
+            var allMailingLists = []  // JSON object
+            for (let i = 0; i < mailinglistOverview.length; i++) {
+                // add data to JSON object
+                allMailingLists.push({
+                    id: mailinglistOverview[i].id,
+                    name: mailinglistOverview[i].name,
+                    src: mailinglistOverview[i].src,
+                    projectstatus: mailinglistOverview[i].projectstatus,
+                    project_title: mailinglistOverview[i].project_title
+                });
+            }
+
+            res.render(lang+'/project/mailinglists', {
+                isUserAuthenticated: req.isAuthenticated(),
+                user: req.user,
+                mailinglists: allMailingLists
+            });
+        }
+    ])
+  });
+
+  app.get('/project', function (req, res) {
+    async.waterfall([
+      // get all projects from projectdb
+      function(done) {
+        methods.getAllProjects(function(projectsOverview, err) {
+          if (!err) {
+            done(err, projectsOverview)
+          }
+        })
+      },
+      // create JSON object for front-end
+      function(projectsOverview, done) {
+        var activeProjects = []
+        var nonActiveProjects = []
+
+        for (var i = 0; i < projectsOverview.length; i++) {
+          var project = {
+            id: projectsOverview[i].id,
+            logo: projectsOverview[i].logo,
+            akronym: projectsOverview[i].pname,
+            title: projectsOverview[i].title,
+            summary: projectsOverview[i].onelinesummary,
+            category: projectsOverview[i].category,
+            cp: projectsOverview[i].contact_email,
+            gitlab: projectsOverview[i].gitlab
+          }
+          if (projectsOverview[i].projectstatus == 0) {
+            nonActiveProjects.push(project)
+          }
+          else if (projectsOverview[i].projectstatus == 1) {
+            activeProjects.push(project)
+          }
+        }
+
+        // render the page
+        if (req.isAuthenticated()) {
+          res.render(lang+'/project/projects', {
+            isUserAuthenticated: true,
+            nonActive: nonActiveProjects,
+            active: activeProjects
+          });
+        }
+        else {
+          res.render(lang+'/project/projects', {
+            isUserAuthenticated: false,
+            nonActive: nonActiveProjects,
+            active: activeProjects
+          });
+        }
+      }
+    ])
+  })
+
+  app.get('/addprojectoverview', function (req, res) {
+    if (req.isAuthenticated()) {
+      res.render(lang+'/project/addProjectOverview')
+    }
+    else {
+      res.redirect('/login')
+    }
+  })
+  
+  app.post('/addprojectoverview', function (req, res) {
+    if (req.isAuthenticated()) {
+      var wiki = 0
+      if (req.body.wiki)
+        wiki = 1
+
+      var projectTerm = req.body.termForm + " - " + req.body.termTo
+      var projectOverviewData = {
+        pname: req.body.pname,
+        title: req.body.title,
+        onelinesummary: req.body.summary,
+        category: req.body.category,
+        logo: req.body.logo,
+        gitlab: req.body.gitlabURL,
+        wiki: wiki,
+        overview: req.body.overview,
+        question: req.body.question,
+        approach: req.body.approach,
+        result: req.body.result,
+        keywords: req.body.keywords,
+        announcement: req.body.announcement,
+        term: projectTerm,
+        further_details: req.body.furtherDetails,
+        website: req.body.website,
+        src: req.body.src,
+        caption: req.body.caption,
+        contact_lastname: req.body.contactName,
+        contact_email: req.body.contactEmail,
+        leader_lastname: req.body.leaderName,
+        leader_email: req.body.leaderEmail
+      }
+      
+      methods.addProjectOverview(projectOverviewData, function(err){
+        if (err) {
+          //req.flash('error', "Failed")
+          req.flash('error', "Fehlgeschlagen")
+          res.redirect('/addProjectOverview');
+        }
+        else {
+          req.flash('success', 'Your project has been created.')
+          res.redirect('/project');
+        }
+      })
+    }
+  })
+
+  app.get('/updateprojectoverview', function (req, res) {
+    // only their own project
+  })
+
+  app.post('/updateprojectoverview', function (req, res) {
+    // only their own project
+  })
+  
+};
\ No newline at end of file
diff --git a/views/DE/account/home.pug b/views/DE/account/home.pug
index f08d9ee7937aee1b391b8cfd40bbb004173df5d6..58b2427c3063a835f93a8be4ad87515929121978 100644
--- a/views/DE/account/home.pug
+++ b/views/DE/account/home.pug
@@ -34,9 +34,9 @@ html(lang="de")
                 h5
                     span #{user.firstname} #{user.lastname}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
-                    a(class="nav-link" href="/account/profile" aria-selected="true") Benutzerprofil
-                    a(class="nav-link" href="/account/security" aria-selected="false") Sicherheitseinstellungen
-                    a(class="nav-link" href="/account/services" aria-selected="false") Projekte und Dienste
+                    a(class="nav-link" href="/profile" aria-selected="true") Benutzerprofil
+                    a(class="nav-link" href="/security" aria-selected="false") Sicherheitseinstellungen
+                    a(class="nav-link" href="/services" aria-selected="false") Projekte und Dienste
             div(class="col-sm-9")
                 p content goes here
                 
diff --git a/views/DE/account/profile.pug b/views/DE/account/profile.pug
index e4d7e2609827baefef68378e4b42cdd06b84d8f9..32a2aff116c487f82b6c6b2bd6d50637c5cedd2f 100644
--- a/views/DE/account/profile.pug
+++ b/views/DE/account/profile.pug
@@ -35,8 +35,8 @@ html(lang="de")
                     span #{user.firstname} #{user.lastname}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
                     a(class="nav-link" href="#" aria-selected="true") Benutzerprofil
-                    a(class="nav-link" href="/account/security" aria-selected="false") Sicherheitseinstellungen
-                    a(class="nav-link" href="/account/services" aria-selected="false") Projekte und Dienste
+                    a(class="nav-link" href="/security" aria-selected="false") Sicherheitseinstellungen
+                    a(class="nav-link" href="/services" aria-selected="false") Projekte und Dienste
             div(class="col-sm-9")
                 if successes
                     for success in successes
diff --git a/views/DE/account/security.pug b/views/DE/account/security.pug
index 6db09112136b41451ea1fd381e768d36282626f3..560d32bc554c360f2cc32783f4aeda33b546d0fe 100644
--- a/views/DE/account/security.pug
+++ b/views/DE/account/security.pug
@@ -37,9 +37,9 @@ html(lang="de")
                 h5
                     span #{user.firstName} #{user.lastName}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
-                    a(class="nav-link" href="/account/profile" aria-selected="true") Benutzerprofil
+                    a(class="nav-link" href="/profile" aria-selected="true") Benutzerprofil
                     a(class="nav-link" href="#" aria-selected="false") Sicherheitseinstellungen
-                    a(class="nav-link" href="/account/services" aria-selected="false") Projekte und Dienste
+                    a(class="nav-link" href="/services" aria-selected="false") Projekte und Dienste
             div(class="col-sm-9")
                 if successes
                     for success in successes
diff --git a/views/DE/account/services.pug b/views/DE/account/services.pug
index 6ab101f30c8da9f6c5b53d526af7c4dd8178936b..55f5a1b66458fb86a0bd9a6e2069da57a4d370ea 100644
--- a/views/DE/account/services.pug
+++ b/views/DE/account/services.pug
@@ -34,8 +34,8 @@ html(lang="de")
                 h5
                     span #{user.firstName} #{user.lastName}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
-                    a(class="nav-link" href="/account/profile" aria-selected="true") Benutzerprofil
-                    a(class="nav-link" href="/account/security" aria-selected="false") Sicherheitseinstellungen
+                    a(class="nav-link" href="/profile" aria-selected="true") Benutzerprofil
+                    a(class="nav-link" href="/security" aria-selected="false") Sicherheitseinstellungen
                     a(class="nav-link" href="#" aria-selected="false") Projekte und Dienste
             div(class="col-sm-9")
                 if successes
diff --git a/views/DE/project/addProjectOverview.pug b/views/DE/project/addProjectOverview.pug
index 7b40b54fc63b3d774caf8d0b8af272f4e3a554ce..87e5d469f911e3f692354433708cbbbf9c3c4787 100644
--- a/views/DE/project/addProjectOverview.pug
+++ b/views/DE/project/addProjectOverview.pug
@@ -6,6 +6,8 @@ html(lang="de")
     meta(name="viewport", content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no")
     link(rel="stylesheet", type="text/css", href="https://transfer.hft-stuttgart.de/css/bootstrap/bootstrap.css")
     link(rel="stylesheet", href="https://use.fontawesome.com/releases/v5.8.2/css/all.css", integrity="sha384-oS3vJWv+0UjzBfQzYUhtDYW+Pj2yciDJxpsK1OYPAYjqT085Qq/1cq5FLXAZQ7Ay", crossorigin="anonymous")
+    // jQuery UI - Datepicker
+    link(rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css")
     style.
         .collapse {
             display: none;
@@ -49,8 +51,13 @@ html(lang="de")
                             input#inputTitle(name="title" class="form-control" type="text" placeholder="official title of the project*" required)
                         div(class="form-group col-md-12")
                             input#inputSummary(name="summary" class="form-control" type="text" placeholder="one line summary of the project")
-                        div(class="form-group col-md-12")
-                            input#inputCategory(name="category" class="form-control" type="text" placeholder="category of the project")
+                        div(class='form-group col-md-12')
+                            select#inputCategory(name="category", class="form-control")
+                                option(value="") - select a category -
+                                option(value="Experten-Gruppe") Experten-Gruppe
+                                option(value="Student-Projekt") Student-Projekt
+                                option(value="Lehr Projekt") Lehr Projekt
+                                option(value="Transfer-projekt") Transfer-projekt
                         div(class="form-group col-md-12")
                             input#inputLogo(name="logo" class="form-control" type="text" placeholder="official logo of the project")
                         div(class="form-group col-md-12")
@@ -64,13 +71,13 @@ html(lang="de")
                     h5(class="mb-3 font-weight-bold") Content
                     div(class='form-row')
                         div(class='form-group col-md-12')
-                            textarea#inputOverview(name="overview" class="form-control" type="text" rows="5" placeholder="overview")
+                            textarea#inputOverview(name="overview" class="form-control" type="text" rows="5" placeholder="Projektüberblick")
                         div(class="form-group col-md-12")
-                            textarea#inputQuestion(name="question" class="form-control" type="text" rows="5" placeholder="question")
+                            textarea#inputQuestion(name="question" class="form-control" type="text" rows="5" placeholder="Fragestellung")
                         div(class='form-group col-md-12')
-                            textarea#inputApproach(name="approach" class="form-control" type="text" rows="5" placeholder="approach")
+                            textarea#inputApproach(name="approach" class="form-control" type="text" rows="5" placeholder="Vorgehensweise")
                         div(class="form-group col-md-12")
-                            textarea#inputResult(name="result" class="form-control" type="text" rows="5" placeholder="result")
+                            textarea#inputResult(name="result" class="form-control" type="text" rows="5" placeholder="Ergebnis und Nutzung")
                         div(class="form-group col-md-12")
                             input#inputKeywords(name="keywords" class="form-control" type="text" placeholder="keywords")
                     h5(class="mb-3 font-weight-bold") Info
@@ -78,7 +85,13 @@ html(lang="de")
                         div(class='form-group col-md-12')
                             textarea#inputAnnouncement(name="announcement" class="form-control" type="text" rows="5" placeholder="Ausschreibung")
                         div(class="form-group col-md-12")
-                            input#inputTerm(name="term" class="form-control" type="text" placeholder="Laufzeit")
+                            div(class='form-row')
+                                div(class="form-group col-md-2")
+                                    <p class="font-weight-normal">Laufzeit</p>
+                                div(class="form-group col-md-5")
+                                    input#inputTermFrom(name="termForm" class="form-control" type="text" placeholder="von (dd.mm.yyyy)")
+                                div(class="form-group col-md-5")
+                                    input#inputTermTo(name="termTo" class="form-control" type="text" placeholder="bis (dd.mm.yyyy)")
                         div(class='form-group col-md-12')
                             textarea#inputFurtherDetails(name="furtherDetails" class="form-control" type="text" rows="5" placeholder="Mehr informationen")
                         div(class="form-group col-md-12")
@@ -89,27 +102,37 @@ html(lang="de")
                             input#inputSrc(name="src" class="form-control" type="text" placeholder="link to the image source")
                         div(class="form-group col-md-12")
                             input#inputCaption(name="caption" class="form-control" type="text" placeholder="caption of the image")
-                    h5(class="mb-3 font-weight-bold") Contact
+                    h5(class="mb-3 font-weight-bold") Kontakt
                     div(class='form-row')
-                        div(class="form-group col-md-4")
-                            input#inputContactFirstname(name="contactFirstname" class="form-control" type="text" placeholder="contact firstname")
-                        div(class="form-group col-md-4")
-                            input#inputContactLastname(name="contactLastname" class="form-control" type="text" placeholder="contact lastname")
-                        div(class="form-group col-md-4")
-                            input#inputContactEmail(name="contactEmail" class="form-control" type="email" placeholder="contact email")
-                        div(class="form-group col-md-4")
-                            input#inputLeaderFirstname(name="leaderFirstname" class="form-control" type="text" placeholder="leader firstname")
-                        div(class="form-group col-md-4")
-                            input#inputLeaderLastname(name="leaderLastname" class="form-control" type="text" placeholder="leader lastname")
-                        div(class="form-group col-md-4")
-                            input#inputLeaderEmail(name="leaderEmail" class="form-control" type="email" placeholder="leader email")
+                        div(class="form-group col-md-2")
+                            <p class="font-weight-normal">Ansprechpartner</p>
+                        div(class="form-group col-md-5")
+                            input#inputContactName(name="contactName" class="form-control" type="text" placeholder="Titel/Anrede Vorname Nachname")
+                        div(class="form-group col-md-5")
+                            input#inputContactEmail(name="contactEmail" class="form-control" type="email" placeholder="E-mail Adresse")
+                        div(class="form-group col-md-2")
+                            <p class="font-weight-normal">Projektleitung</p>
+                        div(class="form-group col-md-5")
+                            input#inputLeaderName(name="leaderName" class="form-control" type="text" placeholder="Titel/Anrede Vorname Nachname")
+                        div(class="form-group col-md-5")
+                            input#inputLeaderEmail(name="leaderEmail" class="form-control" type="email" placeholder="E-mail Adresse")
                     p <em><small>* Pflichtfeld</small></em>
                     input#submitBtn(type="submit", class="btn btn-outline-dark btn-block", value="Projekt Anlegen")
 
     // jQuery
     script(src="https://code.jquery.com/jquery-3.3.1.min.js")
     script(src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js", integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1", crossorigin="anonymous")
+    // jQuery UI - Datepicker
+    script(src="https://code.jquery.com/ui/1.12.1/jquery-ui.js")
+    script(src="/js/jquery-ui/i18n/datepicker-de.js")
+    //script(src="i18n/datepicker-de.js")
     // Bootstrap
     script(src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous")
     // Header
-    script(src="/js/headfootLogout.js")
\ No newline at end of file
+    script(src="/js/headfootLogout.js")
+    script.
+        $( function() {
+            $.datepicker.setDefaults( $.datepicker.regional["de"] );
+            $("#inputTermFrom").datepicker();
+            $("#inputTermTo").datepicker();
+        });
\ No newline at end of file
diff --git a/views/DE/mailinglists.pug b/views/DE/project/mailinglists.pug
similarity index 100%
rename from views/DE/mailinglists.pug
rename to views/DE/project/mailinglists.pug
diff --git a/views/EN/forgotPwd.pug b/views/EN/account/forgotPwd.pug
similarity index 100%
rename from views/EN/forgotPwd.pug
rename to views/EN/account/forgotPwd.pug
diff --git a/views/EN/home.pug b/views/EN/account/home.pug
similarity index 84%
rename from views/EN/home.pug
rename to views/EN/account/home.pug
index 050c1bf95537299dbeffb3fe7aa11d337547c4ae..d2f3875a5a831fde499fae7baddb5acfbd47e34d 100644
--- a/views/EN/home.pug
+++ b/views/EN/account/home.pug
@@ -32,11 +32,11 @@ html(lang="en")
         div(class="row")
             div(class="col-3")
                 h5
-                    span #{greeting}
+                    span #{user.firstname} #{user.lastname}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
-                    a(class="nav-link" href="#" aria-selected="true") #{i18n.__(Profile)}
-                    a(class="nav-link" href="/account/security" aria-selected="false") Security
-                    a(class="nav-link" href="/account/services" aria-selected="false") Services
+                    a(class="nav-link" href="/profile" aria-selected="true") Profile
+                    a(class="nav-link" href="/security" aria-selected="false") Security
+                    a(class="nav-link" href="/services" aria-selected="false") Services
             div(class="col-sm-9")
                 p content goes here
                 
diff --git a/views/EN/profile.pug b/views/EN/account/profile.pug
similarity index 96%
rename from views/EN/profile.pug
rename to views/EN/account/profile.pug
index d6edd221188c8fe39667cddba1c21006c5f5f292..47c1f7e8683e370e2fb368337c4fca5d419230fe 100644
--- a/views/EN/profile.pug
+++ b/views/EN/account/profile.pug
@@ -35,8 +35,8 @@ html(lang="en")
                     span #{user.firstname} #{user.lastname}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
                     a(class="nav-link" href="#" aria-selected="true") Profile
-                    a(class="nav-link" href="/account/security" aria-selected="false") Security
-                    a(class="nav-link" href="/account/services" aria-selected="false") Services
+                    a(class="nav-link" href="/security" aria-selected="false") Security
+                    a(class="nav-link" href="/services" aria-selected="false") Services
             div(class="col-sm-9")
                 if successes
                     for success in successes
diff --git a/views/EN/registration.pug b/views/EN/account/registration.pug
similarity index 100%
rename from views/EN/registration.pug
rename to views/EN/account/registration.pug
diff --git a/views/EN/reset.pug b/views/EN/account/reset.pug
similarity index 100%
rename from views/EN/reset.pug
rename to views/EN/account/reset.pug
diff --git a/views/EN/security.pug b/views/EN/account/security.pug
similarity index 96%
rename from views/EN/security.pug
rename to views/EN/account/security.pug
index cbe435cdbbd15f03a5f903899bc43ec3c59c035a..2a5c248ce1f9e98b429b52eb9261f322cd38fcf9 100644
--- a/views/EN/security.pug
+++ b/views/EN/account/security.pug
@@ -37,9 +37,9 @@ html(lang="en")
                 h5
                     span #{user.firstName} #{user.lastName}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
-                    a(class="nav-link" href="/account/profile" aria-selected="true") Profile
+                    a(class="nav-link" href="/profile" aria-selected="true") Profile
                     a(class="nav-link" href="#" aria-selected="false") Security
-                    a(class="nav-link" href="/account/services" aria-selected="false") Services
+                    a(class="nav-link" href="/services" aria-selected="false") Services
             div(class="col-sm-9")
                 if successes
                     for success in successes
diff --git a/views/EN/services.pug b/views/EN/account/services.pug
similarity index 94%
rename from views/EN/services.pug
rename to views/EN/account/services.pug
index a62efed6f811ce760acdae761f8a5addb50e2647..f095144beb05de603a741230ae857d11b543b3f9 100644
--- a/views/EN/services.pug
+++ b/views/EN/account/services.pug
@@ -34,8 +34,8 @@ html(lang="en")
                 h5
                     span #{user.firstName} #{user.lastName}
                 div(class="nav flex-column nav-pills", id="v-pills-tab", role="tablist", aria-orientation="vertical")
-                    a(class="nav-link" href="/account/profile" aria-selected="true") Profile
-                    a(class="nav-link" href="/account/security" aria-selected="false") Security
+                    a(class="nav-link" href="/profile" aria-selected="true") Profile
+                    a(class="nav-link" href="/security" aria-selected="false") Security
                     a(class="nav-link" href="#" aria-selected="false") Services
             div(class="col-sm-9")
                 if successes
diff --git a/views/EN/project/addProjectOverview.pug b/views/EN/project/addProjectOverview.pug
new file mode 100644
index 0000000000000000000000000000000000000000..7b40b54fc63b3d774caf8d0b8af272f4e3a554ce
--- /dev/null
+++ b/views/EN/project/addProjectOverview.pug
@@ -0,0 +1,115 @@
+doctype html
+html(lang="de")
+  head
+    title= "Add Project Overview"
+    meta(charset="UTF-8")
+    meta(name="viewport", content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no")
+    link(rel="stylesheet", type="text/css", href="https://transfer.hft-stuttgart.de/css/bootstrap/bootstrap.css")
+    link(rel="stylesheet", href="https://use.fontawesome.com/releases/v5.8.2/css/all.css", integrity="sha384-oS3vJWv+0UjzBfQzYUhtDYW+Pj2yciDJxpsK1OYPAYjqT085Qq/1cq5FLXAZQ7Ay", crossorigin="anonymous")
+    style.
+        .collapse {
+            display: none;
+        }
+        .collapse.in {
+            display: block;
+        }
+        .collapsing {
+            position: relative;
+            height: 0;
+            overflow: hidden;
+            -webkit-transition-timing-function: ease;
+            -o-transition-timing-function: ease;
+            transition-timing-function: ease;
+            -webkit-transition-duration: .35s;
+            -o-transition-duration: .35s;
+            transition-duration: .35s;
+            -webkit-transition-property: height,visibility;
+            -o-transition-property: height,visibility;
+            transition-property: height,visibility;
+        }
+        .warning {
+            color: red;
+            font-size: 11px;
+        }
+  body
+    div(class="container-fluid")
+        div(class="row")
+            div(class="col-md-6 offset-md-2")
+                h4(class="mb-3 font-weight-bold") Neues Projekt
+            div(class="col-md-6 offset-md-3")
+                if errors
+                    for error, i in errors
+                        div.alert.alert-danger.alert-dismissible.fade.show #{ error }
+                            a(class="close", href="#", data-dismiss="alert", aria-label="close") &times;
+                form(method="POST")
+                    div(class='form-row')
+                        div(class='form-group col-md-12')
+                            input#inputPname(name="pname" class="form-control" type="text" placeholder="human-readable short project name*" required)
+                        div(class="form-group col-md-12")
+                            input#inputTitle(name="title" class="form-control" type="text" placeholder="official title of the project*" required)
+                        div(class="form-group col-md-12")
+                            input#inputSummary(name="summary" class="form-control" type="text" placeholder="one line summary of the project")
+                        div(class="form-group col-md-12")
+                            input#inputCategory(name="category" class="form-control" type="text" placeholder="category of the project")
+                        div(class="form-group col-md-12")
+                            input#inputLogo(name="logo" class="form-control" type="text" placeholder="official logo of the project")
+                        div(class="form-group col-md-12")
+                            div(class="input-group mb-3")
+                                input#inputGitlabURL(name="gitlabURL" type="text" class="form-control" placeholder="M4_LAB GitLab Project URL, z.B. https://transfer.hft-stuttgart.de/gitlab/username/projectname")
+                                div(class="input-group-prepend")
+                                    div(class="input-group-text")
+                                        input#inputWiki(name="wiki" type="checkbox")
+                                        | &nbsp; Wiki
+                                
+                    h5(class="mb-3 font-weight-bold") Content
+                    div(class='form-row')
+                        div(class='form-group col-md-12')
+                            textarea#inputOverview(name="overview" class="form-control" type="text" rows="5" placeholder="overview")
+                        div(class="form-group col-md-12")
+                            textarea#inputQuestion(name="question" class="form-control" type="text" rows="5" placeholder="question")
+                        div(class='form-group col-md-12')
+                            textarea#inputApproach(name="approach" class="form-control" type="text" rows="5" placeholder="approach")
+                        div(class="form-group col-md-12")
+                            textarea#inputResult(name="result" class="form-control" type="text" rows="5" placeholder="result")
+                        div(class="form-group col-md-12")
+                            input#inputKeywords(name="keywords" class="form-control" type="text" placeholder="keywords")
+                    h5(class="mb-3 font-weight-bold") Info
+                    div(class='form-row')
+                        div(class='form-group col-md-12')
+                            textarea#inputAnnouncement(name="announcement" class="form-control" type="text" rows="5" placeholder="Ausschreibung")
+                        div(class="form-group col-md-12")
+                            input#inputTerm(name="term" class="form-control" type="text" placeholder="Laufzeit")
+                        div(class='form-group col-md-12')
+                            textarea#inputFurtherDetails(name="furtherDetails" class="form-control" type="text" rows="5" placeholder="Mehr informationen")
+                        div(class="form-group col-md-12")
+                            input#inputWebsite(name="website" class="form-control" type="text" placeholder="website")
+                    h5(class="mb-3 font-weight-bold") Images
+                    div(class='form-row')
+                        div(class="form-group col-md-12")
+                            input#inputSrc(name="src" class="form-control" type="text" placeholder="link to the image source")
+                        div(class="form-group col-md-12")
+                            input#inputCaption(name="caption" class="form-control" type="text" placeholder="caption of the image")
+                    h5(class="mb-3 font-weight-bold") Contact
+                    div(class='form-row')
+                        div(class="form-group col-md-4")
+                            input#inputContactFirstname(name="contactFirstname" class="form-control" type="text" placeholder="contact firstname")
+                        div(class="form-group col-md-4")
+                            input#inputContactLastname(name="contactLastname" class="form-control" type="text" placeholder="contact lastname")
+                        div(class="form-group col-md-4")
+                            input#inputContactEmail(name="contactEmail" class="form-control" type="email" placeholder="contact email")
+                        div(class="form-group col-md-4")
+                            input#inputLeaderFirstname(name="leaderFirstname" class="form-control" type="text" placeholder="leader firstname")
+                        div(class="form-group col-md-4")
+                            input#inputLeaderLastname(name="leaderLastname" class="form-control" type="text" placeholder="leader lastname")
+                        div(class="form-group col-md-4")
+                            input#inputLeaderEmail(name="leaderEmail" class="form-control" type="email" placeholder="leader email")
+                    p <em><small>* Pflichtfeld</small></em>
+                    input#submitBtn(type="submit", class="btn btn-outline-dark btn-block", value="Projekt Anlegen")
+
+    // jQuery
+    script(src="https://code.jquery.com/jquery-3.3.1.min.js")
+    script(src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js", integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1", crossorigin="anonymous")
+    // Bootstrap
+    script(src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous")
+    // Header
+    script(src="/js/headfootLogout.js")
\ No newline at end of file
diff --git a/views/EN/mailinglists.pug b/views/EN/project/mailinglists.pug
similarity index 99%
rename from views/EN/mailinglists.pug
rename to views/EN/project/mailinglists.pug
index 677d0f32d9ce58ecb0168f48ea42a1eab047dac9..f2ddbd8b8e7eb89a85e4dc16310b96acf74e06e3 100644
--- a/views/EN/mailinglists.pug
+++ b/views/EN/project/mailinglists.pug
@@ -1,4 +1,4 @@
-html(lang="de")
+html(lang="en")
   head
     title= "Mailinglisten"
     meta(charset="UTF-8")
diff --git a/views/EN/project/projects.pug b/views/EN/project/projects.pug
new file mode 100644
index 0000000000000000000000000000000000000000..56f65c10de4655b786ec93a865b6e57adc5f5e10
--- /dev/null
+++ b/views/EN/project/projects.pug
@@ -0,0 +1,117 @@
+doctype html
+html(lang="de")
+  head
+    title= "Project List"
+    meta(charset="UTF-8")
+    meta(name="viewport", content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no")
+    link(rel="stylesheet", type="text/css", href="https://transfer.hft-stuttgart.de/css/bootstrap/bootstrap.css")
+    link(rel="stylesheet", href="https://use.fontawesome.com/releases/v5.8.2/css/all.css", integrity="sha384-oS3vJWv+0UjzBfQzYUhtDYW+Pj2yciDJxpsK1OYPAYjqT085Qq/1cq5FLXAZQ7Ay", crossorigin="anonymous")
+    style.
+        .collapse {
+            display: none;
+        }
+        .collapse.in {
+            display: block;
+        }
+        .collapsing {
+            position: relative;
+            height: 0;
+            overflow: hidden;
+            -webkit-transition-timing-function: ease;
+            -o-transition-timing-function: ease;
+            transition-timing-function: ease;
+            -webkit-transition-duration: .35s;
+            -o-transition-duration: .35s;
+            transition-duration: .35s;
+            -webkit-transition-property: height,visibility;
+            -o-transition-property: height,visibility;
+            transition-property: height,visibility;
+        }
+        .warning {
+            color: red;
+            font-size: 11px;
+        }
+  body
+    div(class="container-fluid")
+        if isUserAuthenticated
+            p Auf dieser Seite sehen Sie die Liste der über dieses Portal veröffentlichten Projekte.
+            a(href="/addprojectoverview" class="btn btn-primary" role="button" aria-pressed="true") Projekt anlegen
+        else
+            p Auf dieser Seite sehen Sie die Liste der über dieses Portal veröffentlichten Projekte.
+            p Möchten Sie ein neues Projekt anlegen, dann klicken Sie bitte auf #[a(href="/addprojectoverview") Anmelden und Projekt anlegen]
+        if successes
+            for success in successes
+                div.alert.alert-success.alert-dismissible #{ success }
+                    a(class="close", href="#", data-dismiss="alert", aria-label="close") &times;
+        // Active projects
+        h3(class="mb-3 font-weight-bold") Aktive Projekte
+        table(class="table table-striped")
+            thead
+                tr
+                    th Logo
+                    th Akronym
+                    th Title
+                    th Kernziel
+                    th Kategorie
+                    th Ansprechpartner
+                    th Projektinhalte
+            tbody
+                for item in active
+                    tr
+                        //td #{item.status}
+                        td
+                            img(src=item.logo, width="40", height="40")
+                        td #{item.akronym}
+                        td #{item.title}
+                        td #{item.summary}
+                        td #{item.category}
+                        td #[a(class="nav-link", href="mailto:"+ item.cp) #{item.cp}]
+                        td #[a(class="nav-link", href="https://m4lab.hft-stuttgart.de/projectoverview?projectID="+item.id) Zur Projektübersicht]
+                            if item.gitlab
+                                a(class="nav-link", href=item.gitlab+"/tree/master") Projektdateien
+                                a(class="nav-link", href=item.gitlab+"/wikis/home") Projektwiki
+                            else
+                                a(class="nav-link", href="#") Projektdateien
+                                a(class="nav-link", href="#") Projektwiki
+        br
+        // Non-active projects
+        h3(class="mb-3 font-weight-bold") Abgeschlossene Projekte
+        table(class="table table-striped")
+            thead
+                tr
+                    th Logo
+                    th Akronym
+                    th Title
+                    th Kernziel
+                    th Kategorie
+                    th Ansprechpartner
+                    th Projektinhalte
+            tbody
+                for item in nonActive
+                    tr
+                        //td #{item.status}
+                        td
+                            img(src=item.logo, width="40", height="40")
+                        td #{item.akronym}
+                        td #{item.title}
+                        td #{item.summary}
+                        td #{item.category}
+                        td #[a(class="nav-link", href="mailto:"+ item.cp) #{item.cp}]
+                        td #[a(class="nav-link", href="https://m4lab.hft-stuttgart.de/projectoverview?projectID="+item.id) Zur Projektübersicht]
+                            if item.gitlab
+                                a(class="nav-link", href="https://transfer.hft-stuttgart.de/gitlab/"+item.gitlab+"/tree/master") Projektdateien
+                                a(class="nav-link", href="https://transfer.hft-stuttgart.de/gitlab/"+item.gitlab+"/wikis/home") Projektwiki
+                            else
+                                a(class="nav-link", href="#") Projektdateien
+                                a(class="nav-link", href="#") Projektwiki
+
+    // jQuery
+    script(src="https://code.jquery.com/jquery-3.3.1.min.js")
+    script(src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js", integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1", crossorigin="anonymous")
+    // Bootstrap
+    script(src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous")
+    // Header
+    if isUserAuthenticated
+        script(src="/js/headfootLogout.js")
+    else
+        script(src="https://transfer.hft-stuttgart.de/js/headfoot.js")
\ No newline at end of file