Complete guide to the reorganized Quartz vault structure, workflows, and automation.
- Quick Start
- Folder Structure
- Daily Workflow
- Sprint Management
- Task Management
- Project Organization
- Quartz Publishing
- Automation Scripts
- Capture ideas → Drop notes in
content/_Inbox/ - Work on sprints → Edit
content/_Sprints/Active/[sprint-name].md - Check tasks → View
content/_Tasks/Current-Sprint.md - Organize weekly → Run organize script on sprint files
- Publish → Run
npx quartz buildto publish public content
# Create new sprint
cd content/_System/Scripts && ./quick-start.sh
# Organize sprint content
python3 organize_sprint.py ../../_Sprints/Active/SSG-XXX.md
# Build and serve Quartz
npx quartz build && npx quartz servecontent/
├── _Inbox/ # Quick capture (private)
├── _Sprints/ # Sprint documentation (private)
│ ├── Active/ # Current sprints
│ └── Archive/ # Completed sprints
├── _Tasks/ # Task management (private)
│ ├── Projects/ # Project-specific tasks and docs
│ ├── Current-Sprint.md
│ └── All-Tasks.md
├── _System/ # Scripts and templates (private)
├── Physical-Notes/ # Scanned physical notes (public)
├── Backend/ # Backend documentation (public)
├── Components/ # Reusable components (public)
├── Ideas/ # Brainstorming (public)
├── Meetings/ # Meeting notes (public)
└── Research/ # Research notes (public)
Privacy Rule: Folders prefixed with _ are private and excluded from Quartz publishing.
# Open current sprint
open content/_Sprints/Active/[current-sprint].md
# Check today's tasks
open content/_Tasks/Current-Sprint.md- Quick notes →
_Inbox/(organize later) - Sprint work → Write directly in sprint files
- Physical notes → Take photos, paste in
Physical-Notes/
- Check off completed tasks
- Add new tasks discovered during work
- Quick review of inbox
# Run organization script
cd content/_System/Scripts
python3 organize_sprint.py ../../_Sprints/Active/SSG-XXX.md
# Review and clear inbox
# Archive completed sprint if doneEach sprint file (_Sprints/Active/SSG-XXX.md) contains:
---
sprint: SSG-XXX
status: active
start: YYYY-MM-DD
end: YYYY-MM-DD
---
# Sprint SSG-XXX
## Goals
- Main objective 1
- Main objective 2
## Tasks
- [ ] Task 1 #project-name
- [ ] Task 2 #project-name
## Components
### ComponentName
Description and notes about component...
## Research
### Topic
Research notes...- Create sprint → Use template or quick-start script
- Work daily → Write freely in sprint file
- Organize weekly → Run
organize_sprint.py - Complete sprint → Move to
_Sprints/Archive/YYYY/
Current-Sprint.md- Tasks from active sprint onlyAll-Tasks.md- All incomplete tasks across vaultBy-Project.md- Tasks grouped by project
- [ ] Task description #project-name #tagProject tags:
#star-sailors- Web app#bumble- React Native farming game#godot-mars- Godot game#station-198- iOS app#roving- Exploration game
Tasks automatically organize into project directories when you run organize_sprint.py:
cd content/_System/Scripts
python3 organize_sprint.py ../../_Sprints/Active/SSG-XXX.mdThis extracts:
- Components →
_Tasks/Projects/[project]/Components/ - Features →
_Tasks/Projects/[project]/Features/ - Research →
_Tasks/Projects/[project]/Research/ - Tasks → Project task files
Each project in _Tasks/Projects/ follows this structure:
_Tasks/Projects/ProjectName/
├── Components/ # Component documentation
├── Features/ # Feature specifications
├── Mechanics/ # Game mechanics (for games)
├── Research/ # Technical research
├── Media/ # Screenshots, diagrams, etc.
│ ├── Screenshots/
│ ├── Physical-Notes/
│ └── Diagrams/
├── index.md # Project overview
└── Tasks.md # Project task list
- Godot-Mars - Mars exploration game
- Star-Sailors - Web citizen science platform
- Bumble - React Native pollinator farming game
- Station-198 - iOS subscription app
- Roving - Exploration game
- Shared - Cross-project resources
- Take photos of physical notes
- Create daily note →
Physical-Notes/YYYY-MM-DD.md - Paste images into Physical-Notes directory
- Images auto-renamed to
YYYY-MM-DD-01.png, etc. - Transcribe key points in the markdown file
- Extract decisions → Create project documentation
- Extract tasks → Add to project task files
---
title: Physical Notes - Date
date: YYYY-MM-DD
tags:
- physical-notes
- project-name
- design-decision
projects:
- ProjectName
---
# Date - Topic
![[YYYY-MM-DD-01.png]]
## Key Takeaways
- Decision 1
- Design element 2
## Generated Tasks
- [ ] Task from notes
**Related:** [[../_Tasks/Projects/ProjectName/document]]Public (published):
- Everything not starting with
_ - Physical-Notes/
- Components/
- Research/
- Ideas/
- Meetings/
Private (hidden):
- _Inbox/
- _Sprints/
- _Tasks/
- _System/
# Build static site
npx quartz build
# Serve locally
npx quartz serve
# Build and serve
npx quartz build && npx quartz serveQuartz ignores private folders via .quartzignore:
content/_Inbox
content/_Sprints
content/_Tasks
content/_System
All scripts in content/_System/Scripts/
Creates new sprint file from template.
cd content/_System/Scripts
./quick-start.sh
# Follow prompts for sprint name and datesExtracts and organizes content from sprint files.
python3 organize_sprint.py ../../_Sprints/Active/SSG-XXX.mdWhat it does:
- Extracts components to project folders
- Organizes features by project
- Moves research notes
- Updates task lists
- Creates proper file structure
Creates shortcuts for task management.
./create-task-shortcut.shScripts recognize these tags for organization:
#star-sailors,#bumble,#roving,#station-198,#godot-mars#component,#feature,#research#backend,#frontend,#database
#star-sailors- Main web app#bumble- Farming game#godot-mars- Mars game#station-198- iOS app#roving- Exploration game
#component- Reusable component#feature- Feature specification#research- Research notes#design-decision- Design choice documentation#physical-notes- Scanned physical notes
#task- Actionable task#wip- Work in progress#blocked- Blocked task#done- Completed
#backend,#frontend,#database#api,#ui,#testing#mechanics,#narrative,#art
- Write freely in sprint files during work
- Don't worry about perfect organization during flow state
- Use weekly organization script to clean up
- Tag tasks with project names
- Tag content with type tags
- Makes automation work better
- Link tasks to components
- Link components to research
- Link physical notes to project docs
- Creates knowledge graph
- Review inbox and organize
- Run organize script on sprint files
- Archive completed sprints
- Update task lists
- Take photos regularly
- Transcribe same day while fresh
- Extract decisions immediately
- Link to affected project areas
# Make executable
chmod +x content/_System/Scripts/*.sh
# Check Python
python3 --version- Organization script updates internal links
- Check relative paths in markdown
- Use
[[filename]]not[[path/to/filename]]when possible
# Clean build
rm -rf .quartz-cache
npx quartz build
# Check for syntax errors in markdown- Check task syntax:
- [ ] Task #project - Ensure proper spacing after checkbox
- Verify project tag is recognized
# Open current sprint
open content/_Sprints/Active/[sprint].md
# Check tasks
open content/_Tasks/Current-Sprint.md
# Build Quartz
npx quartz build && npx quartz serve# Organize sprint
cd content/_System/Scripts
python3 organize_sprint.py ../../_Sprints/Active/SSG-XXX.md
# Archive completed sprint
mv content/_Sprints/Active/SSG-XXX.md content/_Sprints/Archive/2025/- Sprint files:
content/_Sprints/Active/ - Task views:
content/_Tasks/ - Project docs:
content/_Tasks/Projects/ - Physical notes:
content/Physical-Notes/ - Scripts:
content/_System/Scripts/
This vault is designed for:
- Fast capture during work sessions
- Flexible organization when you have time
- Multi-project management with clear separation
- Public/private control for Quartz publishing
- Automation to reduce manual organization
The key principle: Write freely, organize later, automate everything possible.