Spent the week breathing new life into DevNotion—59 commits and over 10,000 lines of code later, v2.1 is officially alive. It was a massive push toward multi-LLM support and public-facing dashboards, keeping a steady 6-day streak in the process.
| Platform | Link | Status |
|---|---|---|
| Notion | View Page | Published |
| DEV.to | Edit Draft | Draft |
| Metric | Count |
|---|---|
| Commits | 59 |
| Pull Requests | 1 |
| Issues | 0 |
| Code Reviews | 0 |
| Discussions | 0 |
| Lines Added | +10,207 |
| Lines Removed | -3,776 |
| Streak | 6 days |
| Repository | Commits | Language | Changes |
|---|---|---|---|
| DevNotion | 54 | TypeScript | +10199/-3768 |
| nvim | 5 | Lua | +8/-8 |
| Title | Repo | State | Changes |
|---|---|---|---|
| DevNotion v2 + v2.1 — multi-LLM, preview→approve publishing, images, dashboard & landing | DevNotion | MERGED | +8358/-639 |
| Language | Commits |
|---|---|
| Python | 99941429 |
| TypeScript | 15747559 |
| Rust | 12004251 |
| C# | 4356561 |
| MDX | 1901095 |
| HTML | 1806078 |
| Twig | 1654148 |
| Shell | 1262913 |
I spent the week breathing new life into DevNotion—59 commits and over 10,000 lines of code later, v2.1 is officially alive. It was a massive push toward multi-LLM support and public-facing dashboards, keeping a steady 6-day streak in the process.
Most of my energy this week went into a massive revival of DevNotion. I’ve been sitting on some ideas for a while, but this week I finally sat down and tore into the codebase to bring v2 and v2.1 to life. We’re talking 150 files changed and a delta of +10,199/-3,768 lines. That’s a lot of TypeScript, but the result feels like a completely different beast.
The core of the work was moving toward a more robust, multi-LLM architecture. I wanted the ability to flip between models and handle the preview-to-publish flow more gracefully. I spent a significant chunk of time in src/server rebuilding how we handle sessions and public access. One of the more satisfying bits was implementing a global brute-force backstop for the auth layer—it’s one of those "peace of mind" features that you don't realize you need until you're actually looking at a public deploy.
Speaking of public deploys, I spent some time in the root directory getting the project ready for the real world. I wrote a proper Dockerfile and set up a Render blueprint. I also had to make sure the app honors the platform’s $PORT environment variable (classic "it works on my machine but fails in the cloud" moment).
The dashboard also got a major overhaul. I added a public view and implemented token-gated actions for publishing, running, and deleting content. It makes the whole "dashboard as a service" feel much more real. I even took a moment to "un-mangle" the .gitignore because my patterns for .remember/ and the masterplan were getting a bit messy.