From 22a9c0ddfcb38a15d4340f532faca7733349702b Mon Sep 17 00:00:00 2001
From: Jacky Zhao <j.zhao2k19@gmail.com>
Date: Mon, 25 Oct 2021 06:31:09 +0000
Subject: [PATCH] docs updates, add search to main page, fix redir bug

---
 layouts/partials/search.html |   10 +++--
 layouts/index.html           |   36 ++++++++++++------
 README.md                    |    2 
 content/_index.md            |   15 +++----
 4 files changed, 38 insertions(+), 25 deletions(-)

diff --git a/README.md b/README.md
index ec80139..abcfb68 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
 # Quartz
-Simple second brain and digital garden.
+Host your own second brain and digital garden for free.
 
 > β€œ[One] who works with the door open gets all kinds of interruptions, but [they] also occasionally gets clues as to what the world is and what might be important.” β€” Richard Hamming
 
diff --git a/content/_index.md b/content/_index.md
index 0994124..4cfe1be 100644
--- a/content/_index.md
+++ b/content/_index.md
@@ -1,7 +1,10 @@
-# 🌱 Quartz
-## v2.0
+---
+title: πŸͺ΄ Quartz v2.1
+---
 
-Simple second brain and [digital garden](https://jzhao.xyz/posts/digital-gardening).
+Host your second brain and [digital garden](https://jzhao.xyz/posts/digital-gardening) for free.
+
+Curious what it can do? You're on it right now! The entire Quartz documentation is fully hosted using Quartz.
 
 ## Why Quartz?
 Hosting a public digital garden isn't easy. There are an overwhelming number of tutorials, resources, and guides for tools like [Notion](https://www.notion.so/), [Roam](https://roamresearch.com/), and [Obsidian](https://obsidian.md/), yet none of them have super easy to use *free* tools to publish that garden to the world.
@@ -11,17 +14,13 @@
 2. Having a public digital garden invites open conversations
 3. It makes keeping personal notes and knowledge *playful and fun*
 
-> β€œHe who works with the door open gets all kinds of interruptions, but he also occasionally gets clues as to what the world is and what might be important.” β€” Richard Hamming
+> β€œ[One] who works with the door open gets all kinds of interruptions, but [they] also occasionally gets clues as to what the world is and what might be important.” β€” Richard Hamming
 
 I was really inspired by [Bianca](https://garden.bianca.digital/) and [Joel](https://joelhooks.com/digital-garden)'s digital gardens and wanted to try making my own.
 
 **The goal of Quartz is to make hosting your own public digital garden free and simple.** You don't even need your own website. Quartz does all of that for you and gives your own little corner of the internet.
 
 ## Get Started
-The entire Quartz documentation is fully hosted using Quartz! Whether you're setting up a website and project for the first time or a seasoned digital gardener, I hope that you'll find something useful about this project.
-
-Let's get to business and get you started!
-
 > πŸ“š [Setup your own digital garden using Quartz](notes/setup.md)
 
 Not convinced yet? Look at some [community digital gardens](moc/showcase) built with Quartz!
diff --git a/layouts/index.html b/layouts/index.html
index fdc03b1..c30cd4f 100644
--- a/layouts/index.html
+++ b/layouts/index.html
@@ -1,16 +1,28 @@
-{{define "head"}}
+<!DOCTYPE html>
+<html lang="en">
 {{ partial "head.html" . }}
-{{end}}
 
-{{define "main"}}
-<!-- Main Page -->
+<body>
+{{partial "search.html" .}}
 <div class="singlePage">
-    {{partial "darkmode.html" .}}
-    {{.Content}}
-
-    <!-- Contact Info -->
-    <div>
-        {{partial "footer.html" .}}
-    </div>
+    <!-- Begin actual content -->
+    <header>
+        {{if .Title}}<h1>{{ .Title }}</h1>{{end}}
+        <svg tabindex="0" id="search-icon" aria-labelledby="title desc" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 19.9 19.7"><title id="title">Search Icon</title><desc id="desc">Icon to open search</desc><g class="search-path" fill="none"><path stroke-linecap="square" d="M18.5 18.3l-5.4-5.4"/><circle cx="8" cy="8" r="7"/></g></svg>
+        <div class="spacer"></div>
+        {{partial "darkmode.html" .}}
+    </header>
+    <article>
+        {{if $.Site.Data.config.enableToc}}
+        <aside class="mainTOC">
+            <h3>Table of Contents</h3>
+            {{ .TableOfContents }}
+        </aside>
+        {{end}}
+        {{- .Content -}}
+    </article>
+    {{partial "footer.html" .}}
 </div>
-{{end}}
+</body>
+
+</html>
diff --git a/layouts/partials/search.html b/layouts/partials/search.html
index 7ee139d..78b7765 100644
--- a/layouts/partials/search.html
+++ b/layouts/partials/search.html
@@ -126,13 +126,17 @@
     </button>`
     }
 
+    const redir = (id, term) => {
+        window.location.href = {{.Site.BaseURL}} + `${id}#:~:text=${encodeURIComponent(term)}`
+    }
+
     const source = document.getElementById('search-bar')
     const results = document.getElementById("results-container")
     let term
     source.addEventListener("keyup", (e) => {
         if (e.key === "Enter") {
             const anchor = document.getElementsByClassName("result-card")[0]
-            window.location.href = `${anchor.id}#:~:text=${encodeURIComponent(term)}`
+            redir(anchor.id, term)
         }
     })
     source.addEventListener('input', (e) => {
@@ -163,9 +167,7 @@
                     .join("\n")
                 const anchors = document.getElementsByClassName("result-card");
                 [...anchors].forEach(anchor => {
-                    anchor.onclick = () => {
-                        window.location.href = `${anchor.id}#:~:text=${encodeURIComponent(term)}`
-                    }
+                    anchor.onclick = () => redir(anchor.id, term)
                 })
             }
         })

--
Gitblit v1.10.0