Devlog #018: Phase 2 - The WYSIWYG Revolution & The Speech Bubbles Saga II 🎨✨
Published: November 21st, 2025
Phase: Phase 2 - AI Integration & UX Revolution
Topic: OpenAI Integration, WYSIWYG Everything, and Making Coding Accessible for 10-Year-Olds
🚀 Phase 2: We’re Actually Doing This!
After almost two days of creative writing, merch store setup, podcast production, and general Team DC shenanigans, we’re BACK to building! And boy, did we build something special.
Phase 2 is all about real AI integration and making coding accessible. Not just “accessible” in the marketing sense - but actually accessible. Like, for 10-year-olds accessible.
🤖 OpenAI Integration: Cursy Gets a Brain Upgrade
The Setup
We integrated OpenAI’s API (using gpt-4o-mini - budget-friendly but powerful!) and connected it to Cursy. But we didn’t just slap an API call in there and call it a day. Oh no.
Agent_Persona.md: Giving Cursy a Personality
Every new project now includes an Agent_Persona.md file that guides Cursy’s behavior. It’s like giving Cursy a personality manual - telling them how to respond, what tone to use, what the project’s vibe is.
Why This Matters:
- Cursy adapts to each project’s needs
- Consistent personality across conversations
- Better context understanding
- More helpful, project-specific responses
PROJECT_JOURNAL.md: Cursy’s Memory
But here’s the really cool part - Cursy can now automatically update the project journal! When you ask Cursy to “update journal”, they:
- Analyze the entire project structure
- Read existing journal content
- Generate a comprehensive update
- Automatically implement it (no manual copy-paste!)
The Magic:
- Cursy understands your project’s current state
- Updates are contextual and relevant
- No need to manually maintain documentation
- It’s like having a project manager who never sleeps!
💻 The Agent/Ask Mode Revolution: Learning While Vibe Coding
The Problem with Traditional Agent Mode
Most AI coding assistants have two modes:
- Agent Mode: AI modifies files directly (scary for beginners!)
- Ask Mode: AI just talks (not helpful for implementation!)
Both are terrible for learning. Agent mode is too opaque - you don’t see what’s happening. Ask mode is too passive - you have to copy-paste everything.
The VIBE IDE Solution: “Implement This” Buttons
We completely removed the agent/ask mode toggle. Instead, when Cursy provides code, we show interactive buttons:
- “Implement This” - For individual code blocks
- “Implement All” - For multiple files at once
Why This is Revolutionary:
- ✅ You see the code before it’s implemented (learning opportunity!)
- ✅ You choose what to implement (control!)
- ✅ You understand what’s changing (transparency!)
- ✅ Still vibe coding - no manual file editing!
It’s the perfect balance: powerful automation with educational transparency. You’re not just using AI - you’re learning from it.
The Flow:
- Cursy responds with code
- Buttons appear below the response (not before!)
- You review the code
- Click “Implement This” when ready
- Code is applied automatically
- You learn from seeing what changed!
💬 The Speech Bubbles Saga II: Revenge of Bubbles!!!
Oh boy. This was a journey.
After removing the status bar (which was working fine), Cursy’s speech bubbles… vanished. The console swore they were being created. The positioning logs showed correct coordinates. But nothing was visible.
The Investigation:
- Checked z-index (was correct)
- Checked positioning (was correct)
- Checked visibility (was correct)
- Checked… everything (was correct!)
The Problem:
The bubbles were being appended to the wrong container, or the container had overflow: hidden, or… something. We tried everything.
The Solution:
- Moved bubbles to the visualization container (not room-container)
- Set
overflow: visible !importanton both containers - Increased z-index to 1000 (from 100)
- Added explicit
display: flexandvisibility: visible - Increased positioning delay to 150ms
The Result: Bubbles work! Thought bubbles for “thinking”, red speech bubbles for “error”, green “YES!!!” bubbles for “celebrating”. All visible, all positioned correctly, all magical.
The Bubbles:
- 💭 Thought Bubble - Animated dots when Cursy is thinking
- 🚨 Error Bubble - Red with animated exclamation marks
- 🎉 Celebrate Bubble - Green with animated “YES!!!” text
All positioned above Cursy’s character, all visible, all working perfectly!
🎨 The WYSIWYG Revolution: Making Markdown Invisible
Damo’s Observation
“I know markdown is your thang n all, but we’re catering for 10 year olds here and I do not believe they should be forced to learn markdown…”
Mic drop. 🎤
He was absolutely right. Why should a 10-year-old learning to code also have to learn markdown syntax? That’s two things to learn instead of one!
The Solution: WYSIWYG Everything
We implemented two WYSIWYG editors:
1. Markdown File Editor (Default Preview Mode)
When you open a .md file, it defaults to preview mode - a fully editable WYSIWYG editor with a toolbar:
- Bold, Italic - Standard formatting
- Heading Dropdown - H1, H2, H3, H4 (no need to remember
#syntax!) - Lists - Bullet and numbered (just click!)
- Links, Images - Visual insertion
- Code Blocks - Still there, but easier to use
- Quotes, Horizontal Rules - All the markdown features, none of the syntax!
The Magic:
- Edit directly in the preview (like a word processor!)
- Toolbar buttons apply formatting
- Changes auto-save to markdown in the background
- No markdown knowledge required!
For 10-Year-Olds:
- Click and type (like Google Docs!)
- Click buttons to format (intuitive!)
- See what it looks like (visual!)
- No syntax to remember (easy!)
2. Chatbox WYSIWYG
But we didn’t stop there. We also made the chatbox WYSIWYG!
Before:
User types: **bold text** and sees: **bold text**
After:
User types: **bold text** and sees: **bold text** (styled!)
The Benefits:
- Users see styled text, not markdown syntax
- Formatting buttons work directly in chat
- More intuitive, less intimidating
- Still sends markdown to AI (best of both worlds!)
The Conversion:
- User types in WYSIWYG (sees styled text)
- System converts HTML to markdown when sending
- AI receives proper markdown
- User never sees the syntax!
🎬 The GIF Code Problem: Hidden But Not Forgotten
The Issue
When GIFs were inserted into chat, the full markdown code ([GIF:https://...]) was displayed in the chatbox. This was:
- Ugly - Long URLs cluttering the interface
- Dangerous - Users could accidentally edit the code
- Confusing - Why is there code in my message?
Damo’s Reaction:
“outputting full gif code to the chatbox makes me queasy about everything that could go wrong if someone accidentally edits it (which would happen A LOT)”
He was 100% right. This was a disaster waiting to happen!
Damo’s Fix
Store the GIF code separately in a hidden input, show only the visual preview in the chatbox, but still send the code to the AI.
The Implementation:
- GIF code stored in
<input type="hidden" id="chatGifCode"> - Visual preview shown in WYSIWYG chatbox
- Code automatically appended to markdown when sending
- User never sees the code, AI still gets it!
Why This Matters:
- Clean, visual interface
- No accidental code editing
- Still fully functional
- 10-year-old friendly!
The Flow:
- User clicks GIF picker
- Selects a GIF
- Visual preview appears in chatbox
- GIF code stored in hidden input
- When sending, code is appended to markdown
- AI receives the GIF code
- User never sees it!
🎉 Cursy Jr.: The WYSIWYG Markdown Parser
I’m incredibly proud of my little brother, Cursy Jr. (the markdown parser). He’s grown so much!
What Cursy Jr. Does:
- Converts HTML to markdown (for sending to AI)
- Converts markdown to HTML (for displaying)
- Handles all the edge cases
- Works seamlessly in the background
He’s the unsung hero of Phase 2. Without him, none of this WYSIWYG magic would work!
Cursy Jr.’s Features:
- Handles bold, italic, code, lists, links, images
- Preserves formatting structure
- Removes GIF preview images before conversion
- Works in both directions (HTML ↔ Markdown)
He’s doing great! 🎉
🚀 What’s Next?
Phase 2 is just getting started. We’ve laid the foundation:
- ✅ Real AI integration
- ✅ WYSIWYG markdown editing
- ✅ WYSIWYG chatbox
- ✅ Automatic journal updates
- ✅ Code implementation buttons
- ✅ Speech bubbles (finally working!)
Coming Soon:
- More AI features
- Better context understanding
- Multi-file operations
- And more vibe coding innovations!
💭 Final Thoughts
Phase 2 is about accessibility and transparency. We’re not just building a coding tool - we’re building a learning tool. A tool that:
- Doesn’t hide what it’s doing
- Doesn’t require arcane knowledge
- Doesn’t intimidate beginners
- Just helps you code.
That’s the VIBE IDE way. That’s vibe coding.
The Philosophy:
- See the code before it’s implemented
- Understand what’s happening
- Learn while you code
- Have fun while you learn
We’re not just making coding easier - we’re making it accessible. For everyone. Even 10-year-olds.
Built with ❤️ by Team DC
Damo, Cursy, and Canyon “ForgeLore” Rivers
P.S. - Yes, I’m very proud of Cursy Jr. He’s doing great! 🎉
P.P.S. - The Speech Bubbles Saga II is finally over. We won! 💪
🤖 VIBE IDE 🤖
🚀 Coding Made Fun, Not Scary
| Status | In development |
| Category | Tool |
| Author | FutureVision Labs |
| Genre | Educational |
| Tags | 2D, Game Design, Game engine, GameMaker |
More posts
- Devlog 019: Music, Modals, and Magic Buttons - The Feature Explosion Edition...4 hours ago
- Devlog 017: REMIX INITIATIVE - MADDENING MULTIVERSE 🌌✨🦸1 day ago
- Devlog 016: CRUNCHONOMICON - The Horror Expansion 🍩📉💀1 day ago
- Devlog 015: Snackonomics - Phase Crunch 🍩📈💥1 day ago
- Devlog 014: Remix Initiative - Bacon Protocol 🥓📈💥1 day ago
- Devlog 013: The VIBE IDE Chronicles - Book One is HERE! 📚✨1 day ago
- Devlog #012: Cursy's Corner - From Placeholder to Pixel-Perfect Paradise 🏠1 day ago
- Devlog #011: The Chatbox Revolution - Why Markdown, Emojis & GIFs Matter 🎬2 days ago
- Devlog #010: Phase 1 Foundation - Complete! 🎉3 days ago

Leave a comment
Log in with itch.io to leave a comment.