diff --git a/README.md b/README.md
index 891922c..187800e 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,46 @@
-# Bluecrypt™ Keypairs
+# Bluecrypt™ [Keypairs](https://git.rootprojects.org/root/bluecrypt-keypairs.js) | A [Root](https://rootprojects.org) Project
A port of [keypairs.js](https://git.coolaj86.com/coolaj86/keypairs.js) to the browser.
-* Keypairs
- * Eckles (ECDSA)
- * Rasha (RSA)
- * X509
- * ASN1
+# Features (port in-progress)
+
+ * [x] Keypair generation and encoding
+ * [x] RSA
+ * [x] ECDSA (P-256, P-384)
+ * [x] JWK-to-PEM
+ * [ ] JWK-to-SSH
+ * [ ] PEM-to-JWK
+ * [ ] SSH-to-JWK
+ * [x] ASN1, X509, PEM, DER
+ * [x] SHA256 JWK Thumbprints
+ * [x] Sign JWS
+ * [ ] Create JWTs
+ * [ ] JWK fetching. See [Keyfetch.js](https://npmjs.com/packages/keyfetch/)
+ * [ ] OIDC
+ * [ ] Auth0
+ * [ ] CLI (ee [keypairs-cli](https://npmjs.com/packages/keypairs-cli/))
+ * [ ] Node.js (ee [keypairs.js](https://npmjs.com/packages/keypairs.js))
+ * [ ] [CSR.js](https://git.rootprojects.org/root/bluecrypt-csr.js)
+ * [ ] [ACME.js](https://git.rootprojects.org/root/bluecrypt-acme.js) (Let's Encyrpt)
+
+# Online Demos
+
+* Bluecrypt Keypairs.js Demo
+
+# QuickStart
+
+`bluecrypt-keypairs.js`
+```html
+
+```
+
+`bluecrypt-keypairs.min.js`
+```html
+
+```
+
+You can see `index.html` and `app.js` in the repo for full example usage.
+
+# Documentation
+
+See [keypairs.js](https://git.coolaj86.com/coolaj86/keypairs.js) for documentation.
diff --git a/app.js b/app.js
index 390a218..edb3d93 100644
--- a/app.js
+++ b/app.js
@@ -17,11 +17,6 @@
return Array.prototype.slice.call(document.querySelectorAll(sel));
}
- function checkTos(tos) {
- console.log("TODO checkbox for agree to terms");
- return tos;
- }
-
function run() {
console.log('hello');
@@ -113,8 +108,6 @@
$$('button').map(function ($el) { $el.disabled = false; });
$('.js-toc-jwk').hidden = false;
- $('.js-create-account').hidden = false;
- $('.js-create-csr').hidden = false;
});
});
diff --git a/bundle.sh b/bundle.sh
new file mode 100755
index 0000000..0bc43f1
--- /dev/null
+++ b/bundle.sh
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+# Development Version
+cat > bluecrypt-keypairs.js << EOF
+// Copyright 2015-2019 AJ ONeal. All rights reserved
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+;
+EOF
+cat ./lib/encoding.js \
+ ./lib/asn1-packer.js \
+ ./lib/x509.js \
+ ./lib/ecdsa.js \
+ ./lib/rsa.js \
+ ./lib/keypairs.js \
+ >> bluecrypt-keypairs.js
+
+# Gzipped
+cat > bluecrypt-keypairs.min.js << EOF
+// Copyright 2015-2019 AJ ONeal. All rights reserved
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+;
+EOF
+uglifyjs bluecrypt-keypairs.js >> bluecrypt-keypairs.min.js
+gzip -f bluecrypt-keypairs.min.js
+
+# Minified Gzipped
+cat > bluecrypt-keypairs.min.js << EOF
+// Copyright 2015-2019 AJ ONeal. All rights reserved
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+;
+EOF
+uglifyjs bluecrypt-keypairs.js >> bluecrypt-keypairs.min.js
+
+rsync -av ./ root@beta.therootcompany.com:~/beta.therootcompany.com/keypairs/
+rsync -av ./ root@beta.rootprojects.org:~/beta.rootprojects.org/keypairs/
+rsync -av ./ ubuntu@rootprojects.org:/srv/www/rootprojects.org/keypairs/
diff --git a/index.html b/index.html
index 1d51fd3..a9cf566 100644
--- a/index.html
+++ b/index.html
@@ -15,12 +15,20 @@
white-space: -o-pre-wrap; /* Opera 7 */
word-wrap: break-word; /* IE */
}
-
-
-
- BlueCrypt for the Browser
- BlueCrypt is universal crypto for the browser. It's lightweight, fast, and based on native webcrypto.
- This means it's easy-to-use crypto in kilobytes, not megabytes.
+
+
+
+ @bluecrypt/keypairs: Universal keygen & signing for browsers
+ Keypairs.js is easy-to-use browser crypto in kilobytes, not megabytes.
+
+ It's a modern alternative to larger, legacy libraries like PKI.js and rsasign,
+ with more universal support for keygen, signing, and verification (including PKI, X509, JOSE, JWS, and JWT)
+ at a fraction of the cost.
+
+ This is intended to be explored with your JavaScript console open.
+ <script src="https://rootprojects.org/keypairs/bluecrypt-keypairs.js"></script>
+ <script src="https://rootprojects.org/keypairs/bluecrypt-keypairs.min.js"></script>
+ Documentation
Keypair Generation