public/data/projects.ts
2023-01-28 16:19:58 -05:00

147 lines
4.0 KiB
TypeScript

export type Language =
| "python"
| "javascript"
| "java"
| "typescript"
| "vue"
| "react"
| "markdown"
| "flutter"
| "android"
| "rust"
| "golang";
export interface Project {
name: string;
href: string;
img?: string;
description?: string;
longDescription?: string;
langs: Language[];
license?: "AGPL-3.0" | "GPL-3.0" | "MIT" | "LGPL-3.0";
type: "full" | "server" | "client" | "embedded";
}
export const projects: Project[] = [
{
name: "Mandown",
href: "https://github.com/potatoeggy/mandown",
description:
"A comic downloader and converter to CBZ / EPUB / PDF for my Kobo.",
longDescription: "Available via CLI and a Qt GUI!",
langs: ["python"],
license: "AGPL-3.0",
img: "mandown.webp",
type: "client",
},
{
name: "Noveldown",
href: "https://github.com/potatoeggy/noveldown",
langs: ["python"],
license: "LGPL-3.0",
description:
"A webnovel downloader and converter to EPUB for my Kobo, with lots of metadata!",
longDescription: "Heavily borrows Mandown's design.",
type: "client",
},
{
name: "Jeopardy",
href: "https://github.com/potatoeggy/jeopardy",
img: "jeopardy.webp",
langs: ["typescript", "vue"],
license: "AGPL-3.0",
description: "Kahoot-inspired Jeopardy! game, including Final Jeopardy!",
longDescription: "Created for Bayview's Computer Club.",
type: "full",
},
{
name: "Primoprod",
href: "https://github.com/potatoeggy/primoprod",
img: "primoprod.webp",
langs: ["typescript", "vue"],
license: "AGPL-3.0",
description:
"A game simulator to increase productivity with quests and gambling.",
longDescription: "My first project with a JS framework!",
type: "client",
},
{
name: "PillowⓇ",
href: "https://github.com/potatoeggy/ece198",
description:
"A water quality statistics aggregator written for the STM32 microcontroller with an LCD display and keypad.",
langs: ["rust"],
license: "GPL-3.0",
type: "embedded",
img: "pillow.webp",
},
{
name: "Napbot",
href: "https://github.com/potatoeggy/napbot",
langs: ["python"],
license: "AGPL-3.0",
description:
"A Discord bot initially to track sleep hours as friendly competition but is now a local music bot with synchronised lyrics!",
img: "napbot.webp",
type: "server",
},
{
name: "Resketch",
href: "https://github.com/anyuan-chen/resketch",
langs: ["typescript", "react"],
img: "resketch.webp",
description:
'A "reverse-Pictionary" where you compete to have an AI recognise your drawings.',
longDescription: "Written for YRHacks 2022.",
type: "full",
},
{
name: "Perdiem",
href: "https://github.com/anyuan-chen/perdiem",
langs: ["javascript", "react"],
license: "AGPL-3.0",
img: "perdiem.webp",
description:
"A pretty budget tracking app where I learned too much about server-side rendering.",
longDescription: "Written for StormHacks 2022.",
type: "client",
},
{
name: "RecipeReady",
href: "https://github.com/christopherlam888/recipe-ready-frontend",
langs: ["python", "android", "flutter"],
img: "recipeready.webp",
description:
"Android app to automagically plan meals and prepare a shopping list so you don't have to.",
longDescription: "Written for Hack the North 2021.",
type: "full",
},
{
name: "AutoFicFare",
href: "https://github.com/potatoeggy/autoficfare",
langs: ["python"],
license: "GPL-3.0",
description:
"Automatically update fanfiction in a Calibre database to instantly update them on your Kobo.",
type: "client",
},
];
const unreleasedProjects: Project[] = [
{
name: "Aleister",
href: "https://github.com/potatoeggy/aleister",
langs: ["rust"],
license: "AGPL-3.0",
type: "server",
},
{
name: "Aoto",
href: "https://github.com/potatoeggy/aoto",
langs: ["golang", "typescript", "react"],
license: "AGPL-3.0",
type: "full",
},
];
export default projects;