diff --git a/package.json b/package.json
index 329b77b..098c9c3 100644
--- a/package.json
+++ b/package.json
@@ -5,6 +5,7 @@
     "body-parser": "^1.12.4",
     "express": "^4.12.4",
     "express-hbs": "^0.8.4",
+    "handlebars-form-helpers": "^0.1.3",
     "moment-timezone": "^0.4.0",
     "nodemailer": "^1.3.4",
     "sqlite3": "^3.0.8"
diff --git a/server.js b/server.js
index cae306f..764c933 100644
--- a/server.js
+++ b/server.js
@@ -1,5 +1,6 @@
 var express = require("express");
 var hbs = require('express-hbs');
+require('handlebars-form-helpers').register(hbs.handlebars);
 var nodemailer = require('nodemailer');
 var moment = require('moment-timezone');
 var fs = require("fs");
@@ -48,7 +49,9 @@ db.serialize(function() {
     }
 });
 
-app.use(bodyParser.json());
+app.use(bodyParser.json());                             // Needed for JSON POST requests from Particle Cores.
+app.use(bodyParser.urlencoded({ extended: false }));    // Needed for web POST requests from edit form.
+
 // Use `.hbs` for extensions and find partials in `views/partials`.
 app.engine('hbs', hbs.express4({
     partialsDir: __dirname + '/views/partials'
@@ -80,6 +83,52 @@ app.get('/', function(req, res){
     });
 });
 
+app.get('/core/edit/:id', function(req, res){
+    var d = new Date();
+    var coreId = req.params.id;
+    console.log("GET /core/edit/" + coreId + ", " + JSON.stringify(d, 4));
+
+    var rows = {};
+    res.render('core-edit', {cores: rows}, function(err, html) {
+        if(err !== null) {
+            console.log(err);
+        } else {
+            res.send(html);
+        }
+    });
+});
+
+app.post('/core/edit/:id', function(req, res){
+    var d = new Date();
+    var coreId = req.params.id;
+    console.log("POST /core/edit/" + coreId + "body: " + JSON.stringify(req.body) + ", " + JSON.stringify(d, 4));
+    // Parse req.body.
+    if (!req.body) {
+        return res.sendStatus(400);
+    } else {
+        // Update DB
+        if (req.body.deviceName !== "") {
+            var stmt = db.prepare("UPDATE Alerts SET coreName = ? WHERE coreId = ?");
+            stmt.run(
+                req.body.deviceName,
+                coreId
+            );
+            stmt.finalize();
+        }
+
+        if (req.body.locationDesc !== "") {
+            var stmt = db.prepare("UPDATE Alerts SET locationDesc = ? WHERE coreId = ?");
+            stmt.run(
+                req.body.locationDesc,
+                coreId
+            );
+            stmt.finalize();
+        }
+        
+        res.sendStatus(200);  // TODO, change this to return device index page maybe??? at least this is better than hanging on POST.
+    }
+});
+
 app.get('/core/:id', function(req, res){
     //res.sendFile("/usr/src/app/index.html");
     //fs.createReadStream('./log.log').pipe(res);
diff --git a/views/index.hbs b/views/index.hbs
index 1bcc3b2..9e76d1f 100644
--- a/views/index.hbs
+++ b/views/index.hbs
@@ -14,15 +14,23 @@
         {{#each cores}}
             <tr>
                 <td>
-                    <a href="https://particle.kaplon.us/core/{{this.coreId}}">
-                        {{#if this.coreName}}
-                            {{this.coreName}}                        
-                        {{else}}
-                            {{this.coreId}}
-                        {{/if}}
-                    </a>
+                    {{#if this.coreName}}
+                        <a href="https://particle.kaplon.us/core/{{this.coreId}}">{{this.coreName}}</a>
+                    {{else}}
+                        <a href="https://particle.kaplon.us/core/{{this.coreId}}"># No Name #</a>
+                        </br>
+                        <a href="https://particle.kaplon.us/core/edit/{{this.coreId}}" class="btn btn-primary">Edit Details</a>
+                    {{/if}}
+                </td>
+                <td>
+                    {{#if this.locationDesc}}
+                        {{this.locationDesc}}
+                    {{else}}
+                        # No Location #
+                        </br>
+                        <a href="https://particle.kaplon.us/core/edit/{{this.coreId}}" class="btn btn-primary">Edit Details</a>
+                    {{/if}}
                 </td>
-                <td>{{this.locationDesc}}</td>
                 <td>{{this.MaxPub}}</td>
                 <td>{{this.MaxStatus}}</td>
             </tr>