Turning a chat app into a portfolio, blog, and tools site
Why I folded Aegis, my anonymous chat app, into a bigger site — and how the pieces fit together.
This site used to be just one thing: Aegis, an anonymous real-time chat app. It had no database, no real authentication, and no router — just a name, a room, and a socket connection. It worked well, but it was a single-purpose app with nowhere for writing to live.
So I rebuilt the shell around it. The site is now three things stitched together:
- A portfolio — this page, projects, about.
- A blog — the post you're reading, written as plain MDX committed to the repo.
- A tools directory — free apps I build, starting with Aegis itself.
Why tools drive traffic to the blog
The idea is simple: a free, useful tool gets people to the site for a reason that has nothing to do with reading. Once they're here, the blog is one click away. Aegis chat doesn't need an account or a sign-up flow to prove that out — you can be in a room talking to someone in about five seconds.
What changed under the hood
The chat app itself didn't change — same NestJS + Socket.IO backend, same event contract, same in-memory room state. What changed is everything around it: a new Next.js frontend with server-rendered pages for SEO, a design system carried over from Aegis's existing violet/dark theme, and a tools registry so the next free tool is just a new folder and one config entry away.