diff --git a/index.html b/index.html index e17799e66..577cc71d7 100644 --- a/index.html +++ b/index.html @@ -11,5 +11,9 @@ Bianca and Joel -’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! To get started, let’s visit the main directory.

πŸ‘‰ -Directory


Interactive Graph

\ No newline at end of file +’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

Not convinced yet? Look at some +community digital gardens +built with Quartz!

Troubleshooting


Interactive Graph

\ No newline at end of file diff --git a/index.xml b/index.xml index 0164810dc..b969617a1 100644 --- a/index.xml +++ b/index.xml @@ -6,15 +6,11 @@ Enable GitHub ActionsEditing Content in Quartz Obsidian I strongly recommend using Obsidian as a way to edit and grow your digital garden. It comes with a really nice editor and graphical interface to preview all of my local files. πŸ”— How to link your Obsidian Vault Of course, all the files are in Markdown so you could just use your favourite text editor of choice.</description></item><item><title>External Hostinghttps://quartz.jzhao.xyz/notes/external-hosting/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/external-hosting/Ignoring Noteshttps://quartz.jzhao.xyz/notes/ignore-notes/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/ignore-notes/Quartz Ignore Edit ignoreFiles in config.toml to include paths you&rsquo;d like to exclude from being rendered. -1 2 3 4 5 6 ... ignoreFiles = [ &#34;/content/templates/*&#34;, &#34;/content/private/*&#34;, &#34;&lt;your path here&gt;&#34; ] ignoreFiles supports the use of Regular Expressions (RegEx) so you can ignore patterns as well (e.g. ignoring all .pngs by doing \\.png$). -More details in Hugo&rsquo;s documentation . -Global Ignore However, just adding to the ignoreFiles will only prevent the page from being access through Quartz.Obsidian Vault Integrationhttps://quartz.jzhao.xyz/notes/obsidian/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/obsidian/Setup Obsidian is the preferred way to use Quartz. You can either create a new Obsidian Vault or link one that your already have. +1 2 3 4 5 6 ... ignoreFiles = [ &#34;/content/templates/*&#34;, &#34;/content/private/*&#34;, &#34;&lt;your path here&gt;&#34; ] ignoreFiles supports the use of Regular Expressions (RegEx) so you can ignore patterns as well (e.g. ignoring all .pngs by doing \\.png$). To ignore a specific file, you can also add the tag draft: true to the frontmatter of a note.Obsidian Vault Integrationhttps://quartz.jzhao.xyz/notes/obsidian/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/obsidian/Setup Obsidian is the preferred way to use Quartz. You can either create a new Obsidian Vault or link one that your already have. New Vault If you don&rsquo;t have an existing Vault, download Obsidian and create a new Vault in the /content folder that you created and cloned during the setup . Linking an existing Vault The easiest way to use an existing Vault is to copy all of our files (directory and hierarchies intact) into the /content folder.Preview Changeshttps://quartz.jzhao.xyz/notes/preview-changes/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/preview-changes/If you&rsquo;d like to preview what your Quartz site looks like before deploying it to the internet, here&rsquo;s exactly how to do that! Install hugo-obsidian This step will generate the list of backlinks for Hugo to parse. Ensure you have Go (&gt;= 1.16) installed. -1 2 3 4 5 6 7 8 # Install and link `hugo-obsidian` locally $ go install github.com/jackyzha0/hugo-obsidian # Navigate to your local Quartz folder $ cd &lt;location-of-your-local-quartz&gt; # Scrape all links in your Quartz folder and generate info for Quartz $ hugo-obsidian -input=content -output=data -index=true Afterwards, start the Hugo server as shown above and your local backlinks and interactive graph should be populated!Quartz Documentationhttps://quartz.jzhao.xyz/moc/directory/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/moc/directory/Setup Welcome to Quartz! Whether you&rsquo;re setting up a website and project for the first time or a seasoned digital gardener, I hope that you&rsquo;ll find something useful about this project. -Let&rsquo;s get to business and get you started! -πŸ“š Setup your own digital garden using Quartz πŸ”— Linking with an Obsidian Vault 🎨 Customizing and Styling Quartz 🌍 Hosting Quartz online! Not convinced yet?Setuphttps://quartz.jzhao.xyz/notes/setup/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/setup/Making your own Quartz Setting up Quartz requires a basic understanding of git. If you are unfamiliar, this resource is a great place to start! +1 2 3 4 5 6 7 8 # Install and link `hugo-obsidian` locally $ go install github.com/jackyzha0/hugo-obsidian # Navigate to your local Quartz folder $ cd &lt;location-of-your-local-quartz&gt; # Scrape all links in your Quartz folder and generate info for Quartz $ hugo-obsidian -input=content -output=data -index=true Afterwards, start the Hugo server as shown above and your local backlinks and interactive graph should be populated!Setuphttps://quartz.jzhao.xyz/notes/setup/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/setup/Making your own Quartz Setting up Quartz requires a basic understanding of git. If you are unfamiliar, this resource is a great place to start! Forking A fork is a copy of a repository. Forking a repository allows you to freely experiment with changes without affecting the original project. Navigate to the GitHub repository for the Quartz project: πŸ“ Quartz Repository Then, Fork the repository into your own GitHub account.Showcasehttps://quartz.jzhao.xyz/moc/showcase/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/moc/showcase/Want to see what Quartz can do? Here are some cool community gardens :) diff --git a/moc/directory/index.html b/moc/directory/index.html deleted file mode 100644 index dfea1f0b5..000000000 --- a/moc/directory/index.html +++ /dev/null @@ -1,16 +0,0 @@ -Quartz Documentation

Quartz Documentation

Search IconIcon to open search
-

Setup

Welcome to 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!

Not convinced yet? Look at some -community digital gardens -built with Quartz!

Troubleshooting


Interactive Graph

\ No newline at end of file diff --git a/moc/index.xml b/moc/index.xml index cdb28272e..7a9fe37e5 100644 --- a/moc/index.xml +++ b/moc/index.xml @@ -1,4 +1,2 @@ -Mocs onhttps://quartz.jzhao.xyz/moc/Recent content in Mocs onHugo -- gohugo.ioen-usQuartz Documentationhttps://quartz.jzhao.xyz/moc/directory/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/moc/directory/Setup Welcome to Quartz! Whether you&rsquo;re setting up a website and project for the first time or a seasoned digital gardener, I hope that you&rsquo;ll find something useful about this project. -Let&rsquo;s get to business and get you started! -πŸ“š Setup your own digital garden using Quartz πŸ”— Linking with an Obsidian Vault 🎨 Customizing and Styling Quartz 🌍 Hosting Quartz online! Not convinced yet?Showcasehttps://quartz.jzhao.xyz/moc/showcase/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/moc/showcase/Want to see what Quartz can do? Here are some cool community gardens :) +Mocs onhttps://quartz.jzhao.xyz/moc/Recent content in Mocs onHugo -- gohugo.ioen-usShowcasehttps://quartz.jzhao.xyz/moc/showcase/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/moc/showcase/Want to see what Quartz can do? Here are some cool community gardens :) Quartz Documentation (this site!) Strengthening Online Social Bonds: Research Garden Jacky Zhao&rsquo;s Garden Anson Yu&rsquo;s Garden Shihyu&rsquo;s PKM Chloe&rsquo;s Garden SlRvb&rsquo;s Site Course notes for Information Technology Advanced Theory If you want to see your own on here, submit a Pull Request adding yourself to this file ! \ No newline at end of file diff --git a/moc/showcase/index.html b/moc/showcase/index.html index 37590c6df..2512375f1 100644 --- a/moc/showcase/index.html +++ b/moc/showcase/index.html @@ -1,10 +1,10 @@ -Showcase

Showcase

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Showcase

Search IconIcon to open search

Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +!


Interactive Graph

\ No newline at end of file diff --git a/notes/config/index.html b/notes/config/index.html index c478ebba4..73efa4b4d 100644 --- a/notes/config/index.html +++ b/notes/config/index.html @@ -1,9 +1,9 @@ -Configuration

Configuration

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Configuration

Search IconIcon to open search

Configuration

Quartz is designed to be extremely configurable. You can find the bulk of the configuration scattered throughout the repository depending on how in-depth you’d like to get.

The majority of configuration can be be found under data/config.yaml. An annotated example configuration is shown below.

 1
  2
  3
@@ -37,5 +37,5 @@
 

Styling

Want to go even more in-depth? You can add custom CSS styling and change existing colours through editing assets/custom.scss. If you’d like to target specific parts of the site, you can add ids and classes to the HTML partials in /layouts/partials.

Partials

Partials are what dictate what actually gets rendered to the page. Want to change how pages are styled and structured? You can edit the appropriate layout in /layouts.

For example, the structure of the home page can be edited through /layouts/index.html. To customize the footer, you can edit /layouts/partials/footer.html

More info about partials on Hugo’s website.

Still having problems? Checkout our FAQ and Troubleshooting guide -.


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +.


Interactive Graph

\ No newline at end of file diff --git a/notes/editing/index.html b/notes/editing/index.html index 4b8665b59..f6688340f 100644 --- a/notes/editing/index.html +++ b/notes/editing/index.html @@ -1,9 +1,9 @@ -Editing Content in Quartz

Editing Content in Quartz

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Editing Content in Quartz

Search IconIcon to open search

Editing

Quartz runs on top of Hugo so all notes are written in @@ -30,5 +30,5 @@ Rest of your content here... Preview Quartz Changes

For those who like to live life more on the edge, viewing the garden through Obsidian gets you pretty close to the real thing.

Publishing Changes

Now that you know the basics of managing your digital garden using Quartz, you can publish it to the internet!

🌍 Hosting Quartz online!

Having problems? Checkout our FAQ and Troubleshooting guide -.


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +.


Interactive Graph

\ No newline at end of file diff --git a/notes/external-hosting/index.html b/notes/external-hosting/index.html index 30879691f..4bceb490b 100644 --- a/notes/external-hosting/index.html +++ b/notes/external-hosting/index.html @@ -1,8 +1,8 @@ -External Hosting

External Hosting

Search IconIcon to open search
-

Interactive Graph

`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

External Hosting

Search IconIcon to open search
+

Interactive Graph

\ No newline at end of file diff --git a/notes/hosting/index.html b/notes/hosting/index.html index c9354587e..74558cbf4 100644 --- a/notes/hosting/index.html +++ b/notes/hosting/index.html @@ -1,9 +1,9 @@ -Deploying Quartz to the Web

Deploying Quartz to the Web

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Deploying Quartz to the Web

Search IconIcon to open search

GitHub Pages

Quartz is designed to be effortless to deploy. If you forked and cloned Quartz directly from the repository, everything should already be good to go! You can head to <YOUR-GITHUB-USERNAME.github.io/quartz to see it live.

Enable GitHub Actions

By default, GitHub disables workflows from running automatically on Forked Repostories. Head to the ‘Actions’ tab of your forked repository and Enable Workflows to setup deploying your Quartz site!

Enable GitHub ActionsEnable GitHub Actions

Enable GitHub Pages

Head to the ‘Settings’ tab of your forked repository and go to the ‘Pages’ tab.

  1. Set the source to deploy from master using / (root)
  2. Set a custom domain here if you have one!

Enable GitHub PagesEnable GitHub Pages

Pushing Changes

To see your changes on the internet, we need to push it them to GitHub. Quartz is essentially a git repository so updating it is the same workflow as you would follow as normal.

1
 2
 3
@@ -43,5 +43,5 @@ git push origin hugo
 , but the tldr; is to

  1. Go to your forked repository (github.com/<YOUR-GITHUB-USERNAME>/quartz) settings page and go to the Pages tab. Under “Custom domain”, type your custom domain, then click Save.

  2. Go to your DNS Provider and create a CNAME record that points from your domain to <YOUR-GITHUB-USERNAME.github.io. (yes, with the trailing period).

    Example Configuration for QuartzExample Configuration for Quartz

  3. Wait 30 minutes to an hour for the network changes to kick in.

  4. Done!

External Hosting

Don’t want to use GitHub Pages? Hugo builds everything for you! Everything is a packaged set of static files ready to deploy in /public. You can then upload this folder to a cloud provider to deploy. Alternatively, most providers also give users the option to link a GitHub repository and a folder to deploy. When doing this, ensure you select /public folder under the master branch.


Now that your Quartz is live, let’s figure out how to make Quartz really yours!

🎨 Customizing Quartz

Having problems? Checkout our FAQ and Troubleshooting guide -.


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +.


Interactive Graph

\ No newline at end of file diff --git a/notes/ignore-notes/index.html b/notes/ignore-notes/index.html index 570c7cf00..e715305cc 100644 --- a/notes/ignore-notes/index.html +++ b/notes/ignore-notes/index.html @@ -1,9 +1,9 @@ -Ignoring Notes

Ignoring Notes

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Ignoring Notes

Search IconIcon to open search

Quartz Ignore

Edit ignoreFiles in config.toml to include paths you’d like to exclude from being rendered.

1
 2
 3
@@ -16,7 +16,18 @@
     "/content/private/*", 
     "<your path here>"
 ]
-

ignoreFiles supports the use of Regular Expressions (RegEx) so you can ignore patterns as well (e.g. ignoring all .pngs by doing \\.png$).

More details in +

ignoreFiles supports the use of Regular Expressions (RegEx) so you can ignore patterns as well (e.g. ignoring all .pngs by doing \\.png$). +To ignore a specific file, you can also add the tag draft: true to the frontmatter of a note.

1
+2
+3
+4
+5
+
---
+title: Some Private Note
+draft: true
+---
+...
+

More details in Hugo’s documentation -.

Global Ignore

However, just adding to the ignoreFiles will only prevent the page from being access through Quartz. If you want to prevent the file from being pushed to GitHub (for example if you have a public repository), you need to also add the path to the .gitignore file at the root of the repository.


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +.

Global Ignore

However, just adding to the ignoreFiles will only prevent the page from being access through Quartz. If you want to prevent the file from being pushed to GitHub (for example if you have a public repository), you need to also add the path to the .gitignore file at the root of the repository.


Interactive Graph

\ No newline at end of file diff --git a/notes/index.xml b/notes/index.xml index 1cb45c02b..7a7b4df78 100644 --- a/notes/index.xml +++ b/notes/index.xml @@ -6,9 +6,7 @@ Enable GitHub ActionsEditing Content in Quartz Obsidian I strongly recommend using Obsidian as a way to edit and grow your digital garden. It comes with a really nice editor and graphical interface to preview all of my local files. πŸ”— How to link your Obsidian Vault Of course, all the files are in Markdown so you could just use your favourite text editor of choice.</description></item><item><title>External Hostinghttps://quartz.jzhao.xyz/notes/external-hosting/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/external-hosting/Ignoring Noteshttps://quartz.jzhao.xyz/notes/ignore-notes/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/ignore-notes/Quartz Ignore Edit ignoreFiles in config.toml to include paths you&rsquo;d like to exclude from being rendered. -1 2 3 4 5 6 ... ignoreFiles = [ &#34;/content/templates/*&#34;, &#34;/content/private/*&#34;, &#34;&lt;your path here&gt;&#34; ] ignoreFiles supports the use of Regular Expressions (RegEx) so you can ignore patterns as well (e.g. ignoring all .pngs by doing \\.png$). -More details in Hugo&rsquo;s documentation . -Global Ignore However, just adding to the ignoreFiles will only prevent the page from being access through Quartz.Obsidian Vault Integrationhttps://quartz.jzhao.xyz/notes/obsidian/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/obsidian/Setup Obsidian is the preferred way to use Quartz. You can either create a new Obsidian Vault or link one that your already have. +1 2 3 4 5 6 ... ignoreFiles = [ &#34;/content/templates/*&#34;, &#34;/content/private/*&#34;, &#34;&lt;your path here&gt;&#34; ] ignoreFiles supports the use of Regular Expressions (RegEx) so you can ignore patterns as well (e.g. ignoring all .pngs by doing \\.png$). To ignore a specific file, you can also add the tag draft: true to the frontmatter of a note.Obsidian Vault Integrationhttps://quartz.jzhao.xyz/notes/obsidian/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/obsidian/Setup Obsidian is the preferred way to use Quartz. You can either create a new Obsidian Vault or link one that your already have. New Vault If you don&rsquo;t have an existing Vault, download Obsidian and create a new Vault in the /content folder that you created and cloned during the setup . Linking an existing Vault The easiest way to use an existing Vault is to copy all of our files (directory and hierarchies intact) into the /content folder.Preview Changeshttps://quartz.jzhao.xyz/notes/preview-changes/Mon, 01 Jan 0001 00:00:00 +0000https://quartz.jzhao.xyz/notes/preview-changes/If you&rsquo;d like to preview what your Quartz site looks like before deploying it to the internet, here&rsquo;s exactly how to do that! Install hugo-obsidian This step will generate the list of backlinks for Hugo to parse. Ensure you have Go (&gt;= 1.16) installed. diff --git a/notes/obsidian/index.html b/notes/obsidian/index.html index a3e3393d5..82dc15665 100644 --- a/notes/obsidian/index.html +++ b/notes/obsidian/index.html @@ -1,12 +1,12 @@ -Obsidian Vault Integration

Obsidian Vault Integration

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Obsidian Vault Integration

Search IconIcon to open search

Setup

Obsidian is the preferred way to use Quartz. You can either create a new Obsidian Vault or link one that your already have.

New Vault

If you don’t have an existing Vault, download Obsidian and create a new Vault in the /content folder that you created and cloned during the setup -.

Linking an existing Vault

The easiest way to use an existing Vault is to copy all of our files (directory and hierarchies intact) into the /content folder.

Settings

Great, now that you have your Obsidian linked to your Quartz, let’s fix some settings so that they play well.

Under Options > Files and Links, set the New link format to always be Absolute Path in Vault and disabled WikiLinks so Obsidian generates regular Markdown links.

Obsidian SettingsObsidian Settings

Templates

Inserting front matter everytime you want to create a new Note gets really annoying really quickly. Luckily, Obsidian supports templates which makes inserting new content really easily.

If you decide to overwrite the /content folder completely, don’t remove the /content/templates folder!

Head over to Options > Core Plugins and enable the Templates plugin. Then go to Options > Hotkeys and set a hotkey for ‘Insert Template’. That way, when you create a new note, you can just press the hotkey for a new template and be ready to go!


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +.

Linking an existing Vault

The easiest way to use an existing Vault is to copy all of our files (directory and hierarchies intact) into the /content folder.

Settings

Great, now that you have your Obsidian linked to your Quartz, let’s fix some settings so that they play well.

Under Options > Files and Links, set the New link format to always be Absolute Path in Vault and disabled WikiLinks so Obsidian generates regular Markdown links.

Obsidian SettingsObsidian Settings

Templates

Inserting front matter everytime you want to create a new Note gets really annoying really quickly. Luckily, Obsidian supports templates which makes inserting new content really easily.

If you decide to overwrite the /content folder completely, don’t remove the /content/templates folder!

Head over to Options > Core Plugins and enable the Templates plugin. Then go to Options > Hotkeys and set a hotkey for ‘Insert Template’. That way, when you create a new note, you can just press the hotkey for a new template and be ready to go!


Interactive Graph

\ No newline at end of file diff --git a/notes/preview-changes/index.html b/notes/preview-changes/index.html index 9bdf7d896..5f8514476 100644 --- a/notes/preview-changes/index.html +++ b/notes/preview-changes/index.html @@ -1,9 +1,9 @@ -Preview Changes

Preview Changes

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Preview Changes

Search IconIcon to open search

If you’d like to preview what your Quartz site looks like before deploying it to the internet, here’s exactly how to do that!

Install hugo-obsidian

This step will generate the list of backlinks for Hugo to parse. Ensure you have Go (>= 1.16) installed.

1
@@ -38,5 +38,5 @@ $ cd <location-of-your-local-quartz>
 $ hugo server
 
 # View your site in a browser at http://localhost:1313/
-

Interactive Graph


Interactive Graph

\ No newline at end of file diff --git a/notes/setup/index.html b/notes/setup/index.html index 9350f0f52..54458ce23 100644 --- a/notes/setup/index.html +++ b/notes/setup/index.html @@ -1,9 +1,9 @@ -Setup

Setup

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Setup

Search IconIcon to open search

Making your own Quartz

Setting up Quartz requires a basic understanding of git. If you are unfamiliar, this resource is a great place to start!

Forking

A fork is a copy of a repository. Forking a repository allows you to freely experiment with changes without affecting the original project.

Navigate to the GitHub repository for the Quartz project:

πŸ“ @@ -16,5 +16,5 @@ is a great place to start!

Forking

A fork i

Editing

Great! Now you have everything you need to start editing and growing your digital garden. If you’re ready to start writing content already, check out the recommended flow for editing notes in Quartz.

✏️ Editing Notes in Quartz

Having problems? Checkout our FAQ and Troubleshooting guide -.


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +.


Interactive Graph

\ No newline at end of file diff --git a/notes/troubleshooting/index.html b/notes/troubleshooting/index.html index 3acf47ec7..a2acd8df6 100644 --- a/notes/troubleshooting/index.html +++ b/notes/troubleshooting/index.html @@ -1,9 +1,9 @@ -Troubleshooting and FAQ

Troubleshooting and FAQ

Search IconIcon to open search
+
`;else{results.innerHTML=a.map(a=>resultToHTML({...a,term})).join("\n");const b=document.getElementsByClassName("result-card");[...b].forEach(a=>{a.onclick=()=>{window.location.href=`${a.id}#:~:text=${encodeURIComponent(term)}`}})}})});const searchContainer=document.getElementById("search-container");function openSearch(){searchContainer.style.display==="none"||searchContainer.style.display===""?(source.value="",results.innerHTML="",searchContainer.style.display="block",source.focus()):searchContainer.style.display="none"}function closeSearch(){searchContainer.style.display="none"}document.addEventListener('keydown',a=>{a.key==="/"&&(a.preventDefault(),openSearch()),a.key==="Escape"&&(a.preventDefault(),closeSearch())}),window.addEventListener('DOMContentLoaded',()=>{const a=document.getElementById("search-icon");a.addEventListener('click',a=>{openSearch()}),a.addEventListener('keydown',a=>{openSearch()}),searchContainer.addEventListener('click',a=>{closeSearch()}),document.getElementById("search-space").addEventListener('click',a=>{a.stopPropagation()})})

Troubleshooting and FAQ

Search IconIcon to open search

Common Pitfalls

Can I publish only a subset of my pages?

Yes! Quartz makes selective publishing really easy. Heres a guide on excluding pages from being published .

Can I host this myself and not on GitHub Pages?

Yes! All built files can be found under /public in the master branch. More details under @@ -36,5 +36,5 @@ again. Make sure you wait 30 min to 1 hour for changes to take effect.

local editing

Can I use React/Vue/some other framework?

Not out of the box. You could probably make it work by editing /layouts/_default/single.html but that’s not what Quartz is designed to work with. 99% of things you are trying to do with those frameworks you can accomplish perfectly fine using just vanilla HTML/CSS/JS.

Still Stuck?

Quartz isn’t perfect! If you’re still having troubles, file an issue in the GitHub repo with as much information as you can reasonably provide. Alternatively, you can message me on Twitter and I’ll try to get back to you as soon as I can.

πŸ› -Submit an Issue


Interactive Graph

Made by Jacky Zhao using Quartz, Β© 2021

Home +Submit an Issue


Interactive Graph

\ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 81dc2091a..dd31c2263 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -1 +1 @@ -https://quartz.jzhao.xyz/0https://quartz.jzhao.xyz/categories/https://quartz.jzhao.xyz/notes/config/https://quartz.jzhao.xyz/notes/hosting/https://quartz.jzhao.xyz/notes/editing/https://quartz.jzhao.xyz/notes/external-hosting/https://quartz.jzhao.xyz/notes/ignore-notes/https://quartz.jzhao.xyz/moc/https://quartz.jzhao.xyz/notes/https://quartz.jzhao.xyz/notes/obsidian/https://quartz.jzhao.xyz/notes/preview-changes/https://quartz.jzhao.xyz/moc/directory/https://quartz.jzhao.xyz/notes/setup/https://quartz.jzhao.xyz/moc/showcase/https://quartz.jzhao.xyz/tags/https://quartz.jzhao.xyz/notes/troubleshooting/ \ No newline at end of file +https://quartz.jzhao.xyz/0https://quartz.jzhao.xyz/categories/https://quartz.jzhao.xyz/notes/config/https://quartz.jzhao.xyz/notes/hosting/https://quartz.jzhao.xyz/notes/editing/https://quartz.jzhao.xyz/notes/external-hosting/https://quartz.jzhao.xyz/notes/ignore-notes/https://quartz.jzhao.xyz/moc/https://quartz.jzhao.xyz/notes/https://quartz.jzhao.xyz/notes/obsidian/https://quartz.jzhao.xyz/notes/preview-changes/https://quartz.jzhao.xyz/notes/setup/https://quartz.jzhao.xyz/moc/showcase/https://quartz.jzhao.xyz/tags/https://quartz.jzhao.xyz/notes/troubleshooting/ \ No newline at end of file