roadmap/docs/authoring content.md

2.6 KiB

title draft
Authoring Content true

All of the content in your Quartz should go in the /content folder. The content for the home page of your Quartz lives in content/index.md. If you've docs/index#🪴 Get Started already, this folder should already be initailized. Any Markdown in this folder will get processed by Quartz.

It is recommended that you use Obsidian as a way to edit and maintain your Quartz. It comes with a nice editor and graphical interface to preview, edit, and link your local files and attachments.

Got everything setup? Let's build and preview your Quartz locally!

Syntax

As Quartz uses Markdown files as the main way of writing content, it fully supports Markdown syntax. By default, Quartz also ships with a few syntax extensions like Github Flavored Markdown (footnotes, strikethrough, tables, tasklists) and Obsidian Flavored Markdown (callouts, wikilinks).

Additionally, Quartz also allows you to specify additional metadata in your notes called frontmatter.

---
title: Example Title
draft: false
tags:
  - example-tag
---

The rest of your content lives here. You can use **Markdown** here :)

Some common frontmatter fields that are natively supported by Quartz:

  • title: Title of the page. If it isn't provided, Quartz will use the name of the file as the title.
  • aliases: Other names for this note. This is a list of strings.
  • draft: Whether to publish the page or not. This is one way to make private pages in Quartz.
  • date: A string representing the day the note was published. Normally uses YYYY-MM-DD format.

Syncing your Content

When your Quartz is at a point you're happy with, you can save your changes to GitHub by doing npx quartz sync.

[!hint] Flags and options For full help options, you can run npx quartz sync --help.

Most of these have sensible defaults but you can override them if you have a custom setup:

  • -d or --directory: the content folder. This is normally just content
  • -v or --verbose: print out extra logging information
  • --commit or --no-commit: whether to make a git commit for your changes
  • --push or --no-push: whether to push updates to your GitHub fork of Quartz
  • --pull or --no-pull: whether to try and pull in any updates from your GitHub fork (i.e. from other devices) before pushing