Quartz-w_Boswell

Publishing your Obsidian Vault Online with Quartz (brandonkboswell.com))

  1. clone jackyzha0/quartz: 🌱
  2. create repo for your Public Garden
  3. make Public Garden a submodule of your Quartz repo
  4. Install Hugo for local server
    • brew install hugo
  5. clone brandonkboswell/obsidian-export in libs folder
    • install Rust
    • cd ./libs/obsidian-export
    • cargo build
  6. clone Obsidian-Hugoin libs folder

Directory

app dir
Quartz /STORAGE/quartz/dnd
Vault /obsidian/vaults/dnd
hugo-obsidian /STORAGE/quartz/dnd/hugo-obsidian

Config Files

app dir
Hugo quartz/dnd/config.toml
Quartz quartz/dnd/data/config.yaml
Quartz Graph quartz/dnd/data/graphConfig.yaml
  1. add .export-ignore into target Obsidian Vault's root
templates/*
private/*
1-1/*
business/*
collections/*
people/*
to_publish/*
files/*
temporal/*
personal/*
screenshots/*
ideas/*
.trash/*
.obsidian/*
_content_calendar.md
  1. Start hugo server from Quartz dir ./serve.sh****
  2. ./compile.sh - easy to config variables on top of script
#!/bin/bash

QUARTZ="/mnt/uasis5/quartz/dnd"
HUGO_OBS="/mnt/uasis5/quartz/dnd/libs/hugo-obsidian"
OBS_EXP="/mnt/uasis5/quartz/dnd/libs/obsidian-export"
VAULT="/mnt/uasis5/obsidian/vaults/DnD"

cd $HUGO_OBS;
rm -fr $QUARTZ/content/*;
rm -rf $QUARTZ/public/*;

$OBS_EXP/target/debug/obsidian-export --add-titles --frontmatter=always $VAULT $QUARTZ/content;

go run $HUGO_OBS -input=$QUARTZ/content -output=$QUARTZ/assets/indices -index -root=$QUARTZ; (cd $QUARTZ && hugo --minify)
  1. publish to github