feat(portfolio): add portfolio content model and dossier data

This commit is contained in:
kbot
2026-07-06 19:55:36 -05:00
parent ebefb3496a
commit e005040109

380
lib/portfolio.ts Normal file
View File

@@ -0,0 +1,380 @@
export type Accent = "cyan" | "orange" | "green" | "violet";
export type Proof = {
label: string;
href?: string;
metric?: string;
};
export type DossierLink = {
label: string;
href: string;
};
export type Dossier = {
id: string;
title: string;
type: string;
status: string;
year: string;
role?: string;
stack: string[];
mission: string;
constraint?: string;
system: string;
result: string;
proof: Proof[];
links: DossierLink[];
accent: Accent;
};
export type Capability = {
index: string;
text: string;
};
export type Honor = {
title: string;
detail: string;
year: string;
};
export type Identity = {
name: string;
roleLine: string;
education: string;
site: string;
};
export type Hero = {
heading: string;
subline: string;
};
export type Publication = {
title: string;
venue: string;
year: string;
authorship: string;
doi: string;
href: string;
};
export type SkillsMatrixRow = {
category: string;
skills: string[];
};
export type Contact = {
email: string;
git: string;
linkedIn: string;
ssh: string;
};
export const identity: Identity = {
name: "Krishna Ayyalasomayajula",
roleLine: "Founding Engineer @ CoGuide",
education: "B.S. Computational Engineering, UT Austin — expected 2030",
site: "krishna.ayyalasomayajula.net",
};
export const statusLine =
"STATUS: BUILDING AT COGUIDE — OPEN TO INTERESTING PROBLEMS";
export const hero: Hero = {
heading: "Builder of GPU pipelines, hardened systems, and real-time infrastructure.",
subline: "I turn ambiguity into working software — and keep it alive under fire.",
};
export const manifesto =
"I build systems that survive contact — proof over promises.";
export const capabilities: Capability[] = [
{ index: "01", text: "Engineer GPU pipelines down to the kernel" },
{ index: "02", text: "Build production backends from zero" },
{ index: "03", text: "Harden systems that survive the open internet" },
{ index: "04", text: "Stream and analyze data at market speed" },
{ index: "05", text: "Run production infrastructure end to end" },
];
export const featuredDossier: Dossier = {
id: "coguide",
title: "CoGuide",
type: "AI instructional-insight platform",
status: "deployed",
year: "2026—",
role: "Founding Engineer / MTS",
stack: ["Rust", "AWS", "CUDA", "YOLOv8"],
mission:
"AI instructional-insight platform turning classroom audio into private coaching feedback",
constraint: "legacy NVIDIA T4 GPUs, zero-to-production",
system:
"entire production backend in Rust (~30k lines) + full AWS infra; custom CUDA fusion kernels + VAD batching for transcription/diarization; two-stage CV pipeline (YOLOv8 + pose) for hand-raise detection at ~0.96× real-time",
result:
"deployed in 10+ schools; 2× cost efficiency of market alternatives, 10× vs AWS Transcribe",
proof: [
{ label: "deployed in schools", metric: "10+ schools" },
{ label: "cost efficiency vs market alternatives", metric: "2×" },
{ label: "cost efficiency vs AWS Transcribe", metric: "10×" },
{ label: "hand-raise detection", metric: "~0.96× real-time" },
],
links: [
{ label: "coguide.ai", href: "https://coguide.ai" },
{
label: "CoGuide-Miniproj",
href: "https://git.cyber.ayyalasomayajula.net/marsultor/CoGuide-Miniproj",
},
],
accent: "cyan",
};
export const dossiers: Dossier[] = [
{
id: "exalock",
title: "exalock",
type: "GPU/Wayland lockscreen",
status: "WIP",
year: "2026",
stack: ["C", "C++23", "GLSL"],
mission: "GPU/Wayland lockscreen",
constraint: "raw ext-session-lock-v1",
system: "RK4 stream-function particle sim",
result: "WIP 2026 GPU/Wayland lockscreen",
proof: [{ label: "raw ext-session-lock-v1" }],
links: [
{
label: "marsultor/exalock",
href: "https://git.cyber.ayyalasomayajula.net/marsultor/exalock",
},
],
accent: "cyan",
},
{
id: "quant-streamer",
title: "Quant Streamer",
type: "real-time market data",
status: "closed source",
year: "2025",
stack: ["Kafka", "MQTT", "DXLink", "ClickHouse", "C++"],
mission: "real-time market data",
system: "100K datapoints/s via Kafka/MQTT/DXLink; ClickHouse; C++ LSTM + Heston/BlackScholes",
result: "100K datapoints/s via Kafka/MQTT/DXLink",
proof: [{ label: "market data throughput", metric: "100K datapoints/s" }],
links: [],
accent: "orange",
},
{
id: "mqtt-push-pipeline",
title: "MQTT Push Pipeline",
type: "infra",
status: "live since Aug 2025",
year: "2025",
stack: ["Rust", "MQTT", "RSS", "C++"],
mission: "infra pipeline for push alerts",
system: "Rust consumer sustaining 10M notifications/s benchmark",
result: "10k+ real alerts relayed",
proof: [
{ label: "notification benchmark", metric: "10M notifications/s" },
{ label: "real alerts relayed", metric: "10k+" },
],
links: [
{
label: "C++ repo",
href: "https://git.cyber.ayyalasomayajula.net/marsultor",
},
{
label: "Rust repo",
href: "https://git.cyber.ayyalasomayajula.net/marsultor",
},
{
label: "RSS repo",
href: "https://git.cyber.ayyalasomayajula.net/marsultor",
},
],
accent: "green",
},
{
id: "matrix-fs",
title: "Matrix FS",
type: "encrypted L2 storage over IPFS",
status: "closed source",
year: "—",
stack: [
"Rust",
"Tauri",
"Svelte",
"IPFS",
"AES-256-CBC",
"ChaCha20-Poly1305",
"Tor",
],
mission: "encrypted L2 storage over IPFS",
system: "Rust + Tauri/Svelte; AES-256-CBC + ChaCha20-Poly1305; Tor hidden-service ticketing",
result: "closed source encrypted L2 storage over IPFS",
proof: [{ label: "AES-256-CBC + ChaCha20-Poly1305" }],
links: [],
accent: "violet",
},
{
id: "home-infrastructure",
title: "Home Infrastructure",
type: "infrastructure",
status: "live",
year: "—",
stack: ["Linux", "Docker/Podman", "ZFS"],
mission: "home infrastructure",
system: "3 HA servers, 40+ containers, 150TB ZFS, ~50 users",
result: "live infrastructure serving ~50 users",
proof: [
{ label: "HA servers", metric: "3" },
{ label: "containers", metric: "40+" },
{ label: "ZFS storage", metric: "150TB" },
{ label: "users", metric: "~50" },
],
links: [],
accent: "green",
},
{
id: "cyberpatriot-automation",
title: "CyberPatriot Automation",
type: "hardening suite",
status: "licensed",
year: "—",
stack: ["Rust", "PowerShell"],
mission: "Rust/PowerShell hardening suite",
system: "CyberPatriot Automation hardening suite",
result: "30+ pts/round; licensed to another team",
proof: [
{ label: "points per round", metric: "30+" },
{ label: "licensed to another team" },
],
links: [],
accent: "orange",
},
{
id: "browser-security-red-team-poc",
title: "Browser-Security Red-Team PoC",
type: "educational",
status: "educational",
year: "—",
stack: ["TypeScript", "Bun", "Playwright"],
mission: "educational browser-security red-team PoC",
system: "TS/Bun + Playwright stealth defeating bot detection",
result: "educational PoC defeating bot detection",
proof: [{ label: "Playwright stealth defeating bot detection" }],
links: [
{
label: "marsultor/linkedin-bot",
href: "https://git.cyber.ayyalasomayajula.net/marsultor/linkedin-bot",
},
],
accent: "violet",
},
{
id: "hardened-ssh-portfolio-server",
title: "Hardened SSH Portfolio Server",
type: "live security PoC",
status: "live",
year: "—",
stack: ["C++", "FTXUI", "SSH"],
mission: "live security PoC",
system: "C++ FTXUI over SSH",
result: "survived 1M+ attacks from 100 countries over 18 months, zero compromise",
proof: [
{ label: "attacks survived", metric: "1M+" },
{ label: "countries", metric: "100" },
{ label: "duration", metric: "18 months" },
{ label: "compromise count", metric: "zero" },
],
links: [],
accent: "cyan",
},
];
export const publication: Publication = {
title:
"Rule-based Tensor Mutations Embedded within LLMs for Low-Cost Mathematical Computation",
venue: "TechRxiv preprint (IEEE)",
year: "2025",
authorship: "sole author",
doi: "10.36227/techrxiv.175393256.68603080/v1",
href: "https://doi.org/10.36227/techrxiv.175393256.68603080/v1",
};
export const honors: Honor[] = [
{
title: "Lockheed Martin Cyber Quest 2nd place",
detail: "team captain, ~30% of team score",
year: "2025",
},
{ title: "CyberPatriot State Gold", detail: "", year: "2025" },
{ title: "NSA Codebreaker", detail: "5 tasks", year: "2024" },
{ title: "Hack The Box", detail: "peak global rank 564", year: "" },
{ title: "National Merit Commendation", detail: "", year: "" },
];
export const skillsMatrix: SkillsMatrixRow[] = [
{
category: "Languages",
skills: [
"Rust async/unsafe/FFI",
"C",
"C++23",
"Python",
"TypeScript",
"GLSL",
"SQL",
"Bash",
"Java",
],
},
{
category: "Systems & Infra",
skills: [
"Linux",
"Docker/Podman",
"WireGuard",
"Nginx/Traefik",
"PostgreSQL",
"ClickHouse",
"Redis",
"Kafka",
"MQTT",
"gRPC",
"ZFS",
],
},
{
category: "Scientific Computing",
skills: [
"NumPy/SciPy/JAX",
"Eigen",
"BLAS/LAPACK",
"CUDA/cuBLAS",
"ODE solvers",
"PyTorch",
],
},
{
category: "Security",
skills: [
"reverse engineering",
"binary exploitation",
"network forensics",
"eBPF/seccomp/AppArmor",
"red/blue tooling",
],
},
{
category: "Frontend & Embedded",
skills: ["Next.js/React", "Svelte", "Tauri", "FTXUI", "STM32/ESP32"],
},
];
export const contact: Contact = {
email: "krishna@ayyalasomayajula.net",
git: "https://git.cyber.ayyalasomayajula.net/marsultor",
linkedIn: "https://www.linkedin.com/in/krishna-ayy/",
ssh: "ssh krishna@krishna.ayyalasomayajula.net",
};