diff --git dreditor.user.js dreditor.user.js
index ad20a42..99e7a3d 100644
--- dreditor.user.js
+++ dreditor.user.js
@@ -68,34 +68,34 @@ jQuery.fn.debug = jQuery.debug;
 var sortOrder;
 
 if ( document.documentElement.compareDocumentPosition ) {
-	sortOrder = function( a, b ) {
-		var ret = a.compareDocumentPosition(b) & 4 ? -1 : a === b ? 0 : 1;
-		if ( ret === 0 ) {
-			hasDuplicate = true;
-		}
-		return ret;
-	};
+  sortOrder = function( a, b ) {
+    var ret = a.compareDocumentPosition(b) & 4 ? -1 : a === b ? 0 : 1;
+    if ( ret === 0 ) {
+      hasDuplicate = true;
+    }
+    return ret;
+  };
 } else if ( "sourceIndex" in document.documentElement ) {
-	sortOrder = function( a, b ) {
-		var ret = a.sourceIndex - b.sourceIndex;
-		if ( ret === 0 ) {
-			hasDuplicate = true;
-		}
-		return ret;
-	};
+  sortOrder = function( a, b ) {
+    var ret = a.sourceIndex - b.sourceIndex;
+    if ( ret === 0 ) {
+      hasDuplicate = true;
+    }
+    return ret;
+  };
 } else if ( document.createRange ) {
-	sortOrder = function( a, b ) {
-		var aRange = a.ownerDocument.createRange(), bRange = b.ownerDocument.createRange();
-		aRange.selectNode(a);
-		aRange.collapse(true);
-		bRange.selectNode(b);
-		bRange.collapse(true);
-		var ret = aRange.compareBoundaryPoints(Range.START_TO_END, bRange);
-		if ( ret === 0 ) {
-			hasDuplicate = true;
-		}
-		return ret;
-	};
+  sortOrder = function( a, b ) {
+    var aRange = a.ownerDocument.createRange(), bRange = b.ownerDocument.createRange();
+    aRange.selectNode(a);
+    aRange.collapse(true);
+    bRange.selectNode(b);
+    bRange.collapse(true);
+    var ret = aRange.compareBoundaryPoints(Range.START_TO_END, bRange);
+    if ( ret === 0 ) {
+      hasDuplicate = true;
+    }
+    return ret;
+  };
 }
 // end sortOrder
 
@@ -146,6 +146,20 @@ if (typeof $.fn.once == 'undefined') {
  * @} End of "defgroup jquery_extensions".
  */
 
+/**
+ * Use HTML5 localStorage.getItem() if possible
+ */
+var dreditorGetValue: function (key, def) {
+  return (!!window.localStorage) ? (window.localStorage.getItem(key) || def) : GM_getValue(key, def);
+},
+  
+/**
+ * Use HTML5 localStorage.setItem if possible
+ */
+var dreditorSetValue: function (key, value) {
+  return (!!window.localStorage) ? window.localStorage.setItem(key, value) : GM_setValue(key, value);
+},
+
 Drupal.dreditor = {
   behaviors: {},
 
@@ -1266,9 +1280,9 @@ Drupal.behaviors.dreditorIssuesFormReset = function (context) {
  *
  * @see Drupal.dreditor.confInit()
  */
-Drupal.dreditor.conf = GM_getValue('dreditor.conf', '');
+Drupal.dreditor.conf = dreditorGetValue('dreditor.conf', '');
 window.addEventListener('unload', function () {
-  GM_setValue('dreditor.conf', $.param(Drupal.dreditor.conf));
+  dreditorSetValue('dreditor.conf', $.param(Drupal.dreditor.conf));
 }, true);
 
 // @todo Behaviors of Dreditor are not invoked with regular behaviors.
@@ -1324,14 +1338,14 @@ dreditorUpdateCheck = function () {
   if (typeof GM_xmlhttpRequest != 'function') {
     return;
   }
-  var version = GM_getValue('version', '');
-  var lastChecked = GM_getValue('update.last', 0);
+  var version = dreditorGetValue('version', '');
+  var lastChecked = dreditorGetValue('update.last', 0);
   var now = parseInt(new Date() / 1000, 10);
   // Check every 3 days.
   var interval = 60 * 60 * 24 * 3;
   if (lastChecked - now < -interval) {
     // Whatever happens to this request, remember that we tried.
-    GM_setValue('update.last', now);
+    dreditorSetValue('update.last', now);
     GM_xmlhttpRequest({
       method: 'GET',
       url: 'http://drupalcode.org/viewvc/drupal/contributions/modules/dreditor/CHANGELOG.txt?view=co',
@@ -1345,7 +1359,7 @@ dreditorUpdateCheck = function () {
           if (doUpdate) {
             window.open('http://drupal.org/project/dreditor', 'dreditor');
             // Let's just assume that we DID update. ;)
-            GM_setValue('version', newversion);
+            dreditorSetValue('version', newversion);
           }
         }
       }
diff --git manifest.json manifest.json
new file mode 100644
index 0000000..ec65111
--- /dev/null
+++ manifest.json
@@ -0,0 +1,16 @@
+{
+  "name": "Dreditor",
+  "version": "0.1",
+
+  "description": "Awesomeness for drupal.org.",
+
+  "content_scripts": [{
+    "matches": [
+      "http://drupal.org/node/*",
+      "http://drupal.org/comment/reply/*",
+      "http://drupal.org/project/*",
+      "http://drupal.org/node/add/project-issue/*"
+    ],
+    "js": ["dreditor.user.js"]
+  }]
+}
