Compare commits
	
		
			2 Commits
		
	
	
		
			b4805a1031
			...
			v4
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 16ac065be5 | |||
| 
						 | 
					7f268bb227 | 
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@@ -9,3 +9,5 @@ tsconfig.tsbuildinfo
 | 
			
		||||
private/
 | 
			
		||||
.replit
 | 
			
		||||
replit.nix
 | 
			
		||||
content/
 | 
			
		||||
public/
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										46
									
								
								deploy.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										46
									
								
								deploy.sh
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,46 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
# Define the directory to search in  
 | 
			
		||||
BUILD_DIR="$HOME/quartz/"  
 | 
			
		||||
CONTENT_DIR="$HOME/quartz/content"  
 | 
			
		||||
  
 | 
			
		||||
# Find all .md files in the directory and remove all instances of `Blog/` to fix pathing  
 | 
			
		||||
# Needed since all my articles are in the /Blog folder and it's subolfers in Obsidian instread of the base directory  
 | 
			
		||||
find "$CONTENT_DIR" -type f -name "*.md" -print0 | while IFS= read -r -d $'\0' file; do  
 | 
			
		||||
   # Replace 'Blog/' with nothing in each file  
 | 
			
		||||
   sed -i 's|Blog/||g' "$file"
 | 
			
		||||
   echo "Processed: $file"
 | 
			
		||||
done  
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Find all markdown files in the content directory
 | 
			
		||||
find "$CONTENT_DIR" -name "*.md" -type f | while read -r file; do
 | 
			
		||||
    echo "Processing: $file"
 | 
			
		||||
    
 | 
			
		||||
    # Check if the file contains the Private section
 | 
			
		||||
    if grep -q "^# Private$" "$file"; then
 | 
			
		||||
        # Create a temporary file for processing
 | 
			
		||||
        temp_file=$(mktemp)
 | 
			
		||||
        
 | 
			
		||||
        # Use sed to remove content between # Private and # /Private inclusive
 | 
			
		||||
        sed '/^# Private$/,/^# \/Private$/d' "$file" > "$temp_file"
 | 
			
		||||
        
 | 
			
		||||
        # Replace original file with processed content
 | 
			
		||||
        mv "$temp_file" "$file"
 | 
			
		||||
        
 | 
			
		||||
        echo "Removed Private section from: $file"
 | 
			
		||||
    else
 | 
			
		||||
        echo "No Private section found in: $file"
 | 
			
		||||
    fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
# echo "Processing complete!"  
 | 
			
		||||
echo "All .md files have been processed."  
 | 
			
		||||
  
 | 
			
		||||
cd "${BUILD_DIR}"  
 | 
			
		||||
  
 | 
			
		||||
# build the html files  
 | 
			
		||||
npx quartz build  
 | 
			
		||||
  
 | 
			
		||||
# copy the files to the apache serve directory using a script  
 | 
			
		||||
sudo /usr/local/bin/sync-quartz-site
 | 
			
		||||
							
								
								
									
										40
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										40
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							@@ -96,13 +96,13 @@
 | 
			
		||||
    "node_modules/@bufbuild/protobuf": {
 | 
			
		||||
      "version": "2.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-+imAQkHf7U/Rwvu0wk1XWgsP3WnpCWmK7B48f0XqSNzgk64+grljTKC7pnO/xBiEMUziF7vKRfbBnOQhg126qQ==",
 | 
			
		||||
      "peer": true
 | 
			
		||||
      "integrity": "sha512-+imAQkHf7U/Rwvu0wk1XWgsP3WnpCWmK7B48f0XqSNzgk64+grljTKC7pnO/xBiEMUziF7vKRfbBnOQhg126qQ=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/@citation-js/core": {
 | 
			
		||||
      "version": "0.7.14",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/@citation-js/core/-/core-0.7.14.tgz",
 | 
			
		||||
      "integrity": "sha512-dgeGqYDSQmn2MtnWZkwPGpJQPh43yr1lAAr9jl1NJ9pIY1RXUQxtlAUZVur0V9PHdbfQC+kkvB1KC3VpgVV3MA==",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "@citation-js/date": "^0.5.0",
 | 
			
		||||
        "@citation-js/name": "^0.4.2",
 | 
			
		||||
@@ -2261,8 +2261,7 @@
 | 
			
		||||
    "node_modules/buffer-builder": {
 | 
			
		||||
      "version": "0.2.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/buffer-builder/-/buffer-builder-0.2.0.tgz",
 | 
			
		||||
      "integrity": "sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==",
 | 
			
		||||
      "peer": true
 | 
			
		||||
      "integrity": "sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/buffer-from": {
 | 
			
		||||
      "version": "1.1.2",
 | 
			
		||||
@@ -2380,8 +2379,7 @@
 | 
			
		||||
    "node_modules/colorjs.io": {
 | 
			
		||||
      "version": "0.5.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/colorjs.io/-/colorjs.io-0.5.2.tgz",
 | 
			
		||||
      "integrity": "sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==",
 | 
			
		||||
      "peer": true
 | 
			
		||||
      "integrity": "sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/comma-separated-tokens": {
 | 
			
		||||
      "version": "2.0.3",
 | 
			
		||||
@@ -2754,6 +2752,7 @@
 | 
			
		||||
      "version": "3.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=12"
 | 
			
		||||
      }
 | 
			
		||||
@@ -2932,6 +2931,7 @@
 | 
			
		||||
      "integrity": "sha512-9RiGKvCwaqxO2owP61uQ4BgNborAQskMR6QusfWzQqv7AZOg5oGehdY2pRJMTKuwxd1IDBP4rSbI5lHzU7SMsQ==",
 | 
			
		||||
      "hasInstallScript": true,
 | 
			
		||||
      "license": "MIT",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "bin": {
 | 
			
		||||
        "esbuild": "bin/esbuild"
 | 
			
		||||
      },
 | 
			
		||||
@@ -3342,7 +3342,6 @@
 | 
			
		||||
      "version": "4.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=8"
 | 
			
		||||
      }
 | 
			
		||||
@@ -5484,6 +5483,7 @@
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/preact/-/preact-10.27.2.tgz",
 | 
			
		||||
      "integrity": "sha512-5SYSgFKSyhCbk6SrXyMpqjb5+MQBgfvEKE/OC+PujcY34sOpqtr+0AZQtPYx5IA6VxynQ7rUPCtKzyovpj9Bpg==",
 | 
			
		||||
      "license": "MIT",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "funding": {
 | 
			
		||||
        "type": "opencollective",
 | 
			
		||||
        "url": "https://opencollective.com/preact"
 | 
			
		||||
@@ -6039,7 +6039,6 @@
 | 
			
		||||
      "version": "7.8.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
 | 
			
		||||
      "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "tslib": "^2.1.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6124,7 +6123,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "android"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6140,7 +6138,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "android"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6156,7 +6153,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "android"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6172,7 +6168,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "android"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6188,7 +6183,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "android"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6204,7 +6198,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "darwin"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6220,7 +6213,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "darwin"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6236,7 +6228,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6252,7 +6243,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6268,7 +6258,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6284,7 +6273,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6300,7 +6288,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6316,7 +6303,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6332,7 +6318,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6348,7 +6333,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6364,7 +6348,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6380,7 +6363,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "linux"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6396,7 +6378,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "win32"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6412,7 +6393,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "win32"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6428,7 +6408,6 @@
 | 
			
		||||
      "os": [
 | 
			
		||||
        "win32"
 | 
			
		||||
      ],
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "engines": {
 | 
			
		||||
        "node": ">=14.0.0"
 | 
			
		||||
      }
 | 
			
		||||
@@ -6568,6 +6547,7 @@
 | 
			
		||||
      "version": "1.26.2",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.26.2.tgz",
 | 
			
		||||
      "integrity": "sha512-iP7u2NA9A6JwRRCkIUREEX2cMhlYV5EBmbbSlfSRvPThwca8HBRbVkWuNWW+kw9+i6BSUZqqG6YeUs5dC2SjZw==",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "@shikijs/core": "1.26.2",
 | 
			
		||||
        "@shikijs/engine-javascript": "1.26.2",
 | 
			
		||||
@@ -6737,7 +6717,6 @@
 | 
			
		||||
      "version": "8.1.1",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
 | 
			
		||||
      "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
 | 
			
		||||
      "peer": true,
 | 
			
		||||
      "dependencies": {
 | 
			
		||||
        "has-flag": "^4.0.0"
 | 
			
		||||
      },
 | 
			
		||||
@@ -7073,8 +7052,7 @@
 | 
			
		||||
    "node_modules/varint": {
 | 
			
		||||
      "version": "6.0.0",
 | 
			
		||||
      "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz",
 | 
			
		||||
      "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==",
 | 
			
		||||
      "peer": true
 | 
			
		||||
      "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg=="
 | 
			
		||||
    },
 | 
			
		||||
    "node_modules/vfile": {
 | 
			
		||||
      "version": "6.0.3",
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ import * as Plugin from "./quartz/plugins"
 | 
			
		||||
 */
 | 
			
		||||
const config: QuartzConfig = {
 | 
			
		||||
  configuration: {
 | 
			
		||||
    pageTitle: "Quartz 4",
 | 
			
		||||
    pageTitle: "Yuriy's Notes",
 | 
			
		||||
    pageTitleSuffix: "",
 | 
			
		||||
    enableSPA: true,
 | 
			
		||||
    enablePopovers: true,
 | 
			
		||||
@@ -16,12 +16,12 @@ const config: QuartzConfig = {
 | 
			
		||||
      provider: "plausible",
 | 
			
		||||
    },
 | 
			
		||||
    locale: "en-US",
 | 
			
		||||
    baseUrl: "quartz.jzhao.xyz",
 | 
			
		||||
    baseUrl: "zinchuk.xyz",
 | 
			
		||||
    ignorePatterns: ["private", "templates", ".obsidian"],
 | 
			
		||||
    defaultDateType: "modified",
 | 
			
		||||
    theme: {
 | 
			
		||||
      fontOrigin: "googleFonts",
 | 
			
		||||
      cdnCaching: true,
 | 
			
		||||
      cdnCaching: false,
 | 
			
		||||
      typography: {
 | 
			
		||||
        header: "Schibsted Grotesk",
 | 
			
		||||
        body: "Source Sans Pro",
 | 
			
		||||
 
 | 
			
		||||
@@ -8,8 +8,6 @@ export const sharedPageComponents: SharedLayout = {
 | 
			
		||||
  afterBody: [],
 | 
			
		||||
  footer: Component.Footer({
 | 
			
		||||
    links: {
 | 
			
		||||
      GitHub: "https://github.com/jackyzha0/quartz",
 | 
			
		||||
      "Discord Community": "https://discord.gg/cRFFHYye7t",
 | 
			
		||||
    },
 | 
			
		||||
  }),
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user