diff options
Diffstat (limited to 'website.go')
| -rw-r--r-- | website.go | 163 |
1 files changed, 113 insertions, 50 deletions
@@ -264,53 +264,117 @@ func latestBlog(blogs []Blog) *Blog { return &blogs[0] } -// type Project struct { -// Name string -// Type string -// Desc []string -// Cmd string -// Link string -// } -// -// var projects = []Project{ -// { -// Name: "CPU vs AI", -// Type: "Game (made with Zig)", -// Desc: []string{ -// "A tower defense game where an AI chip on your motherboard", -// "generates bugs! Place CPUs to destroy the bugs!", -// "Don't let them corrupt your RAM!", -// }, -// }, -// { -// Name: "Eko", -// Type: "Social Media Platform", -// Desc: []string{ -// "A terminal-native alternative", -// "to Discord for Terminal", -// "nerds!", -// }, -// }, -// { -// Name: "Trident", -// Type: "IntelliJ Plugin", -// Desc: []string{ -// "A blazingly fast way to", -// "Navigate to your mosta used", -// "files. Minimize keystrokes", -// "and maximize productivity!", -// }, -// }, -// { -// Name: "Dotfiles", -// Type: "Configuration", -// Desc: []string{ -// "My Linux configuration,", -// "includes Neovim, tmux and", -// "other programs.", -// }, -// }, -// } +var projects = []Project{ + { + Slug: "krypton", + Title: "Krypton", + Category: "Programming Language Compiler", + Desc: "A modern Minecraft creator event. As a developer, I helped with minor improvements to the cosmetics system. ", + Icon: IconCpu("text-[#F5A670] self-center"), + // Icon: IconKrypton(), + Tags: []ProjectTag{ + // {"Programming Language", Color("--extra")}, + // {"Compiler", Color("--extra")}, + {"C", Color("text-[#5C6CC1]")}, + {"LLVM", Color("text-[#FFFFFF]")}, + // {"Java", Color("#F5A670")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/"}, + }, + }, + + { + Slug: "cpu-vs-ai", + Title: "CPU vs AI", + Category: "Video Game", + Desc: "A tower defense game where an AI chip on your motherboard " + + "generates bugs! Place CPUs to destroy the bugs! " + + "Don't let them corrupt your RAM!", + Icon: IconCpu("text-[#F16265]"), + Tags: []ProjectTag{ + {"Zig", Color("text-[#D8C44B]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/cpu-vs-ai.git"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/the-memory-managers/cpu-vs-ai"}, + {IconVideo("text-[#F16265]"), "Showcase", "https://www.youtube.com/watch?v=_clLDGNlef0"}, + }, + }, + + { + Slug: "eko", + Title: "Eko", + Category: "Social Media Platform", + Desc: "A terminal-native alternative to Discord for Terminal nerds!", + Icon: IconEko("text-[#D27D9B]"), + Tags: []ProjectTag{ + {"Golang", Color("text-[#00ADD7]")}, + {"Sqlite", Color("text-[#BDC3C7]")}, + {"Bubbletea", Color("text-[#C7727F]")}, + {"Prometheus", Color("text-[#ED532D]")}, + {"Grafana", Color("text-[#F9B010]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/eko.git"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/eko"}, + }, + }, + + { + Slug: "trident", + Title: "Trident", + Category: "IntelliJ Plugin", + Desc: "A blazingly fast way to navigate to your most used files. Minimize keystrokes and maximize productivity!", + Icon: IconTrident("text-[#739ebb]"), + Tags: []ProjectTag{ + // {"Kotlin", Color("text-[#897ccb]")}, + {"Kotlin", Color("text-[#a34eeb]")}, + {"JetBrains Plugin SDK", Color("text-[#FF8019]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/trident.git"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/trident"}, + {IconJetbrains("text-[#FF8019]"), "JetBrains Marketplace", "https://plugins.jetbrains.com/plugin/23818-trident"}, + }, + }, + + { + Slug: "dotfiles", + Title: "Dotfiles", + Category: "Configuration", + Desc: "My Linux configuration, includes Neovim, tmux and other programs.", + Icon: IconDotfiles("text-[#5874FF]"), + Tags: []ProjectTag{ + {"Neovim", Color("text-[#46d46c]")}, + {"Scripts", Color("text-[#D8C44B]")}, + {"Git", Color("text-[#F5A670]")}, + }, + Links: []ProjectLink{ + {IconGit("text-[#F5A670]"), "Git", "https://git.kyren.codes/kyren/dotfiles.git/"}, + {IconGithub("text-(--secondary)"), "GitHub", "https://github.com/kyren223/dotfiles"}, + }, + }, +} + +var flagship FlagshipInfo = FlagshipInfo{ + Version: "Sprout.0 2026-08-13", + Downloads: []Download{ + {"linux-amd64", "https://foobar", "23 MB"}, + // {"linux-arm64", "https://foobar", "52 MB"}, + // {"macos-arm64", "https://fooshit", "47 MB"}, + {"windows-amd64", "https://fooshit", "65.7 MB"}, + }, + // Stats: []Stat{{"lines of code", "18.7k"}}, + Snippet: ` +io :: import "core/io"; + +main :: proc() { + io.printf("Hello, %s", "world"); +} +`, +} func styleHandler(cookie string, lookup func(string) (map[string]string, bool)) http.HandlerFunc { return func(w http.ResponseWriter, r *http.Request) { @@ -482,12 +546,11 @@ func main() { HomePage(currentStyle(r), latestBlog(getBlogs())).Render(r.Context(), w) }) - mux.HandleFunc("GET /skills", func(w http.ResponseWriter, r *http.Request) { - SkillsPage(currentStyle(r)).Render(r.Context(), w) + mux.HandleFunc("GET /info", func(w http.ResponseWriter, r *http.Request) { + InfoPage(currentStyle(r)).Render(r.Context(), w) }) mux.HandleFunc("GET /projects", func(w http.ResponseWriter, r *http.Request) { - projects := []Project{p, p, p, p, p, p, p, p} ProjectsPage(currentStyle(r), projects, 2).Render(r.Context(), w) }) |
