Landing: Implement using Hugo

Change-Id: I1204d0a75e73000685d3f12a52d66897fa69bbae
diff --git a/apps/landing/layouts/404.html b/apps/landing/layouts/404.html
new file mode 100644
index 0000000..0b8c249
--- /dev/null
+++ b/apps/landing/layouts/404.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html>
+<html lang="en">
+    <head>
+        <meta charset="UTF-8">
+        <meta name="viewport", content="width=device-width, intitial-scale=1.0" >
+        <title>Not Found</title>
+    </head>
+    <body>
+        Not Found
+        <a href="/">Go to Homepage</a>
+    </body>
+</html>
diff --git a/apps/landing/layouts/_default/baseof.html b/apps/landing/layouts/_default/baseof.html
new file mode 100644
index 0000000..f448548
--- /dev/null
+++ b/apps/landing/layouts/_default/baseof.html
@@ -0,0 +1,17 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <link rel="stylesheet" href="/styles/style.css?v=0.0.1">
+    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/hack-font/3.3.0/web/hack.min.css">
+    <title>dodo</title>
+</head>
+<body>
+    <div class="container">
+        {{ partial "navbar" . }}
+        {{ block "main" . }}{{ end }}
+        {{/*  {{ partial "footer" . }}  */}}
+    </div>
+</body>
+</html>
diff --git a/apps/landing/layouts/_default/list.html b/apps/landing/layouts/_default/list.html
new file mode 100644
index 0000000..57d7633
--- /dev/null
+++ b/apps/landing/layouts/_default/list.html
@@ -0,0 +1,34 @@
+{{ define "main" }}
+<div class="facts-content">
+    {{ $facts := where .Site.Pages "Section" "facts" }}
+    {{ $individualFacts := where $facts "Kind" "page" }}
+    {{ $sortedFacts := sort $individualFacts "File.BaseFileName" "asc" }}
+    <!-- 4x4 GRID -->
+    <div class="grid-container" data-facts='[
+        {{ range $i, $fact := $sortedFacts }}
+          {{ if $i }},{{ end }}{
+            "params": {{ jsonify $fact.Params }}
+          }
+        {{ end }}
+      ]'>
+        {{ range $i, $fact := $sortedFacts }}
+            {{ $className := printf "fact-%d" (add $i 1) }}
+            <div id="fact-{{ $i }}" class="facts {{ $className }} {{ if eq $i 0 }}active-fact{{ end }}"
+            onclick="handleImageChange('{{ $fact.Params.image }}', {{ $i }}, '{{ $fact.Title }}')"
+            onmouseover="handleMouseover('{{ $fact.Params.image }}', {{ $i }}, '{{ $fact.Title }}')">
+                <h3 class="fact-title">{{ $fact.Title }}</h3>
+                {{ $fact.Content }}
+            </div>
+        {{ end }}
+        <!-- 1 Large Box 3x3 -->
+        {{ $firstFact := index $sortedFacts 0 }}
+        <div id="factImageBox" class="fact-image-box">
+            <img id="factImage" src="/images/fact-1.png" alt="{{ $firstFact.Title }}" class="fact-image">
+        </div>
+    </div>
+</div>
+<div class="footer-form">
+    {{ partial "register-form.html" . }}
+</div>
+<script src="/js/main.js"></script>
+{{ end }}
diff --git a/apps/landing/layouts/about/single.html b/apps/landing/layouts/about/single.html
new file mode 100644
index 0000000..8708853
--- /dev/null
+++ b/apps/landing/layouts/about/single.html
@@ -0,0 +1,8 @@
+{{ define "main" }}
+<div class="about">
+    <h1>{{ .Title }}</h1>
+    <div class="content">
+        {{ .Content }}
+    </div>
+</div>
+{{ end }}
diff --git a/apps/landing/layouts/apps/list.html b/apps/landing/layouts/apps/list.html
new file mode 100644
index 0000000..f49bfb1
--- /dev/null
+++ b/apps/landing/layouts/apps/list.html
@@ -0,0 +1,17 @@
+{{ define "main" }}
+<div class="apps-grid">
+    {{ $pages := .Pages }}
+    {{ $sortedPages := sort $pages "Date" }}
+    {{ range $sortedPages }}
+        <div class="app-card">
+            <a href="{{ .RelPermalink }}" class="app-card-link"></a>
+            <div class="app-header">
+                <h2>{{ .Title }}</h2>
+                <span class="app-icon">{{ .Params.icon | safeHTML }}</span>
+            </div>
+            <p>{{ .Params.description }}</p>
+            <a class="read-more" href="{{ .RelPermalink }}">Read more</a>
+        </div>
+    {{ end }}
+</div>
+{{ end }}
diff --git a/apps/landing/layouts/apps/single.html b/apps/landing/layouts/apps/single.html
new file mode 100644
index 0000000..d2ab63f
--- /dev/null
+++ b/apps/landing/layouts/apps/single.html
@@ -0,0 +1,7 @@
+{{ define "main" }}
+<article class="app-detail">
+    <h1>{{ .Title }}</h1>
+    <p>{{ .Params.description }}</p>
+    <div>{{ .Content }}</div>
+</article>
+{{ end }}
diff --git a/apps/landing/layouts/partials/footer.html b/apps/landing/layouts/partials/footer.html
new file mode 100644
index 0000000..380f74a
--- /dev/null
+++ b/apps/landing/layouts/partials/footer.html
@@ -0,0 +1 @@
+<div class="footer">footer</div>
diff --git a/apps/landing/layouts/partials/navbar.html b/apps/landing/layouts/partials/navbar.html
new file mode 100644
index 0000000..0621106
--- /dev/null
+++ b/apps/landing/layouts/partials/navbar.html
@@ -0,0 +1,12 @@
+<nav class="navbar">
+    <div class="logo">
+        <a href="/">
+            <span class="logo-part1">do</span><span class="logo-part2">do:</span>
+        </a>
+    </div>
+    <div class="links">
+      <a href="/register">register</a>
+      <a href="/apps">apps</a>
+      <a href="/about">about</a>
+    </div>
+</nav>
diff --git a/apps/landing/layouts/partials/register-form.html b/apps/landing/layouts/partials/register-form.html
new file mode 100644
index 0000000..9c3bc83
--- /dev/null
+++ b/apps/landing/layouts/partials/register-form.html
@@ -0,0 +1,11 @@
+<div class="form-container-footer">
+    <form method="POST" action="/register">
+        <div class="form-group-footer input-area">
+            <label for="public-key">SSH Public Key</label>
+            <textarea id="public-key" name="public-key" rows="4" required></textarea>
+        </div>
+        <div class="form-group-footer">
+            <button type="submit">register</button>
+        </div>
+    </form>
+</div>
diff --git a/apps/landing/layouts/register/single.html b/apps/landing/layouts/register/single.html
new file mode 100644
index 0000000..f576e41
--- /dev/null
+++ b/apps/landing/layouts/register/single.html
@@ -0,0 +1,7 @@
+{{ define "main" }}
+<div class="form-page">
+    <div class="form-container">
+        {{ partial "register-form.html" . }}
+    </div>
+</div>
+{{ end }}