From ea69050587407022a02011e18874c9bcdfe779bd Mon Sep 17 00:00:00 2001 From: jackyzha0 Date: Sun, 18 Jul 2021 11:54:00 -0400 Subject: [PATCH] add base pages --- .github/workflows/deploy.yaml | 35 ++++ .gitignore | 3 +- README.md | 2 +- assets/base.scss | 201 +++++++++++++++++++++ assets/custom.scss | 24 +++ config.toml | 20 +- content/_index.md | 7 + content/moc/directory.md | 7 + content/notes/config.md | 3 + content/notes/images/obsidian-settings.png | Bin 0 -> 26089 bytes content/notes/setup.md | 8 + content/notes/troubleshooting.md | 3 + content/notes/welcome.md | 0 content/templates/post.md | 3 + data/config.yaml | 7 +- layouts/404.html | 18 ++ layouts/_default/_markup/render-link.html | 2 + layouts/_default/single.html | 6 + layouts/index.html | 15 ++ layouts/partials/footer.html | 11 +- layouts/partials/graph.html | 4 +- layouts/partials/head.html | 2 +- 22 files changed, 365 insertions(+), 16 deletions(-) create mode 100644 .github/workflows/deploy.yaml create mode 100644 assets/base.scss create mode 100644 assets/custom.scss create mode 100644 content/notes/images/obsidian-settings.png delete mode 100644 content/notes/welcome.md create mode 100644 content/templates/post.md create mode 100644 layouts/_default/_markup/render-link.html diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml new file mode 100644 index 0000000..9bc8d43 --- /dev/null +++ b/.github/workflows/deploy.yaml @@ -0,0 +1,35 @@ +name: Deploy to GitHub Pages + +on: + push: + branches: + - hugo + +jobs: + deploy: + runs-on: ubuntu-18.04 + steps: + - uses: actions/checkout@v2 + + - name: Build Link Index + uses: jackyzha0/hugo-obsidian@v1.4 + with: + input: content + output: data + + - name: Setup Hugo + uses: peaceiris/actions-hugo@v2 + with: + hugo-version: '0.79.1' + extended: true + + - name: Build + run: hugo --minify + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./public + publish_branch: master # deploying branch + cname: quartz.jzhao.xyz \ No newline at end of file diff --git a/.gitignore b/.gitignore index 0de2938..c216e49 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,5 @@ public resources .idea -content/.obsidian \ No newline at end of file +content/.obsidian +data/linkIndex.yaml \ No newline at end of file diff --git a/README.md b/README.md index 0666d7b..7fca44d 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# quartz +# Quartz Simple second brain and digital garden. ```shell diff --git a/assets/base.scss b/assets/base.scss new file mode 100644 index 0000000..a0df87f --- /dev/null +++ b/assets/base.scss @@ -0,0 +1,201 @@ +:root { + --lt-colours-light: var(--light) !important; + --lt-colours-lightgray: var(--lightgray) !important; + --lt-colours-dark: var(--navy) !important; + --lt-colours-secondary: var(--olive) !important; + --lt-colours-gray: var(--outlinegray) !important; +} + +h1, h2, h3, h4, ol, ul, thead { + font-family: Inter; + color: var(--dark) +} + +p, ul, text { + font-family: 'Source Sans Pro', sans-serif; + color: var(--gray); + fill: var(--gray); +} + +a { + font-family: Inter; + font-weight: 700; + font-size: 1em; + text-decoration: none; + transition: all 0.2s ease; + color: var(--navy); + + &:hover { + color: var(--olive) !important; + } +} + +#TableOfContents > ol { + counter-reset: section; + margin-left: 0em; + padding-left: 1.5em; + & > li { + counter-increment: section; + & > ol { + counter-reset: subsection; + & > li { + counter-increment: subsection; + &::marker { + content: counter(section) "." counter(subsection) " "; + } + } + } + } + + & > li::marker { + content: counter(section) " "; + } + + & > li::marker, & > li > ol > li::marker { + font-family: Source Sans Pro; + font-weight: 700; + } +} + +footer { + margin-top: 4em; + text-align: center; +} + + +table { + width: 100%; +} + +img { + width: 100%; + border-radius: 3px; + margin: 1em 0; +} + +p>img+em { + display: block; + transform: translateY(-1em); +} + +sup { + line-height: 0 +} + +p, tbody, li { + font-family: Source Sans Pro; + color: var(--gray); + line-height: 1.5em; +} + +h2 { + opacity: 0.85; +} + +h3 { + opacity: 0.75; +} + +blockquote { + margin-left: 0em; + border-left: 3px solid var(--navy); + padding-left: 1em; + transition: border-color 0.2s ease; + + &:hover { + border-color: var(--olive); + } +} + +table { + padding: 1.5em; +} + +td, th { + padding: 0.1em 0.5em; +} + +.footnotes p { + margin: 0.5em 0; +} + +article a { + font-family: Source Sans Pro; + font-weight: 600; + text-decoration: underline; + text-decoration-color: var(--olive); + text-decoration-thickness: .15em; +} + +sup > a { + text-decoration: none; + padding: 0 0.1em 0 0.2em; +} + +pre { + font-family: 'Fira Code'; + padding: 0.75em; + border-radius: 3px; + overflow-x: scroll; +} + +code { + font-family: 'Fira Code'; + font-size: 0.85em; + padding: 0.15em 0.3em; + border-radius: 5px; + background: var(--lightgray); +} + +html { + scroll-behavior: smooth; +} + +body { + margin: 0; + height: 100vh; + width: 100vw; + overflow-x: hidden; + background-color: var(--light); +} + +@keyframes fadeIn { + 0% {opacity:0;} + 100% {opacity:1;} +} + +footer { + margin-top: 4em; + + & > a { + font-size: 1em; + color: var(--navy); + padding: 0 0.5em 3em 0.5em; + } +} + +hr { + width: 25%; + margin: 4em auto; + height: 2px; + border-radius: 1px; + border-width: 0; + color: var(--dark); + background-color: var(--dark); +} + +// internal link +a[href^="/"] { + text-decoration: none; + background-color: #afbfc922; + padding: 0 0.2em; + border-radius: 3px; +} + +.singlePage { + margin: 4em 30vw; + + @media all and (max-width: 1200px) { + margin: 25px 5vw; + } +} \ No newline at end of file diff --git a/assets/custom.scss b/assets/custom.scss new file mode 100644 index 0000000..9fcccd3 --- /dev/null +++ b/assets/custom.scss @@ -0,0 +1,24 @@ +// Add your own CSS here! +:root { + --light: #faf8f8; + --dark: #141021; + --navy: #284b63; + --olive: #84a59d; + --visited: #afbfc9; + --salmon: #f28482; + --gray: #4e4e4e; + --lightgray: #f0f0f0; + --outlinegray: #dadada; +} + +[saved-theme="dark"] { + --light: #1e1e21 !important; + --dark: #fbfffe !important; + --navy: #5b778a !important; + --visited: #4a575e !important; + --olive: #84a59d !important; + --salmon: #f58382 !important; + --gray: #d4d4d4 !important; + --lightgray: #292633 !important; + --outlinegray: #343434 !important; +} \ No newline at end of file diff --git a/config.toml b/config.toml index da90bbf..44cb838 100644 --- a/config.toml +++ b/config.toml @@ -1,4 +1,22 @@ baseURL = "https://quartz.jzhao.xyz/" languageCode = "en-us" googleAnalytics = "UA-148413215-1" -pygmentsUseClasses = true \ No newline at end of file +pygmentsUseClasses = true +ignoreFiles = ["/content/templates/*"] + +[markup] + [markup.tableOfContents] + endLevel = 3 + ordered = true + startLevel = 2 + [markup.highlight] + anchorLineNos = false + codeFences = true + guessSyntax = true + hl_Lines = "" + lineAnchors = "" + lineNoStart = 1 + lineNos = true + lineNumbersInTable = true + style = "dracula" + tabWidth = 4 \ No newline at end of file diff --git a/content/_index.md b/content/_index.md index e69de29..d5ecfd8 100644 --- a/content/_index.md +++ b/content/_index.md @@ -0,0 +1,7 @@ +# 💎 Quartz +Simple second brain and digital garden. 🌱 + +## Why Quartz? + +## Get Started +[directory](moc/directory.md) diff --git a/content/moc/directory.md b/content/moc/directory.md index e69de29..2459e2b 100644 --- a/content/moc/directory.md +++ b/content/moc/directory.md @@ -0,0 +1,7 @@ +--- +title: "Directory" +--- + +[setup](notes/setup.md) +[config](notes/config.md) +[troubleshooting](notes/troubleshooting.md) \ No newline at end of file diff --git a/content/notes/config.md b/content/notes/config.md index e69de29..13c2bde 100644 --- a/content/notes/config.md +++ b/content/notes/config.md @@ -0,0 +1,3 @@ +--- +title: "config" +--- diff --git a/content/notes/images/obsidian-settings.png b/content/notes/images/obsidian-settings.png new file mode 100644 index 0000000000000000000000000000000000000000..8dfbfdc3436672627c1248508b6b02c08d5a7c9a GIT binary patch literal 26089 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 E0NoEK9RL6T literal 0 HcmV?d00001 diff --git a/content/notes/setup.md b/content/notes/setup.md index e69de29..6f7bdc2 100644 --- a/content/notes/setup.md +++ b/content/notes/setup.md @@ -0,0 +1,8 @@ +--- +title: "Setup" +--- + +![](/notes/images/obsidian-settings.png) + + +Having problems? [troubleshooting](notes/troubleshooting.md) \ No newline at end of file diff --git a/content/notes/troubleshooting.md b/content/notes/troubleshooting.md index e69de29..cd296d6 100644 --- a/content/notes/troubleshooting.md +++ b/content/notes/troubleshooting.md @@ -0,0 +1,3 @@ +--- +title: "troubleshooting" +--- diff --git a/content/notes/welcome.md b/content/notes/welcome.md deleted file mode 100644 index e69de29..0000000 diff --git a/content/templates/post.md b/content/templates/post.md new file mode 100644 index 0000000..c2a9b33 --- /dev/null +++ b/content/templates/post.md @@ -0,0 +1,3 @@ +--- +title: "{{title}}" +--- diff --git a/data/config.yaml b/data/config.yaml index 8d0ae8a..4947907 100644 --- a/data/config.yaml +++ b/data/config.yaml @@ -1,11 +1,12 @@ -name: Quartz Example Page +name: Jacky Zhao +enableToc: true description: Here is the page description. This is an example Quartz site that details installation, setup, customization, and troubleshooting for Quartz itself. page_title: Quartz Example Page links: - - link_name: twitter + - link_name: Twitter link: https://twitter.com/_jzhao - - link_name: github + - link_name: Github link: https://github.com/jackyzha0 \ No newline at end of file diff --git a/layouts/404.html b/layouts/404.html index e69de29..2c92505 100644 --- a/layouts/404.html +++ b/layouts/404.html @@ -0,0 +1,18 @@ + + +{{ partial "head.html" . }} + + +
+ {{partial "darkmode.html" .}} +
+

404.

+

Hey! You look a little lost.

+ +
+
+ + + \ No newline at end of file diff --git a/layouts/_default/_markup/render-link.html b/layouts/_default/_markup/render-link.html new file mode 100644 index 0000000..10856fa --- /dev/null +++ b/layouts/_default/_markup/render-link.html @@ -0,0 +1,2 @@ +{{$trimmed := strings.TrimSuffix ".md" (.Destination | safeURL)}} +{{ .Text | safeHTML }} \ No newline at end of file diff --git a/layouts/_default/single.html b/layouts/_default/single.html index c7ce881..14a3b05 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -8,6 +8,12 @@ {{partial "darkmode.html" .}}
{{if .Title}}

{{ .Title }}

{{end}} + {{if $.Site.Data.config.enableToc}} + + {{end}} {{- .Content -}}
{{partial "footer.html" .}} diff --git a/layouts/index.html b/layouts/index.html index e69de29..a68d61f 100644 --- a/layouts/index.html +++ b/layouts/index.html @@ -0,0 +1,15 @@ +{{define "head"}} +{{ partial "head.html" . }} +{{end}} + +{{define "main"}} + +
+ {{.Content}} + + +
+ {{partial "footer.html" .}} +
+
+{{end}} \ No newline at end of file diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html index 3afeb8e..9d3c5dc 100644 --- a/layouts/partials/footer.html +++ b/layouts/partials/footer.html @@ -1,20 +1,17 @@

+ {{partial "backlinks.html" .}} {{partial "graph.html" .}} -
-

made by {{ $.Site.Data.config.name }}, © {{ dateFormat "2006" now }}

- source +

Made by {{ $.Site.Data.config.name }} using Quartz, © {{ dateFormat "2006" now }}

{{ if not .IsHome }} - home + Home {{end}} - {{- range $.Site.Data.links.footer -}} + {{- range $.Site.Data.config.links -}} {{.link_name}} {{- end -}}
diff --git a/layouts/partials/graph.html b/layouts/partials/graph.html index ea9cf1a..c315b8f 100644 --- a/layouts/partials/graph.html +++ b/layouts/partials/graph.html @@ -23,7 +23,7 @@ } const color = (d) => { - if (d.id === curPage) { + if (d.id === curPage || (d.id === "/" && curPage === "")) { return "var(--g-node-active)" } @@ -64,7 +64,7 @@ .on("end", enableDrag ? dragended : noop); } - const height = 400 + const height = 250 const width = document.getElementById("graph-container").offsetWidth const simulation = d3.forceSimulation(data.nodes) diff --git a/layouts/partials/head.html b/layouts/partials/head.html index 5e42a2c..2f295e9 100644 --- a/layouts/partials/head.html +++ b/layouts/partials/head.html @@ -12,7 +12,7 @@ - {{ $css := slice "darkmode.scss" "syntax.scss"}} + {{ $css := slice "custom.scss" "base.scss" "darkmode.scss" "syntax.scss"}} {{range $css}} {{$sass := resources.Get . | resources.ToCSS }} {{with $sass | minify}}