🌐 Architecture


💻 Commands

Root Directory: cd /home/loca/dev/quartz/quartz

GoalCommandDescription
Test Changesnpm run serve:devRuns Dev Bench on 8081. Nginx proxies WebSocket TLS via port 3002.
Deploy Prodnpm run deploy:staticBuilds docs/ and symlinks output to /var/www/quartz-loca/current.
Bounce Servicesystemctl --user restart quartz-tinkerRestarts the background dev daemon.

⚠️ Node 22 Required. If path issues occur, run:
export PATH="/home/loca/dev/quartz/quartz/node-v22.16.0-linux-x64/bin:$PATH"


🎨 Configuration & Editing

1. Visual Configuration

Use the Interactive Config Builder to generate settings, then paste them directly into quartz.config.yaml.

2. Content Editing

  • Dev Bench: Edit Markdown in content/ (auto-reloads).
  • Production: Edit Markdown in docs/, then run npm run deploy:static.

🛠️ Technical Details

  • WebSocket Proxying: Node binds WS to local port 3003 (--wsPort). Nginx terminates TLS on public port 3002 (--wsPublicPort) and proxies traffic to prevent Node crashes.
  • Builder: content/sandbox/builder.html is a standalone, offline-safe HTML/JS file with zero external dependencies.
  • Deployment Verification: Run python3 scripts/workflowz/verify-deployment.py to validate paths, services, and SSL endpoints.
  • Directory Isolation: Keep docs/ (Prod) and content/ (Dev) strictly separated. Do not symlink them.