In January 2025 I released the first version of bragdoc.ai, a SaaS application that uses a blend of AI and traditional SaaS technologies to help professionals keep track of all the great work they've done, and automatically generate high quality, evidence-based weekly summaries for your boss or performance review documentation to support your next promotion.
Unusually for a SaaS app, I decided to open-source the entire codebase of the bragdoc.ai Next JS application because I think it can act as a great learning resource for other developers looking to build similar apps. From time to time I write blog posts about the technical challenges around how I built bragdoc.ai, especially around AI integration. Those posts will show up here and you can find the full source code on GitHub.
Evals are to LLM calls what unit tests are to functions. They're absolutely essential for ensuring that your LLM prompts work the way you think they do.
This article goes through a real-world example from the in-production open-source application bragdoc.ai, which extracts structured work achievement data from well-crafted LLM prompts. We'll go through how to design and build Evals that can accurately and efficiently test your LLM prompts.
In this article we do a deep dive into how I'm using mdx-prompt for extracting work achievements from git commit messages in the Bragdoc app.
We go through the half a dozen different data formats we go through in order to extract well-structured data from a string prompt, and how we can test each part of the process in isolation.
LLMs use strings. React generates strings. We know React. Let's use React to render Prompts. This article introduces mdx-prompt, which is a library that lets you write your prompts in JSX, and then render them to a string. It's great for React applications and React developers.
In this article I break down how I built the core of bragdoc.ai in about 3 weeks over the Christmas/New Year break. The secret? AI tooling.
We'll go into details on how I used Windsurf, the Vercel AI Chat Template, Tailwind UI, and a bunch of other tools to get a product off the ground quickly.