diff --git a/browserid/static/relay/scripts/build.html b/browserid/static/relay/scripts/build.html
new file mode 100644
index 0000000000000000000000000000000000000000..e11cf9d1ed7a8053f539e4149ddbeafa617b6680
--- /dev/null
+++ b/browserid/static/relay/scripts/build.html
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
+	"http://www.w3.org/TR/html4/strict.dtd">
+<html lang="en">
+	<head>
+		<title>relay Build Page</title>
+	</head>
+	<body>
+	    <h1>relay Build Page</h1>
+		<p>This is a dummy page that loads your app so steal can
+		   get all the files.  
+		</p>
+		<p>If you built your app
+		   to depend on HTML in the page before DOMContent loaded or 
+		   onload, you can add the HTML here, or you can change the
+		   build.js script to point to a better html file.
+		</p>
+		<script type='text/javascript' 
+	    src='../../steal/steal.js?relay'>	 
+        </script>
+	</body>
+</html>
diff --git a/browserid/static/relay/scripts/build.js b/browserid/static/relay/scripts/build.js
new file mode 100644
index 0000000000000000000000000000000000000000..7b6fa82d15d2f7aae83787e7a579a9d161b32bbc
--- /dev/null
+++ b/browserid/static/relay/scripts/build.js
@@ -0,0 +1,8 @@
+
+load("steal/rhino/steal.js");
+steal.plugins('steal/build','steal/build/scripts','steal/build/styles',function() {
+	steal.build('../static/relay/scripts/build.html',{
+        to: '../static/relay',
+        compressor: 'concatOnly'
+    });
+});
diff --git a/browserid/static/relay/scripts/clean.js b/browserid/static/relay/scripts/clean.js
new file mode 100644
index 0000000000000000000000000000000000000000..fc1cb75b3f401569dedb1754d3259831dbec0ad3
--- /dev/null
+++ b/browserid/static/relay/scripts/clean.js
@@ -0,0 +1,17 @@
+//steal/js /web/browserid/browserid/static/dialog/dialog/scripts/compress.js
+
+load("steal/rhino/steal.js");
+steal.plugins('steal/clean',function(){
+	steal.clean('/web/browserid/browserid/static/relay/relay.html',{
+		indent_size: 1, 
+		indent_char: '\t', 
+		jslint : false,
+		ignore: /jquery\/jquery.js/,
+		predefined: {
+			steal: true, 
+			jQuery: true, 
+			$ : true,
+			window : true
+			}
+	});
+});
diff --git a/browserid/static/relay/scripts/docs.js b/browserid/static/relay/scripts/docs.js
new file mode 100644
index 0000000000000000000000000000000000000000..e9f61d1bd4dbfb1eb8f81555d12a0e10b004000b
--- /dev/null
+++ b/browserid/static/relay/scripts/docs.js
@@ -0,0 +1,6 @@
+//js /web/browserid/browserid/static/dialog/dialog/scripts/doc.js
+
+load('steal/rhino/steal.js');
+steal.plugins("documentjs").then(function(){
+	DocumentJS('/web/browserid/browserid/static/dialog/dialog/dialog.html');
+});
\ No newline at end of file