84 lines
1.4 KiB
TypeScript
84 lines
1.4 KiB
TypeScript
export type ProjectFrontmatter = {
|
|
/**
|
|
* The title of the project
|
|
*/
|
|
title: string;
|
|
|
|
/**
|
|
* The description of the project
|
|
*/
|
|
description: string;
|
|
|
|
/**
|
|
* The tags of the project
|
|
* (eg. ["JavaScript", "React", "Node.js"])
|
|
*/
|
|
tags?: string[];
|
|
|
|
/**
|
|
* The GitHub URL of the project
|
|
*/
|
|
githubUrl?: string;
|
|
|
|
/**
|
|
* The live URL of the project
|
|
*/
|
|
liveUrl?: string;
|
|
|
|
/**
|
|
* Whether the project should be featured on the homepage
|
|
*/
|
|
featured?: boolean;
|
|
|
|
/**
|
|
* The date the project was created or started in W3C format
|
|
* (this will determine the sort order of the projects)
|
|
*/
|
|
timestamp: string;
|
|
|
|
/**
|
|
* The URL of the project on the website
|
|
* (eg. https://justin.deal/projects/my-project)
|
|
*/
|
|
filename: string;
|
|
};
|
|
|
|
export type ArticleFrontmatter = {
|
|
/**
|
|
* The title of the article
|
|
*/
|
|
title: string;
|
|
|
|
/**
|
|
* THe summary description of the article
|
|
*/
|
|
description: string;
|
|
|
|
/**
|
|
* The tags of the article
|
|
* (eg. ["JavaScript", "React", "Node.js"])
|
|
*/
|
|
tags?: string[];
|
|
|
|
/**
|
|
* The estimated time to read the article in minutes
|
|
*/
|
|
time: number;
|
|
|
|
/**
|
|
* Whether the article should be featured on the homepage
|
|
*/
|
|
featured: boolean;
|
|
|
|
/**
|
|
* The timestamp the article was published in W3C format
|
|
*/
|
|
timestamp: string;
|
|
|
|
/**
|
|
* The URL of the article on the website
|
|
* (eg. https://justin.deal/blog/my-article)
|
|
*/
|
|
filename: string;
|
|
};
|