Compare commits
	
		
			No commits in common. "f84e993d4714967d0316d4a9a90bf22ea3459068" and "6693da97c51f383e9e9e82909e6bbecdb6e170a0" have entirely different histories.
		
	
	
		
			f84e993d47
			...
			6693da97c5
		
	
		| 
						 | 
					@ -0,0 +1,130 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  "$ref": "#/definitions/blog",
 | 
				
			||||||
 | 
					  "definitions": {
 | 
				
			||||||
 | 
					    "blog": {
 | 
				
			||||||
 | 
					      "type": "object",
 | 
				
			||||||
 | 
					      "properties": {
 | 
				
			||||||
 | 
					        "title": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "description": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "pubDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "updatedDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "heroImage": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "not": {}
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "category": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "tags": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "draft": {
 | 
				
			||||||
 | 
					          "type": "boolean"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "readTime": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "image": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "excerpt": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "author": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "github": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "live": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "technologies": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "$schema": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "required": [
 | 
				
			||||||
 | 
					        "title",
 | 
				
			||||||
 | 
					        "pubDate"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "additionalProperties": true
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "$schema": "http://json-schema.org/draft-07/schema#"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,130 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  "$ref": "#/definitions/configurations",
 | 
				
			||||||
 | 
					  "definitions": {
 | 
				
			||||||
 | 
					    "configurations": {
 | 
				
			||||||
 | 
					      "type": "object",
 | 
				
			||||||
 | 
					      "properties": {
 | 
				
			||||||
 | 
					        "title": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "description": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "pubDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "updatedDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "heroImage": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "not": {}
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "category": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "tags": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "draft": {
 | 
				
			||||||
 | 
					          "type": "boolean"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "readTime": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "image": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "excerpt": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "author": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "github": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "live": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "technologies": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "$schema": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "required": [
 | 
				
			||||||
 | 
					        "title",
 | 
				
			||||||
 | 
					        "pubDate"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "additionalProperties": true
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "$schema": "http://json-schema.org/draft-07/schema#"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,113 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  "$ref": "#/definitions/external-posts",
 | 
				
			||||||
 | 
					  "definitions": {
 | 
				
			||||||
 | 
					    "external-posts": {
 | 
				
			||||||
 | 
					      "type": "object",
 | 
				
			||||||
 | 
					      "properties": {
 | 
				
			||||||
 | 
					        "title": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "description": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "pubDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "updatedDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "heroImage": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "category": {
 | 
				
			||||||
 | 
					          "type": "string",
 | 
				
			||||||
 | 
					          "default": "Uncategorized"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "tags": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          },
 | 
				
			||||||
 | 
					          "default": []
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "draft": {
 | 
				
			||||||
 | 
					          "type": "boolean",
 | 
				
			||||||
 | 
					          "default": false
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "readTime": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "image": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "excerpt": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "author": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "github": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "live": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "technologies": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "$schema": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "required": [
 | 
				
			||||||
 | 
					        "title",
 | 
				
			||||||
 | 
					        "pubDate"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "additionalProperties": false
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "$schema": "http://json-schema.org/draft-07/schema#"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,130 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  "$ref": "#/definitions/posts",
 | 
				
			||||||
 | 
					  "definitions": {
 | 
				
			||||||
 | 
					    "posts": {
 | 
				
			||||||
 | 
					      "type": "object",
 | 
				
			||||||
 | 
					      "properties": {
 | 
				
			||||||
 | 
					        "title": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "description": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "pubDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "updatedDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "heroImage": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "not": {}
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "category": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "tags": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "draft": {
 | 
				
			||||||
 | 
					          "type": "boolean"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "readTime": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "image": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "excerpt": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "author": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "github": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "live": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "technologies": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "$schema": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "required": [
 | 
				
			||||||
 | 
					        "title",
 | 
				
			||||||
 | 
					        "pubDate"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "additionalProperties": true
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "$schema": "http://json-schema.org/draft-07/schema#"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,130 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  "$ref": "#/definitions/projects",
 | 
				
			||||||
 | 
					  "definitions": {
 | 
				
			||||||
 | 
					    "projects": {
 | 
				
			||||||
 | 
					      "type": "object",
 | 
				
			||||||
 | 
					      "properties": {
 | 
				
			||||||
 | 
					        "title": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "description": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "pubDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "updatedDate": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "string"
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date-time"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string",
 | 
				
			||||||
 | 
					                  "format": "date"
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "integer",
 | 
				
			||||||
 | 
					                  "format": "unix-time"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "heroImage": {
 | 
				
			||||||
 | 
					          "anyOf": [
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "anyOf": [
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "not": {}
 | 
				
			||||||
 | 
					                },
 | 
				
			||||||
 | 
					                {
 | 
				
			||||||
 | 
					                  "type": "string"
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					              ]
 | 
				
			||||||
 | 
					            },
 | 
				
			||||||
 | 
					            {
 | 
				
			||||||
 | 
					              "type": "null"
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					          ]
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "category": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "tags": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "draft": {
 | 
				
			||||||
 | 
					          "type": "boolean"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "readTime": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "image": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "excerpt": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "author": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "github": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "live": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "technologies": {
 | 
				
			||||||
 | 
					          "type": "array",
 | 
				
			||||||
 | 
					          "items": {
 | 
				
			||||||
 | 
					            "type": "string"
 | 
				
			||||||
 | 
					          }
 | 
				
			||||||
 | 
					        },
 | 
				
			||||||
 | 
					        "$schema": {
 | 
				
			||||||
 | 
					          "type": "string"
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					      },
 | 
				
			||||||
 | 
					      "required": [
 | 
				
			||||||
 | 
					        "title",
 | 
				
			||||||
 | 
					        "pubDate"
 | 
				
			||||||
 | 
					      ],
 | 
				
			||||||
 | 
					      "additionalProperties": true
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  },
 | 
				
			||||||
 | 
					  "$schema": "http://json-schema.org/draft-07/schema#"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					export default new Map();
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1 @@
 | 
				
			||||||
 | 
					export default new Map();
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,207 @@
 | 
				
			||||||
 | 
					declare module 'astro:content' {
 | 
				
			||||||
 | 
						interface Render {
 | 
				
			||||||
 | 
							'.mdx': Promise<{
 | 
				
			||||||
 | 
								Content: import('astro').MarkdownInstance<{}>['Content'];
 | 
				
			||||||
 | 
								headings: import('astro').MarkdownHeading[];
 | 
				
			||||||
 | 
								remarkPluginFrontmatter: Record<string, any>;
 | 
				
			||||||
 | 
								components: import('astro').MDXInstance<{}>['components'];
 | 
				
			||||||
 | 
							}>;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					declare module 'astro:content' {
 | 
				
			||||||
 | 
						export interface RenderResult {
 | 
				
			||||||
 | 
							Content: import('astro/runtime/server/index.js').AstroComponentFactory;
 | 
				
			||||||
 | 
							headings: import('astro').MarkdownHeading[];
 | 
				
			||||||
 | 
							remarkPluginFrontmatter: Record<string, any>;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						interface Render {
 | 
				
			||||||
 | 
							'.md': Promise<RenderResult>;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export interface RenderedContent {
 | 
				
			||||||
 | 
							html: string;
 | 
				
			||||||
 | 
							metadata?: {
 | 
				
			||||||
 | 
								imagePaths: Array<string>;
 | 
				
			||||||
 | 
								[key: string]: unknown;
 | 
				
			||||||
 | 
							};
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					declare module 'astro:content' {
 | 
				
			||||||
 | 
						type Flatten<T> = T extends { [K: string]: infer U } ? U : never;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type CollectionKey = keyof AnyEntryMap;
 | 
				
			||||||
 | 
						export type CollectionEntry<C extends CollectionKey> = Flatten<AnyEntryMap[C]>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type ContentCollectionKey = keyof ContentEntryMap;
 | 
				
			||||||
 | 
						export type DataCollectionKey = keyof DataEntryMap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type AllValuesOf<T> = T extends any ? T[keyof T] : never;
 | 
				
			||||||
 | 
						type ValidContentEntrySlug<C extends keyof ContentEntryMap> = AllValuesOf<
 | 
				
			||||||
 | 
							ContentEntryMap[C]
 | 
				
			||||||
 | 
						>['slug'];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type ReferenceDataEntry<
 | 
				
			||||||
 | 
							C extends CollectionKey,
 | 
				
			||||||
 | 
							E extends keyof DataEntryMap[C] = string,
 | 
				
			||||||
 | 
						> = {
 | 
				
			||||||
 | 
							collection: C;
 | 
				
			||||||
 | 
							id: E;
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
						export type ReferenceContentEntry<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}) = string,
 | 
				
			||||||
 | 
						> = {
 | 
				
			||||||
 | 
							collection: C;
 | 
				
			||||||
 | 
							slug: E;
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** @deprecated Use `getEntry` instead. */
 | 
				
			||||||
 | 
						export function getEntryBySlug<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							// Note that this has to accept a regular string too, for SSR
 | 
				
			||||||
 | 
							entrySlug: E,
 | 
				
			||||||
 | 
						): E extends ValidContentEntrySlug<C>
 | 
				
			||||||
 | 
							? Promise<CollectionEntry<C>>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** @deprecated Use `getEntry` instead. */
 | 
				
			||||||
 | 
						export function getDataEntryById<C extends keyof DataEntryMap, E extends keyof DataEntryMap[C]>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							entryId: E,
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function getCollection<C extends keyof AnyEntryMap, E extends CollectionEntry<C>>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							filter?: (entry: CollectionEntry<C>) => entry is E,
 | 
				
			||||||
 | 
						): Promise<E[]>;
 | 
				
			||||||
 | 
						export function getCollection<C extends keyof AnyEntryMap>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							filter?: (entry: CollectionEntry<C>) => unknown,
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>[]>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							entry: ReferenceContentEntry<C, E>,
 | 
				
			||||||
 | 
						): E extends ValidContentEntrySlug<C>
 | 
				
			||||||
 | 
							? Promise<CollectionEntry<C>>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof DataEntryMap,
 | 
				
			||||||
 | 
							E extends keyof DataEntryMap[C] | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							entry: ReferenceDataEntry<C, E>,
 | 
				
			||||||
 | 
						): E extends keyof DataEntryMap[C]
 | 
				
			||||||
 | 
							? Promise<DataEntryMap[C][E]>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							slug: E,
 | 
				
			||||||
 | 
						): E extends ValidContentEntrySlug<C>
 | 
				
			||||||
 | 
							? Promise<CollectionEntry<C>>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof DataEntryMap,
 | 
				
			||||||
 | 
							E extends keyof DataEntryMap[C] | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							id: E,
 | 
				
			||||||
 | 
						): E extends keyof DataEntryMap[C]
 | 
				
			||||||
 | 
							? string extends keyof DataEntryMap[C]
 | 
				
			||||||
 | 
								? Promise<DataEntryMap[C][E]> | undefined
 | 
				
			||||||
 | 
								: Promise<DataEntryMap[C][E]>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** Resolve an array of entry references from the same collection */
 | 
				
			||||||
 | 
						export function getEntries<C extends keyof ContentEntryMap>(
 | 
				
			||||||
 | 
							entries: ReferenceContentEntry<C, ValidContentEntrySlug<C>>[],
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>[]>;
 | 
				
			||||||
 | 
						export function getEntries<C extends keyof DataEntryMap>(
 | 
				
			||||||
 | 
							entries: ReferenceDataEntry<C, keyof DataEntryMap[C]>[],
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>[]>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function render<C extends keyof AnyEntryMap>(
 | 
				
			||||||
 | 
							entry: AnyEntryMap[C][string],
 | 
				
			||||||
 | 
						): Promise<RenderResult>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function reference<C extends keyof AnyEntryMap>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
						): import('astro/zod').ZodEffects<
 | 
				
			||||||
 | 
							import('astro/zod').ZodString,
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap
 | 
				
			||||||
 | 
								? ReferenceContentEntry<C, ValidContentEntrySlug<C>>
 | 
				
			||||||
 | 
								: ReferenceDataEntry<C, keyof DataEntryMap[C]>
 | 
				
			||||||
 | 
						>;
 | 
				
			||||||
 | 
						// Allow generic `string` to avoid excessive type errors in the config
 | 
				
			||||||
 | 
						// if `dev` is not running to update as you edit.
 | 
				
			||||||
 | 
						// Invalid collection names will be caught at build time.
 | 
				
			||||||
 | 
						export function reference<C extends string>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
						): import('astro/zod').ZodEffects<import('astro/zod').ZodString, never>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type ReturnTypeOrOriginal<T> = T extends (...args: any[]) => infer R ? R : T;
 | 
				
			||||||
 | 
						type InferEntrySchema<C extends keyof AnyEntryMap> = import('astro/zod').infer<
 | 
				
			||||||
 | 
							ReturnTypeOrOriginal<Required<ContentConfig['collections'][C]>['schema']>
 | 
				
			||||||
 | 
						>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type ContentEntryMap = {
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type DataEntryMap = {
 | 
				
			||||||
 | 
							"blog": Record<string, {
 | 
				
			||||||
 | 
					  id: string;
 | 
				
			||||||
 | 
					  render(): Render[".md"];
 | 
				
			||||||
 | 
					  slug: string;
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "blog";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"blog">;
 | 
				
			||||||
 | 
					  rendered?: RenderedContent;
 | 
				
			||||||
 | 
					  filePath?: string;
 | 
				
			||||||
 | 
					}>;
 | 
				
			||||||
 | 
					"configurations": Record<string, {
 | 
				
			||||||
 | 
					  id: string;
 | 
				
			||||||
 | 
					  render(): Render[".md"];
 | 
				
			||||||
 | 
					  slug: string;
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "configurations";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"configurations">;
 | 
				
			||||||
 | 
					  rendered?: RenderedContent;
 | 
				
			||||||
 | 
					  filePath?: string;
 | 
				
			||||||
 | 
					}>;
 | 
				
			||||||
 | 
					"posts": Record<string, {
 | 
				
			||||||
 | 
					  id: string;
 | 
				
			||||||
 | 
					  render(): Render[".md"];
 | 
				
			||||||
 | 
					  slug: string;
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">;
 | 
				
			||||||
 | 
					  rendered?: RenderedContent;
 | 
				
			||||||
 | 
					  filePath?: string;
 | 
				
			||||||
 | 
					}>;
 | 
				
			||||||
 | 
					"projects": Record<string, {
 | 
				
			||||||
 | 
					  id: string;
 | 
				
			||||||
 | 
					  render(): Render[".md"];
 | 
				
			||||||
 | 
					  slug: string;
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "projects";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"projects">;
 | 
				
			||||||
 | 
					  rendered?: RenderedContent;
 | 
				
			||||||
 | 
					  filePath?: string;
 | 
				
			||||||
 | 
					}>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type AnyEntryMap = ContentEntryMap & DataEntryMap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type ContentConfig = typeof import("../src/content/config.js");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							| 
						 | 
					@ -0,0 +1,5 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
						"_variables": {
 | 
				
			||||||
 | 
							"lastUpdateCheck": 1745122883007
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -0,0 +1,329 @@
 | 
				
			||||||
 | 
					declare module 'astro:content' {
 | 
				
			||||||
 | 
						interface Render {
 | 
				
			||||||
 | 
							'.mdx': Promise<{
 | 
				
			||||||
 | 
								Content: import('astro').MarkdownInstance<{}>['Content'];
 | 
				
			||||||
 | 
								headings: import('astro').MarkdownHeading[];
 | 
				
			||||||
 | 
								remarkPluginFrontmatter: Record<string, any>;
 | 
				
			||||||
 | 
							}>;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					declare module 'astro:content' {
 | 
				
			||||||
 | 
						interface Render {
 | 
				
			||||||
 | 
							'.md': Promise<{
 | 
				
			||||||
 | 
								Content: import('astro').MarkdownInstance<{}>['Content'];
 | 
				
			||||||
 | 
								headings: import('astro').MarkdownHeading[];
 | 
				
			||||||
 | 
								remarkPluginFrontmatter: Record<string, any>;
 | 
				
			||||||
 | 
							}>;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					declare module 'astro:content' {
 | 
				
			||||||
 | 
						export { z } from 'astro/zod';
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type Flatten<T> = T extends { [K: string]: infer U } ? U : never;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type CollectionKey = keyof AnyEntryMap;
 | 
				
			||||||
 | 
						export type CollectionEntry<C extends CollectionKey> = Flatten<AnyEntryMap[C]>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type ContentCollectionKey = keyof ContentEntryMap;
 | 
				
			||||||
 | 
						export type DataCollectionKey = keyof DataEntryMap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						// This needs to be in sync with ImageMetadata
 | 
				
			||||||
 | 
						export type ImageFunction = () => import('astro/zod').ZodObject<{
 | 
				
			||||||
 | 
							src: import('astro/zod').ZodString;
 | 
				
			||||||
 | 
							width: import('astro/zod').ZodNumber;
 | 
				
			||||||
 | 
							height: import('astro/zod').ZodNumber;
 | 
				
			||||||
 | 
							format: import('astro/zod').ZodUnion<
 | 
				
			||||||
 | 
								[
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'png'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'jpg'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'jpeg'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'tiff'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'webp'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'gif'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'svg'>,
 | 
				
			||||||
 | 
									import('astro/zod').ZodLiteral<'avif'>,
 | 
				
			||||||
 | 
								]
 | 
				
			||||||
 | 
							>;
 | 
				
			||||||
 | 
						}>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type BaseSchemaWithoutEffects =
 | 
				
			||||||
 | 
							| import('astro/zod').AnyZodObject
 | 
				
			||||||
 | 
							| import('astro/zod').ZodUnion<[BaseSchemaWithoutEffects, ...BaseSchemaWithoutEffects[]]>
 | 
				
			||||||
 | 
							| import('astro/zod').ZodDiscriminatedUnion<string, import('astro/zod').AnyZodObject[]>
 | 
				
			||||||
 | 
							| import('astro/zod').ZodIntersection<BaseSchemaWithoutEffects, BaseSchemaWithoutEffects>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type BaseSchema =
 | 
				
			||||||
 | 
							| BaseSchemaWithoutEffects
 | 
				
			||||||
 | 
							| import('astro/zod').ZodEffects<BaseSchemaWithoutEffects>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export type SchemaContext = { image: ImageFunction };
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type DataCollectionConfig<S extends BaseSchema> = {
 | 
				
			||||||
 | 
							type: 'data';
 | 
				
			||||||
 | 
							schema?: S | ((context: SchemaContext) => S);
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type ContentCollectionConfig<S extends BaseSchema> = {
 | 
				
			||||||
 | 
							type?: 'content';
 | 
				
			||||||
 | 
							schema?: S | ((context: SchemaContext) => S);
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type CollectionConfig<S> = ContentCollectionConfig<S> | DataCollectionConfig<S>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function defineCollection<S extends BaseSchema>(
 | 
				
			||||||
 | 
							input: CollectionConfig<S>
 | 
				
			||||||
 | 
						): CollectionConfig<S>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type AllValuesOf<T> = T extends any ? T[keyof T] : never;
 | 
				
			||||||
 | 
						type ValidContentEntrySlug<C extends keyof ContentEntryMap> = AllValuesOf<
 | 
				
			||||||
 | 
							ContentEntryMap[C]
 | 
				
			||||||
 | 
						>['slug'];
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function getEntryBySlug<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							// Note that this has to accept a regular string too, for SSR
 | 
				
			||||||
 | 
							entrySlug: E
 | 
				
			||||||
 | 
						): E extends ValidContentEntrySlug<C>
 | 
				
			||||||
 | 
							? Promise<CollectionEntry<C>>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function getDataEntryById<C extends keyof DataEntryMap, E extends keyof DataEntryMap[C]>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							entryId: E
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function getCollection<C extends keyof AnyEntryMap, E extends CollectionEntry<C>>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							filter?: (entry: CollectionEntry<C>) => entry is E
 | 
				
			||||||
 | 
						): Promise<E[]>;
 | 
				
			||||||
 | 
						export function getCollection<C extends keyof AnyEntryMap>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							filter?: (entry: CollectionEntry<C>) => unknown
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>[]>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}),
 | 
				
			||||||
 | 
						>(entry: {
 | 
				
			||||||
 | 
							collection: C;
 | 
				
			||||||
 | 
							slug: E;
 | 
				
			||||||
 | 
						}): E extends ValidContentEntrySlug<C>
 | 
				
			||||||
 | 
							? Promise<CollectionEntry<C>>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof DataEntryMap,
 | 
				
			||||||
 | 
							E extends keyof DataEntryMap[C] | (string & {}),
 | 
				
			||||||
 | 
						>(entry: {
 | 
				
			||||||
 | 
							collection: C;
 | 
				
			||||||
 | 
							id: E;
 | 
				
			||||||
 | 
						}): E extends keyof DataEntryMap[C]
 | 
				
			||||||
 | 
							? Promise<DataEntryMap[C][E]>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap,
 | 
				
			||||||
 | 
							E extends ValidContentEntrySlug<C> | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							slug: E
 | 
				
			||||||
 | 
						): E extends ValidContentEntrySlug<C>
 | 
				
			||||||
 | 
							? Promise<CollectionEntry<C>>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
						export function getEntry<
 | 
				
			||||||
 | 
							C extends keyof DataEntryMap,
 | 
				
			||||||
 | 
							E extends keyof DataEntryMap[C] | (string & {}),
 | 
				
			||||||
 | 
						>(
 | 
				
			||||||
 | 
							collection: C,
 | 
				
			||||||
 | 
							id: E
 | 
				
			||||||
 | 
						): E extends keyof DataEntryMap[C]
 | 
				
			||||||
 | 
							? Promise<DataEntryMap[C][E]>
 | 
				
			||||||
 | 
							: Promise<CollectionEntry<C> | undefined>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						/** Resolve an array of entry references from the same collection */
 | 
				
			||||||
 | 
						export function getEntries<C extends keyof ContentEntryMap>(
 | 
				
			||||||
 | 
							entries: {
 | 
				
			||||||
 | 
								collection: C;
 | 
				
			||||||
 | 
								slug: ValidContentEntrySlug<C>;
 | 
				
			||||||
 | 
							}[]
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>[]>;
 | 
				
			||||||
 | 
						export function getEntries<C extends keyof DataEntryMap>(
 | 
				
			||||||
 | 
							entries: {
 | 
				
			||||||
 | 
								collection: C;
 | 
				
			||||||
 | 
								id: keyof DataEntryMap[C];
 | 
				
			||||||
 | 
							}[]
 | 
				
			||||||
 | 
						): Promise<CollectionEntry<C>[]>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						export function reference<C extends keyof AnyEntryMap>(
 | 
				
			||||||
 | 
							collection: C
 | 
				
			||||||
 | 
						): import('astro/zod').ZodEffects<
 | 
				
			||||||
 | 
							import('astro/zod').ZodString,
 | 
				
			||||||
 | 
							C extends keyof ContentEntryMap
 | 
				
			||||||
 | 
								? {
 | 
				
			||||||
 | 
										collection: C;
 | 
				
			||||||
 | 
										slug: ValidContentEntrySlug<C>;
 | 
				
			||||||
 | 
								  }
 | 
				
			||||||
 | 
								: {
 | 
				
			||||||
 | 
										collection: C;
 | 
				
			||||||
 | 
										id: keyof DataEntryMap[C];
 | 
				
			||||||
 | 
								  }
 | 
				
			||||||
 | 
						>;
 | 
				
			||||||
 | 
						// Allow generic `string` to avoid excessive type errors in the config
 | 
				
			||||||
 | 
						// if `dev` is not running to update as you edit.
 | 
				
			||||||
 | 
						// Invalid collection names will be caught at build time.
 | 
				
			||||||
 | 
						export function reference<C extends string>(
 | 
				
			||||||
 | 
							collection: C
 | 
				
			||||||
 | 
						): import('astro/zod').ZodEffects<import('astro/zod').ZodString, never>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type ReturnTypeOrOriginal<T> = T extends (...args: any[]) => infer R ? R : T;
 | 
				
			||||||
 | 
						type InferEntrySchema<C extends keyof AnyEntryMap> = import('astro/zod').infer<
 | 
				
			||||||
 | 
							ReturnTypeOrOriginal<Required<ContentConfig['collections'][C]>['schema']>
 | 
				
			||||||
 | 
						>;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type ContentEntryMap = {
 | 
				
			||||||
 | 
							"configurations": {
 | 
				
			||||||
 | 
					"git-symlinks-setup.md": {
 | 
				
			||||||
 | 
						id: "git-symlinks-setup.md";
 | 
				
			||||||
 | 
					  slug: "git-symlinks-setup";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "configurations";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"configurations">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					"posts": {
 | 
				
			||||||
 | 
					"README.md": {
 | 
				
			||||||
 | 
						id: "README.md";
 | 
				
			||||||
 | 
					  slug: "readme";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"Test.md": {
 | 
				
			||||||
 | 
						id: "Test.md";
 | 
				
			||||||
 | 
					  slug: "test";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"cloudflare-tunnel-setup.md": {
 | 
				
			||||||
 | 
						id: "cloudflare-tunnel-setup.md";
 | 
				
			||||||
 | 
					  slug: "cloudflare-tunnel-setup";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"filebrowser-setup.md": {
 | 
				
			||||||
 | 
						id: "filebrowser-setup.md";
 | 
				
			||||||
 | 
					  slug: "filebrowser-setup";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"gitea-self-hosted-git.md": {
 | 
				
			||||||
 | 
						id: "gitea-self-hosted-git.md";
 | 
				
			||||||
 | 
					  slug: "gitea-self-hosted-git";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"gitops-with-flux-cd.md": {
 | 
				
			||||||
 | 
						id: "gitops-with-flux-cd.md";
 | 
				
			||||||
 | 
					  slug: "gitops-with-flux-cd";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"k3s-cluster.md": {
 | 
				
			||||||
 | 
						id: "k3s-cluster.md";
 | 
				
			||||||
 | 
					  slug: "k3s-cluster";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"k3s-installation-guide.md": {
 | 
				
			||||||
 | 
						id: "k3s-installation-guide.md";
 | 
				
			||||||
 | 
					  slug: "k3s-installation-guide";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"prometheus-monitoring.md": {
 | 
				
			||||||
 | 
						id: "prometheus-monitoring.md";
 | 
				
			||||||
 | 
					  slug: "prometheus-monitoring";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"proxmox-setup-guide.md": {
 | 
				
			||||||
 | 
						id: "proxmox-setup-guide.md";
 | 
				
			||||||
 | 
					  slug: "proxmox-setup-guide";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"quartz-digital-garden.md": {
 | 
				
			||||||
 | 
						id: "quartz-digital-garden.md";
 | 
				
			||||||
 | 
					  slug: "quartz-digital-garden";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"rancher-kubernetes-management.md": {
 | 
				
			||||||
 | 
						id: "rancher-kubernetes-management.md";
 | 
				
			||||||
 | 
					  slug: "rancher-kubernetes-management";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"starting-my-digital-garden.md": {
 | 
				
			||||||
 | 
						id: "starting-my-digital-garden.md";
 | 
				
			||||||
 | 
					  slug: "starting-my-digital-garden";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"test-post.md": {
 | 
				
			||||||
 | 
						id: "test-post.md";
 | 
				
			||||||
 | 
					  slug: "test-post";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"vscode-server-remote-development.md": {
 | 
				
			||||||
 | 
						id: "vscode-server-remote-development.md";
 | 
				
			||||||
 | 
					  slug: "vscode-server-remote-development";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "posts";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"posts">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					"projects": {
 | 
				
			||||||
 | 
					"argobox.md": {
 | 
				
			||||||
 | 
						id: "argobox.md";
 | 
				
			||||||
 | 
					  slug: "argobox";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "projects";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"projects">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					"placeholder.md": {
 | 
				
			||||||
 | 
						id: "placeholder.md";
 | 
				
			||||||
 | 
					  slug: "placeholder";
 | 
				
			||||||
 | 
					  body: string;
 | 
				
			||||||
 | 
					  collection: "projects";
 | 
				
			||||||
 | 
					  data: InferEntrySchema<"projects">
 | 
				
			||||||
 | 
					} & { render(): Render[".md"] };
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type DataEntryMap = {
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
						};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type AnyEntryMap = ContentEntryMap & DataEntryMap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						type ContentConfig = typeof import("../src/content/config");
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -25,6 +25,3 @@ pnpm-debug.log*
 | 
				
			||||||
# Obsidian files
 | 
					# Obsidian files
 | 
				
			||||||
.obsidian/
 | 
					.obsidian/
 | 
				
			||||||
node_modules
 | 
					node_modules
 | 
				
			||||||
 | 
					 | 
				
			||||||
# Astro build cache and types
 | 
					 | 
				
			||||||
.astro/
 | 
					 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										12
									
								
								package.json
								
								
								
								
							
							
						
						
									
										12
									
								
								package.json
								
								
								
								
							| 
						 | 
					@ -9,12 +9,12 @@
 | 
				
			||||||
    "astro": "astro"
 | 
					    "astro": "astro"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "dependencies": {
 | 
					  "dependencies": {
 | 
				
			||||||
    "@astrojs/cloudflare": "latest",
 | 
					    "@astrojs/cloudflare": "^7.0.0",
 | 
				
			||||||
    "@astrojs/mdx": "latest",
 | 
					    "@astrojs/mdx": "^2.0.0",
 | 
				
			||||||
    "@astrojs/rss": "latest",
 | 
					    "@astrojs/rss": "^4.0.11",
 | 
				
			||||||
    "@astrojs/sitemap": "latest",
 | 
					    "@astrojs/sitemap": "^3.3.0",
 | 
				
			||||||
    "@astrojs/tailwind": "latest",
 | 
					    "@astrojs/tailwind": "^5.0.0",
 | 
				
			||||||
    "astro": "latest",
 | 
					    "astro": "^3.6.5",
 | 
				
			||||||
    "tailwindcss": "^3.0.24"
 | 
					    "tailwindcss": "^3.0.24"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "devDependencies": {
 | 
					  "devDependencies": {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue