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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%0AcRsFA*poZ7_6A};Ec%?2Za^;SR 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 I&MBb@0NoEK9RL6T 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}}