I’ve been copy/pasting “character prompts” between notes and chat apps for months, and finally
got tired of it. So I built a small site where you make a character (name, short backstory, a few
guardrails) and chat with it in a clean, fast UI. Nothing fancy, just enough structure to keep a
persona consistent and easy to tweak.
This is for people who like character-driven chats—role-play, teaching, worldbuilding, or just having
a consistent “voice” for brainstorming—without wading through agent frameworks or dashboard bloat.
What it does today: create a character, tweak tone/constraints, chat with streaming replies, and share
the character. I optimized for speed and predictability over a giant feature list.
Under the hood it’s Next.js + TypeScript + Tailwind, Drizzle + Postgres for schema, and a pluggable
LLM layer (Gemini works now; adding others isn’t hard). Env validation is typed so it’s not a config
mystery box.
Stuff I punted on (for now): long-term memory, tool use, and RAG. They’re cool, but they add latency
and edge cases fast. I wanted something small you can reason about: you know what goes in, and roughly
why the character speaks the way it does.
Trade-offs and rough edges: character consistency is only as good as the instructions you give it;
there’s no magic there. Long threads can drift. First load can be a little sleepy if the server has
to wake up. I’m still figuring out the right “persona controls” that are actually useful vs. knobs for
the sake of knobs.
If you try it, I’d love blunt feedback:
- Which controls help the most to keep a character “in role”?
- What’s missing for sharing/remixing?
- Where did it feel slow or confusing?
If you build a weird or delightful character, please share it—I test with a grumpy archivist who
refuses modern slang, and I’m looking for more. Thanks for reading.
I’ve been copy/pasting “character prompts” between notes and chat apps for months, and finally got tired of it. So I built a small site where you make a character (name, short backstory, a few guardrails) and chat with it in a clean, fast UI. Nothing fancy, just enough structure to keep a persona consistent and easy to tweak.
This is for people who like character-driven chats—role-play, teaching, worldbuilding, or just having a consistent “voice” for brainstorming—without wading through agent frameworks or dashboard bloat.
What it does today: create a character, tweak tone/constraints, chat with streaming replies, and share the character. I optimized for speed and predictability over a giant feature list.
Under the hood it’s Next.js + TypeScript + Tailwind, Drizzle + Postgres for schema, and a pluggable LLM layer (Gemini works now; adding others isn’t hard). Env validation is typed so it’s not a config mystery box.
Stuff I punted on (for now): long-term memory, tool use, and RAG. They’re cool, but they add latency and edge cases fast. I wanted something small you can reason about: you know what goes in, and roughly why the character speaks the way it does.
Trade-offs and rough edges: character consistency is only as good as the instructions you give it; there’s no magic there. Long threads can drift. First load can be a little sleepy if the server has to wake up. I’m still figuring out the right “persona controls” that are actually useful vs. knobs for the sake of knobs.
If you try it, I’d love blunt feedback:
- Which controls help the most to keep a character “in role”? - What’s missing for sharing/remixing? - Where did it feel slow or confusing?
If you build a weird or delightful character, please share it—I test with a grumpy archivist who refuses modern slang, and I’m looking for more. Thanks for reading.