NOTE: Apart from
(and even then it's questionable, I'm Scottish). These are machine translated in languages I don't read. If they're terrible please contact me.
You can see how this translation was done in this article.
Wednesday, 22 October 2025
//6 minute read
So, as my current contract is soon ending and I need to keep working due to that pesky 'eating stuff' habit I have I'm doing one of my periodic skills updates. This here blog was in fact the last time I did this. I learn more quickly and deeply by doing than anything else so...I writes the codes.
This time though I wanted to learn more about using LLMs in applications in ways that ehance the user experience AND create realistic sample data makong developing other features easier (to build, demo and test).
In part 1 I'll introduce you to the project. Then in future parts as I go through the 'vibe coded' stuff I'll cover how a feature I 'vibe coded' works (and often fix the code / modify it ).
So what was this thing? Really it's an experiment but within that experiment I wanted to investigate some ideas around social moderation and increased human interaction using LLMs. Combined with that is an obsession with realistic sample data to make development easier. Stuff like building a search function / summarisation etc rely on you having lfelike content...LLMs can provide that.
Well you can see the source code here; I'll need to work out how to host it (likely an old laptop which has a GPU and some lower rend models).
So you can see it generates seemingly real looking forum threads. It's also got translations (well will have, hard to get working smoothly) and a nice forum functionality.
A forum/chat hybrid that fuses the depth of threaded discussions with the immediacy of social chat. Powered by ASP.NET Core + PostgreSQL (ltree), it delivers lightning‑fast hierarchies, a lightweight reactive UI, and AI‑assisted moderation that adapts to each community’s charter. Unlike traditional platforms, this isn’t just a forum—it’s a toolkit for self‑sustaining, identity‑driven communities. Communities define their own purpose and values, enforce them through charter‑aware moderation, and sustain themselves with flexible models like ads, subscriptions, or knowledge‑for‑credit loops. With cutting edge features like the site dynamically translating content to provide a seamless experience for users everywhere through giving feedback on how your replies may be taken it's a user focused LLM driven powerhouse. Think of it as a sandbox for vibe coding meets governance lab: a place to experiment with local LLMs, community charters, and new economic primitives—while reimagining how online spaces can be resilient, fair, and future‑proof.
So...that's kind of the idea. It's this LLM driven thing that uses Ollama / LMStudio / OpenAI to provide both sample content and a rich moderation experience. Here moderation ensures that you can both set site wide standards as well as additional forum level 'charters' which define how the forum should operate. Is it an edgy forum discussing politics and allowing some agressive debate or is it a professional foorum where you'd expect interactions to be pleasant.
Now your community can define and vote for a charter which defines how a community should operate. The community can then decide how it's applied, is it a strict auto-mod (with appeals or not) or is just a gentle nudge before they post as to how it might seem to people.
Oh and because I'm obsessed with access to information I'm also into translation (as you can see from the early stuff on this blog using EasyNMT). One of my goals for LucidForum was also to implement a seamless internationalisation system. Here you just add a couple of params in a tag helper and it will auto translate it in realtime; so the site appears to be entirely in your native language.
I hate the term; I really do. It sounds so...fluffy but in reality it's likely the end of much of what we knew about web development. But to stay employable I needed to learn it so...I decided that i'd start from File->New ASP.NET Core Web Application and ONLY code it using Junie. No code (I did cheat a bit and add my tailwind, some js files for client side and some webpack bitz) but all the C# and Razor code was done by Junie.
It's fascinating, it's great at a ton of stuff but you still need to have the idea and be able to describe it....you still need the inamous 'Feature Spec'. Without that even as someone who's built hundreds of apps I found I could get lost. Really any semi useful app has a BUNCH of 'features' all of which need to be built. To be a PLEASANT experience they also really need to work coherently together...that's HARD with LLM coding Agents.
The primary agent I used was Junie, the AI coding agent thing from JetBrains . I'm no expert but was there in Rider (the IDE I prefer), it can do the 'mcp stuffz' and it was FAIRLY cheap (I bought an Ultimate sub for it and am topping up as needed).
Honestly it's good, really, worryingly good. But it has the same problem building applications always has; you need a clear 'spec' to have it work out well. LLMs miss some key aspects of system design, the don't seem to hold any artchitectural concept / principles in their 'mind' so the code all feels like it's written by different 'by the hour' 'Fivrr' devs who never really talk to each other or you and only write exactly what's in the spec.
This leaves the code disjointed and feeling 'rough'. I mean it's pretty much the quality a LOT of Startup MVPs wind up at which is actually kind of a good thing (well for specialists in fixing up Startup's MVPs and scaling them like me!).
So these MCP / Coding Agent tools are already extremely capable. They can build features & get an MVP running RAPIDLY but do need some technical know how as something to guide them. You can't just say 'build me a forum' and get something useful. You need to break it down into features and sub features and have a decent idea of how they all fit together. That said, I DO plan to transform LucidForums into an actual 'product' you can deploy.