// Artifacts used to be a central system in the old data-driven website. // Now, it simply refers to one of these link presets. Every project has // one canonical URL, which the questions page can refer to with `@id`. type Artifact = [title: string, url: string, type: ArtifactType]; type ArtifactType = "music" | "game" | "project" | "video"; export const artifactMap: Record = { // 2025 "in-the-summer": ["in the summer", "", "music"], waterfalls: ["waterfalls", "/waterfalls", "music"], lolzip: ["lol.zip", "", "project"], "g-is-missing": ["g is missing", "", "music"], "im-18-now": ["i'm 18 now", "", "music"], "programming-comparison": [ "thursday programming language comparison", "", "video", ], aaaaaaaaa: ["aaaaaaaaa", "", "music"], "its-snowing": ["it's snowing", "", "video"], // 2023 "iphone-15-review": [ "iphone 15 review", "/file/2023/iphone%2015%20review/iphone-15-review.mp4", "video", ], // 2022 mayday: ["mayday", "/file/2022/mayday/mayday.mp4", "music"], "mystery-of-life": [ "mystery of life", "/file/2022/mystery-of-life/mystery-of-life.mp4", "music", ], // 2021 "top-10000-bread": [ "top 10000 bread", "https://paperclover.net/file/2021/top-10000-bread/output.mp4", "video", ], "phoenix-write-soundtrack": [ "Phoenix, WRITE! soundtrack", "/file/2021/phoenix-write/OST", "music", ], "phoenix-write": ["Pheonix, WRITE!", "/file/2021/phoenix-write", "game"], "money-visual-cover": [ "money visual cover", "/file/2021/money-visual-cover/money-visual-cover.mp4", "video", ], "i-got-this-thing": [ "i got this thing", "/file/2021/i-got-this-thing/i-got-this-thing.mp4", "video", ], // 2020 elemental4: ["elemental 4", "/file/2020/elemental4-rewrite", "game"], "elemental-4": ["elemental 4", "/file/2020/elemental4-rewrite", "game"], // 2019 "throw-soundtrack": [ "throw soundtrack", "/file/2019/throw/soundtrack", "music", ], "elemental-lite": ["elemental lite", "/file/2019/elemental-lite-1.7", "game"], volar: [ "volar visual cover", "/file/2019/volar-visual-cover/volar.mp4", "video", ], wpm: [ "how to read 500 words per minute", "/file/2019/how-to-read-500-words-per-minute/how-to-read-500-words-per-minute.mp4", "video", ], "dice-roll": [ "thursday dice roll", "/file/2019/thursday-dice-roll/thursday-dice-roll.mp4", "video", ], "math-problem": [ "thursday math problem", "/file/2019/thursday-math-problem/thursday-math-problem.mp4", "video", ], // 2018 // 2017 "hatred-island": ["hatred island", "/file/2017/hatred%20island", "game"], "test-video-1": ["test video 1", "/file/2017/test-video1.mp4", "video"], };