diff --git a/client/views/index.ejs b/client/views/index.ejs
index 0533726845cdaf6d8d23914f534e7036d933b9c5..38a196e5edcfa660e4209d6546ced4ab6237e984 100644
--- a/client/views/index.ejs
+++ b/client/views/index.ejs
@@ -28,7 +28,7 @@
                     <input type="search" placeholder="O que você procura?" name="query"
                         class="search-bar two-thirds" autofocus required>
                     <!-- Value do submit foi retirado daqui: http://fortawesome.github.io/Font-Awesome/cheatsheet/-->
-                    <input type="submit" class="icon-button dark" value="&#xf002;">
+                    <input type="submit" class="icon-button dark" value="&#xf002;" >
                 </form>
             </section>
             <p><a id="upload" class="upload-link" href="/upload">Faça o upload de uma prova ou trabalho!</a></p>
diff --git a/client/views/search.ejs b/client/views/search.ejs
new file mode 100644
index 0000000000000000000000000000000000000000..38eec1d48e02af6eb0122a02e9dfcfa88efe87a0
--- /dev/null
+++ b/client/views/search.ejs
@@ -0,0 +1,8 @@
+<html>
+<% include partials/head %>
+<body>
+    <% include partials/basic-header %>
+    <p> <%= b %> </p>
+    <% include partials/footer %>
+</body>
+</html>
\ No newline at end of file
diff --git a/data/local.0 b/data/local.0
new file mode 100644
index 0000000000000000000000000000000000000000..cf3958a4c1ab62dae1876bb5a95b63ec63248631
Binary files /dev/null and b/data/local.0 differ
diff --git a/data/local.ns b/data/local.ns
new file mode 100644
index 0000000000000000000000000000000000000000..c19a3318ed3b65f090a369d436aec09f5d6477d9
Binary files /dev/null and b/data/local.ns differ
diff --git a/data/mongod.lock b/data/mongod.lock
new file mode 100755
index 0000000000000000000000000000000000000000..b4732da722ed5c08304360e7d40b064fd7513204
--- /dev/null
+++ b/data/mongod.lock
@@ -0,0 +1 @@
+3220
diff --git a/data/porto.0 b/data/porto.0
new file mode 100644
index 0000000000000000000000000000000000000000..90c87d200220cd0203b6667f4f41132e914696b3
Binary files /dev/null and b/data/porto.0 differ
diff --git a/data/porto.ns b/data/porto.ns
new file mode 100644
index 0000000000000000000000000000000000000000..28d7774736bdf4e95dfa09744c428d09f4cba7d5
Binary files /dev/null and b/data/porto.ns differ
diff --git a/libs/app.js b/libs/app.js
index b1857d45767b9d478e04562d5dadff17f5e9e8fe..0efbda1ec4bc9a715d73d0229a2871e46096334f 100644
--- a/libs/app.js
+++ b/libs/app.js
@@ -23,6 +23,7 @@ var materias = require('./routes/admin/materias')
 var professores = require('./routes/admin/professores')
 var usuarios = require('./routes/admin/usuarios')
 
+
 var api = require('./routes/api/api')
 var usuariosRest = require('./routes/api/usuarios')
 var materiasRest = require('./routes/api/materias')
diff --git a/libs/auth/auth.js b/libs/auth/auth.js
index 63b1886a406aeac5280a08117b1d4baf01e48f1a..b1ecaeccee9996d1166d51a2e531737c69b443ca 100644
--- a/libs/auth/auth.js
+++ b/libs/auth/auth.js
@@ -86,6 +86,40 @@ passport.deserializeUser(function(id, done) {
     })
 })
 
+passport.use('local-search', new LocalStrategy({
+    passReqToCallback: true
+}, function(req, username, password, done) {
+    process.nextTick(function() {
+        var nome = req.body.search
+        
+        Usuario.findOne({'username': username}, function(err, user) {
+            if(err) {
+                return done(err)
+            }
+
+            if(user) {
+                return done(null, false, req.flash('signupMessage', 'Este usuario já existe'))
+            } else {
+                var usuario = new Usuario()
+                console.log(req.body)
+                usuario.nome = req.body.nome
+                usuario.email = req.body.email
+                usuario.username = username
+                usuario.password = password
+
+                usuario.save(function(err) {
+                    if(err) {
+                        console.log('Internal error: %s', err.message)
+                        return done(null, false, req.flash('signupMessage', 'Erro ao salvar o usuário: ' + err.message))
+                    }
+                    email.sendVerifyToUser(usuario, req.protocol, req.get('host'))
+                    return done(null, usuario)
+                })
+            }
+        })
+    })
+}))
+
 passport.use('local-signup', new LocalStrategy({
     passReqToCallback: true
 }, function(req, username, password, done) {
diff --git a/libs/routes/routes.js b/libs/routes/routes.js
index a732e7021fc4d4e1f49843b13270e1c2fb8bf184..038fd2385a63edf074cc2b3601dab05b52c60928 100644
--- a/libs/routes/routes.js
+++ b/libs/routes/routes.js
@@ -61,6 +61,16 @@ router.post('/login', passport.authenticate('local-login', {
     return res.redirect('/')
 })
 
+router.get('/search', function(req, res) {
+    res.render('search', {message: req.flash('loginMessage')})
+})
+
+router.post('/search', function(req, res) {
+    var bus = req.body.query
+    console.log(bus);
+    res.render('search', {b: bus})
+})
+
 router.get('/logout', function(req, res) {
     req.logout()
     res.redirect('/')
diff --git a/mongod b/mongod
new file mode 100755
index 0000000000000000000000000000000000000000..cee4bf61df0924c7e0210d0f5b770c51c5d3fda8
--- /dev/null
+++ b/mongod
@@ -0,0 +1 @@
+mongod --bind_ip=$IP --dbpath=data --nojournal --rest "$@"