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. If you don’t have an account, you can make on for free here. More details about forking a repo can be found on GitHub’s documentation.

Cloning

After you’ve made a fork of the repository, you need to download the files locally onto your machine. Ensure you have git, then type the following command replacing YOUR-USERNAME with your GitHub username.

$ git clone https://github.com/YOUR-USERNAME/quartz

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.

Updating

Haven’t updated Quartz in a while and want all the cool new optimizations? On Unix/Mac systems you can run the following command for a one-line update! This command will show you a log summary of all commits since you last updated, press q to acknowledge this. Then, it will show you each change in turn and press y to accept the patch or n to reject it. Usually you should press y for most of these unless it conflicts with existing changes you’ve made!

make update
 
# or, if you don't want the interactive parts and just want the update
make update-force

Or, manually checkout the changes yourself.

⚠️ WARNING ⚠️

If you customized the files in data/, or anything inside layouts/, your customization may be overwritten! Make sure you have a copy of these changes if you don’t want to lose them.

# add Quartz as a remote host
git remote add upstream [email protected]:jackyzha0/quartz.git
 
# index and fetch changes
git fetch upstream
git checkout -p upstream/hugo -- layouts .github Makefile assets/js assets/styles/base.scss assets/styles/darkmode.scss config.toml data