diff --git a/.nojekyll b/.nojekyll
new file mode 100644
index 0000000..e69de29
diff --git a/css/form.css b/css/form.css
new file mode 100644
index 0000000..cca0eb5
--- /dev/null
+++ b/css/form.css
@@ -0,0 +1,26 @@
+form {
+ width: 80%;
+ margin: 0 auto;
+}
+label,
+input[type="text"] {
+ display: inline-block;
+}
+h2 {
+ width: 30%;
+ text-align: right;
+}
+label {
+ width: 30%;
+ text-align: right;
+}
+label + input[type="text"] {
+ width: 30%;
+ margin: 0 30% 0 4%;
+}
+label + .buttons {
+ width: 30%;
+ display: inline-block;
+ text-align: right;
+ margin: 0 30% 0 4%;
+}
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..d45eed7
--- /dev/null
+++ b/index.html
@@ -0,0 +1,120 @@
+
+
+
+ Lab Data Config Form
+
+
+
+
+
+
+
+
+
+
+
diff --git a/js/submit.js b/js/submit.js
new file mode 100644
index 0000000..90ede7a
--- /dev/null
+++ b/js/submit.js
@@ -0,0 +1,58 @@
+// Submit form.
+function submit_form()
+{
+ var data_elements = document.querySelectorAll("#form_id input[type=text], input[type=number]");
+ var data_obj = {};
+ for (var i = 0; i < data_elements.length; i++)
+ {
+ value = data_elements[i].value;
+ if (data_elements[i].type == "number")
+ {
+ if (data_elements[i].step == "1")
+ {
+ value = parseInt(value);
+ }
+ else
+ {
+ value = parseFloat(value);
+ }
+ }
+ data_obj[data_elements[i].name] = value;
+ }
+ if (validate_data(data_obj)) // Calling validation function
+ {
+ var textToSave = JSON.stringify(data_obj, null, 4);
+ var textToSaveAsBlob = new Blob([textToSave], {type:"text/plain"});
+ var textToSaveAsURL = window.URL.createObjectURL(textToSaveAsBlob);
+ var fileNameToSaveAs = document.getElementById("inputFileNameToSaveAs").value;
+
+ var downloadLink = document.createElement("a");
+ downloadLink.download = fileNameToSaveAs;
+ downloadLink.innerHTML = "Download File";
+ downloadLink.href = textToSaveAsURL;
+ downloadLink.onclick = destroyClickedElement;
+ downloadLink.style.display = "none";
+ document.body.appendChild(downloadLink);
+
+ downloadLink.click();
+ }
+}
+
+function destroyClickedElement(event)
+{
+ document.body.removeChild(event.target);
+}
+
+// Data validation function.
+function validate_data(a_data_obj)
+{
+ for (var key in a_data_obj.length)
+ {
+ if (a_data_obj[key] === '')
+ {
+ alert("Please fill all fields...!!!!!!");
+ }
+ }
+
+ return true;
+}