diff --git a/node_modules/material-design-lite/dist/components/snackbar/demo.html b/node_modules/material-design-lite/dist/components/snackbar/demo.html
new file mode 100644
index 0000000..75de557
--- /dev/null
+++ b/node_modules/material-design-lite/dist/components/snackbar/demo.html
@@ -0,0 +1,88 @@
+<!doctype html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="description" content="A front-end template that helps you build fast, modern mobile web apps.">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <title>snackbar test</title>
+
+        <!-- Fonts -->
+    <link href='https://fonts.googleapis.com/css?family=Roboto:regular,bold,italic,thin,light,bolditalic,black,medium&amp;lang=en' rel='stylesheet' type='text/css'>
+    <link href="https://fonts.googleapis.com/icon?family=Material+Icons"
+      rel="stylesheet">
+
+    <!-- Page styles -->
+    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/prism/0.0.1/prism.min.css">
+    <link rel="stylesheet" href="../../material.min.css">
+    <link rel="stylesheet" href="../../components/demos.css">
+    <script src="../../material.min.js"></script>
+
+    
+    <style>
+      
+    </style>
+
+  </head>
+  <body>
+
+    <div style="padding-top: 24px;">
+      
+        
+<button id="demo-show-snackbar" class="mdl-button mdl-js-button mdl-button--raised" type="button">Show Snackbar</button>
+<div id="demo-snackbar-example" class="mdl-js-snackbar mdl-snackbar">
+  <div class="mdl-snackbar__text"></div>
+  <button class="mdl-snackbar__action" type="button"></button>
+</div>
+<script>
+(function() {
+  'use strict';
+  var snackbarContainer = document.querySelector('#demo-snackbar-example');
+  var showSnackbarButton = document.querySelector('#demo-show-snackbar');
+  var handler = function(event) {
+    showSnackbarButton.style.backgroundColor = '';
+  };
+  showSnackbarButton.addEventListener('click', function() {
+    'use strict';
+    showSnackbarButton.style.backgroundColor = '#' +
+        Math.floor(Math.random() * 0xFFFFFF).toString(16);
+    var data = {
+      message: 'Button color changed.',
+      timeout: 2000,
+      actionHandler: handler,
+      actionText: 'Undo'
+    };
+    snackbarContainer.MaterialSnackbar.showSnackbar(data);
+  });
+}());
+</script>
+
+<button id="demo-show-toast" class="mdl-button mdl-js-button mdl-button--raised" type="button">Show Toast</button>
+<div id="demo-toast-example" class="mdl-js-snackbar mdl-snackbar">
+  <div class="mdl-snackbar__text"></div>
+  <button class="mdl-snackbar__action" type="button"></button>
+</div>
+<script>
+(function() {
+  'use strict';
+  window['counter'] = 0;
+  var snackbarContainer = document.querySelector('#demo-toast-example');
+  var showToastButton = document.querySelector('#demo-show-toast');
+  showToastButton.addEventListener('click', function() {
+    'use strict';
+    var data = {message: 'Example Message # ' + ++counter};
+    snackbarContainer.MaterialSnackbar.showSnackbar(data);
+  });
+}());
+</script>
+
+      
+    </div>
+    <!-- Built with love using Material Design Lite -->
+
+    
+    <script>
+      
+    </script>
+  </body>
+</html>
diff --git a/node_modules/material-design-lite/dist/components/snackbar/index.html b/node_modules/material-design-lite/dist/components/snackbar/index.html
new file mode 100644
index 0000000..f5fdcb2
--- /dev/null
+++ b/node_modules/material-design-lite/dist/components/snackbar/index.html
@@ -0,0 +1,154 @@
+
+
+
+<h2 id="introduction">Introduction</h2>
+<p>The Material Design Lite (MDL) <strong>snackbar</strong> component is a container used to notify a user of an operation&#39;s status.
+It displays at the bottom of the screen.
+A snackbar may contain an action button to execute a command for the user.
+Actions should undo the committed action or retry it if it failed for example.
+Actions should not be to close the snackbar.
+By not providing an action, the snackbar becomes a <strong>toast</strong> component.</p>
+<h2 id="basic-usage-">Basic Usage:</h2>
+<p>Start a snackbar with a container div element.
+On that container define the <code>mdl-js-snackbar</code> and <code>mdl-snackbar</code> classes.
+It is also beneficial to add the aria live and atomic values to this container.</p>
+<p>Within the container create a container element for the message.
+This element should have the class <code>mdl-snackbar__text</code>.
+Leave this element empty!
+Text is added when the snackbar is called to be shown.</p>
+<p>Second in the container, add a button element.
+This element should have the class <code>mdl-snackbar__action</code>.
+It is recommended to set the type to button to make sure no forms get submitted by accident.
+Leave the text content empty here as well!
+Do not directly apply any event handlers.</p>
+<p>You now have complete markup for the snackbar to function.
+All that is left is within your JavaScript to call the <code>showSnackbar</code> method on the snackbar container.
+This takes a <a href="#data-object">plain object</a> to configure the snackbar content appropriately.
+You may call it multiple consecutive times and messages will stack.</p>
+<h2 id="examples">Examples</h2>
+<p>All snackbars should be shown through the same element.</p>
+<h4 id="markup-">Markup:</h4>
+<pre><code class="lang-html">&lt;div aria-live=&quot;assertive&quot; aria-atomic=&quot;true&quot; aria-relevant=&quot;text&quot; class=&quot;mdl-snackbar mdl-js-snackbar&quot;&gt;
+    &lt;div class=&quot;mdl-snackbar__text&quot;&gt;&lt;/div&gt;
+    &lt;button type=&quot;button&quot; class=&quot;mdl-snackbar__action&quot;&gt;&lt;/button&gt;
+&lt;/div&gt;
+</code></pre>
+<blockquote>
+<p>Note: In this example there are a few aria attributes for accessibility. Please modify these as-needed for your site.</p>
+</blockquote>
+<h3 id="snackbar">Snackbar</h3>
+<pre><code class="lang-javascript">var notification = document.querySelector(&#39;.mdl-js-snackbar&#39;);
+var data = {
+  message: &#39;Message Sent&#39;,
+  actionHandler: function(event) {},
+  actionText: &#39;Undo&#39;,
+  timeout: 10000
+};
+notification.MaterialSnackbar.showSnackbar(data);
+</code></pre>
+<h3 id="toast">Toast</h3>
+<pre><code class="lang-javascript">var notification = document.querySelector(&#39;.mdl-js-snackbar&#39;);
+notification.MaterialSnackbar.showSnackbar(
+  {
+    message: &#39;Image Uploaded&#39;
+  }
+);
+</code></pre>
+<h2 id="css-classes">CSS Classes</h2>
+<h3 id="blocks">Blocks</h3>
+<table>
+<thead>
+<tr>
+<th>MDL Class</th>
+<th>Effect</th>
+<th>Remarks</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td><code>mdl-snackbar</code></td>
+<td>Defines the container of the snackbar component.</td>
+<td>Required on snackbar container</td>
+</tr>
+</tbody>
+</table>
+<h3 id="elements">Elements</h3>
+<table>
+<thead>
+<tr>
+<th>MDL Class</th>
+<th>Effect</th>
+<th>Remarks</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td><code>mdl-snackbar__text</code></td>
+<td>Defines the element containing the text of the snackbar.</td>
+<td>Required</td>
+</tr>
+<tr>
+<td><code>mdl-snackbar__action</code></td>
+<td>Defines the element that triggers the action of a snackbar.</td>
+<td>Required</td>
+</tr>
+</tbody>
+</table>
+<h3 id="modifiers">Modifiers</h3>
+<table>
+<thead>
+<tr>
+<th>MDL Class</th>
+<th>Effect</th>
+<th>Remarks</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td><code>mdl-snackbar--active</code></td>
+<td>Marks the snackbar as active which causes it to display.</td>
+<td>Required when active. Controlled in JavaScript</td>
+</tr>
+</tbody>
+</table>
+<h2 id="data-object">Data Object</h2>
+<p>The Snackbar components <code>showSnackbar</code> method takes an object for snackbar data.
+The table below shows the properties and their usage.</p>
+<table>
+<thead>
+<tr>
+<th>Property</th>
+<th>Effect</th>
+<th>Remarks</th>
+<th>Type</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>message</td>
+<td>The text message to display.</td>
+<td>Required</td>
+<td>String</td>
+</tr>
+<tr>
+<td>timeout</td>
+<td>The amount of time in milliseconds to show the snackbar.</td>
+<td>Optional (default 2750)</td>
+<td>Integer</td>
+</tr>
+<tr>
+<td>actionHandler</td>
+<td>The function to execute when the action is clicked.</td>
+<td>Optional</td>
+<td>Function</td>
+</tr>
+<tr>
+<td>actionText</td>
+<td>The text to display for the action button.</td>
+<td>Required if actionHandler is set</td>
+<td>String.</td>
+</tr>
+</tbody>
+</table>
+
+
