personal website
1type DescriptionPart = {
2 text: string
3 bold?: boolean
4 url?: string
5}
6
7export const personalInfo = {
8 name: {
9 first: "at://nekomimi.pet",
10 last: "",
11 },
12 title: "Developer, cat",
13 description: [
14 { text: "A cat working on " },
15 { text: "useful", bold: true },
16 { text: ", " },
17 { text: "genuine", bold: true },
18 { text: " " },
19 { text: "decentralized", bold: true, url: "https://atproto.com" },
20 { text: " experiences. Not Web3. Also likes to " },
21 { text: "draw", bold: true, url: "https://bsky.app/profile/art.nekomimi.pet" },
22 { text: "." },
23 ],
24 availability: {
25 status: "Available for work",
26 location: "Richmond, VA, USA",
27 },
28 contact: {
29 email: "ana@nekomimi.pet",
30 },
31}
32
33export const currentRole = {
34 title: "Freelance",
35 company: "maybe your company :)",
36 period: "2021 — Present",
37}
38
39export const skills = ["React", "TypeScript", "Go", "Devops/Infra", "Atproto", "Cryptocurrencies"]
40
41export const workExperience = [
42 {
43 year: "2020-2025",
44 role: "Fullstack Engineer, Infra/DevOps, Security Reviews",
45 company: "Freelance",
46 description: "Partook in various freelance work while studying for my bachelor's. Took a strong interest in the AT Protocol and started building libraries to support it.",
47 tech: ["React", "TypeScript", "Bun", "SQL"],
48 projects: [
49 {
50 title: "atproto-ui",
51 description: "A React component for rendering common UI elements across AT applications like Bluesky, Leaflet.pub, and more.",
52 tech: ["React", "TypeScript"],
53 links: {
54 live: "https://atproto-ui.netlify.app/",
55 github: "https://tangled.org/@nekomimi.pet/atproto-ui",
56 },
57 },
58 {
59 title: "wisp.place",
60 description: "A static site hoster built on the AT protocol. Users retain control over site data and content while Wisp acts as a CDN.",
61 tech: ["React", "TypeScript", "Bun", "ElysiaJS", "Hono", "Docker"],
62 links: {
63 live: "https://wisp.place",
64 github: "https://tangled.org/@nekomimi.pet/wisp.place",
65 },
66 },
67 {
68 title: "Confidential",
69 description: "NixOS consulting. Maintaining automated deployments, provisioning, and configuration management.",
70 tech: ["Nix", "Terraform"],
71 },
72 {
73 title: "Embedder",
74 description: "An unbloated media self-hostable service specialized in great looking embeds for services like Discord. Autocompresses videos using FFmpeg. Loved by many gamers and has over 2k installs.",
75 tech: ["HTMX", "Express", "TypeScript"],
76 links: {
77 github: "https://github.com/waveringana/embedder",
78 },
79 }
80 ],
81 },
82 {
83 year: "2016-2019",
84 role: "Software Engineer, DevOps",
85 company: "Horizen.io, later freelance",
86 description: "Helped launch Horizen, built various necessary blockchain infrastructure like explorers and pools. Managed CI/CD pipelines, infrastructure, and community support.",
87 tech: ["Node.js", "Jenkins", "C++"],
88 projects: [
89 {
90 title: "Z-NOMP",
91 description: "A port of NOMP for Equihash Coins, built using Node.js and Redis.",
92 tech: ["Node.js", "Redis"],
93 links: {
94 github: "https://github.com/z-classic/z-nomp",
95 },
96 },
97 {
98 title: "Equihash-Solomining",
99 description: "Pool software dedicated for Solomining, initially for equihash but for private clients, worked to adapt to PoW of their needs.",
100 tech: ["Node.js", "Redis", "d3.js"],
101 links: {
102 github: "https://github.com/waveringana/equihash-solomining",
103 },
104 }
105 ]
106 },
107]
108
109export const socialLinks = [
110 { name: "GitHub", handle: "@waveringana", url: "https://github.com/waveringana" },
111 { name: "Bluesky", handle: "@nekomimi.pet", url: "https://bsky.app/profile/nekomimi.pet" },
112 { name: "Tangled", handle: "@nekomimi.pet", url: "https://tangled.org/@nekomimi.pet" },
113 { name: "Vgen", handle: "@ananekomimi", url: "https://vgen.co/ananekomimi" }
114]
115
116export const sections = ["intro", "work", "connect"] as const
117
118export type Section = (typeof sections)[number]