Streamo.gg
I thought I was learning AI. I was learning infrastructure.
I thought I was learning AI. I was learning infrastructure.
I was not late to AI.
That part matters.
I created my ChatGPT account the day it launched.
Jump to the tools + skills I learned →
Years before that, I was already using AI tools like Beautiful.ai for presentations. I had already built an AI healthcare program from the ground up. More than 15 years ago, I worked on a U.S. patent involving facial recognition integration into a tool.
So no. I was not sitting around wondering if AI mattered. I knew it mattered. I had seen enough to know this was not a trend. It was a shift.
The problem was not that I was late. The problem was that I was early enough to see the promise — and early enough to hit every rough edge before the tools became what they are now.
The ideas were there. The tools were almost there. And almost is where a lot of the pain lives.
Enter Streamo.gg.
In July 2025, I started building Streamo.gg: a gaming idea, a culture idea, a vibe-based community built around one line:
Vibe is the Algorithm™.
I thought I was building a platform. I was not. I was walking into the most frustrating technical education of my life.
July 2025 AI was not today’s AI.
The tools were powerful, exciting, expensive, inconsistent, confident, and constantly breaking things.
I tried Claude early, ChatGPT, Horizons, app builders, image tools, video tools, writing tools — anything that looked like it could get the thing out of my head and onto the screen.
At the time, Horizons was the best thing I could find. Best did not mean easy. Best meant possible. Barely.
I worked like a person with no exit.
I worked my regular job. Then I logged off and worked on Streamo.
Every night. Seven days a week. Weekends. All-nighters.
For months, that was my life: work, Streamo, sleep sometimes, repeat.
It was not cute. It was not balanced. It was not sustainable. It was obsession with a login screen.
Everything broke.
Every change broke something.
I would ask for one fix, and the tool would “helpfully” change three other things I never asked it to touch.
I wanted rounded rectangles. It kept bringing back ovals. I hate ovals.
That sounds small until you are fourteen hours into a build and the tool has once again redesigned something you already fixed.
I rebuilt Streamo more times than I can count. Probably 30 or 40 full rebuilds. Not versions. Rebuilds.
The kind where you stare at the screen and wonder if you are learning or losing your mind. Maybe both.
I thought an admin tool would save me.
It did not.
I thought:
If I can build an admin tool, I can control the platform.
Instead, I had an AI builder trying to build the platform and the tool to manage the platform at the same time.
A nightmare with a sidebar.
The code got messy. The database got fragile. The app got close. Then it crashed. Again.
Then the tool told me to write SQL.
I did not want to write SQL. I wanted to describe the thing and have the pretty thing appear. That is not how real software works.
So I learned.
I got into the database. I learned SQL, tables, fields, records, relationships, schemas, broken schemas, and why bad structure breaks everything above it.
I learned that the database is where the truth lives. And if the truth is messy, the product is messy.
Then came the invisible work.
The work nobody sees: edge functions, cron jobs, scheduled tasks, API calls, webhooks, auth flows, OAuth, environment variables, logs, storage, admin settings, and platform configuration.
The things behind the button. The things behind the screen. The things behind the thing that looks simple.
I pulled API access from Twitch, researched Kick, worked through YouTube logic, explored Stripe and payment flows, and dealt with Google integrations and map-related thinking.
I learned that “just connect it” is almost never just connect it.
I made the visuals too.
Not by typing one prompt and accepting whatever came back.
I pushed AI image tools over and over until the vibe worlds, genres, visuals, and atmosphere matched what I had in my head. Reject, adjust, refine, push harder. Fix the tone. Fix the composition. Fix the feeling.
Taste is work. Direction is work. Knowing when something is almost right but still wrong is work.
The building of the thing became art to me. But it was brutal.
I paid for it.
With money, sleep, time, and my body.
I gained 30 pounds. I lived on nachos and “I’ll deal with it later.” That part is not cute. I regret it.
It is also part of why Habits That Matter™ exists. Because building real things matters. But so does the person building them.
For a while, I wondered if I wasted ten months.
I did not.
I learned the foundation. I learned how products are structured. I learned the difference between a generated screen and a working system.
I learned that AI can create momentum, but it cannot replace taste, judgment, structure, or persistence.
I learned that “simple” is not easy. Simple takes more thinking.
Then the tools changed.
And so did I.
Months in, I went back to Claude. By then, the tools had improved. But more importantly, I had improved.
I knew what I was asking for. I knew what was probably breaking. I knew where to look.
I knew the difference between a UI problem, a database problem, a logic problem, and an AI hallucination dressed like confidence.
Then I learned VS Code. Then I learned I could connect Claude into VS Code. That changed everything.
For the first time, the work felt less like fighting a slot machine and more like working inside an actual development flow.
I could see the code. I could understand the structure. I could stop blindly trusting the builder and start steering the build.
Now, with tools like ChatGPT Codex, the difference is ridiculous.
What used to take days of confusion can become working changes, cleaner code, better debugging, and faster iteration.
But the lesson stayed the same: AI is powerful. AI is not magic.
What Streamo forced me to learn
AI tools + workflows
- ChatGPT
- Claude
- Claude inside VS Code
- ChatGPT Codex
- Midjourney
- DALL·E
- Runway
- Beautiful.ai
- Horizons
- AI app builders
- AI website builders
- AI image tools
- AI video tools
- AI writing tools
- AI coding tools
- AI-assisted debugging
- AI-assisted UI design
- AI-assisted copywriting
- AI-assisted product planning
- Prompting
- Re-prompting
- Context management
- Tool comparison
- Tool limitations
- Credit limits
- Build loops
- Rebuild loops
- Debug loops
- When to trust AI
- When not to trust AI
- How to push AI past generic output
- How to turn AI fragments into a system
Development workflow
- VS Code
- GitHub
- Git
- Branches
- Commits
- Pulling changes
- Pushing changes
- Vercel
- Deployments
- Preview builds
- Production builds
- Supabase
- Project structure
- File structure
- Frontend editing
- Backend logic
- Reading code
- Tracing errors
- Debugging broken changes
- Refactoring messy code
- Restoring broken layouts
- Understanding what changed
- Understanding why it broke
- Console errors
- Logs
- Environment variables
- Deployment thinking
- Version control concepts
- Build errors
- Testing changes
- Rebuilding features
- Working inside a real codebase instead of only a visual builder
Database + SQL
- SQL
- Database architecture
- Tables
- Fields
- Records
- Relationships
- Primary keys
- Foreign keys
- User data
- Content data
- Admin data
- Settings data
- Platform configuration
- Data cleanup
- Schema changes
- Broken schema fixes
- Re-architecting tables
- Understanding how the database holds the truth
- Understanding why bad database structure breaks the app
Backend + infrastructure
- Supabase
- Vercel
- Resend
- Streaming hosting costs
- Self-hosted streaming tradeoffs
- Edge functions
- Cron jobs
- Scheduled tasks
- Server-side logic
- Email capture
- Transactional email thinking
- API calls
- Webhooks
- Auth flows
- OAuth concepts
- Permissions
- Roles
- Admin controls
- Storage
- Secure settings
- Environment configuration
- Background jobs
- Error handling
- Function logs
- Integration failures
- Why invisible infrastructure matters
APIs + integrations
- Twitch API
- Kick research
- YouTube workflows
- YouTube Live concepts
- Google integrations
- Google Maps concepts
- Stripe concepts
- Resend
- Email delivery
- Newsletter capture
- Domain setup
- DNS thinking
- Payment flow thinking
- Embeds
- External links
- API keys
- API permissions
- Platform-to-platform connections
- Integration setup
- Integration debugging
- Why “just connect it” is never just connect it
Streaming + media systems
- Streamo as a gaming/media platform
- OBS
- Streaming software
- Stream Decks
- Microphones
- Audio setup
- OBS scenes
- OBS sources
- OBS overlays
- Stream packages
- Stream keys
- Live platform logic
- Twitch behavior
- Kick behavior
- YouTube behavior
- YouTube Live
- Viewer flow
- Live rooms
- Vibe-based discovery
- Always-on content thinking
- Media identity
- Genre worlds
- Visual loops
- Background visuals
- Hosting your own streaming
- The cost of hosting your own streaming
- Community energy
- Platform culture
UI + UX
- Landing pages
- Dashboards
- Cards
- Lists
- Tags
- Filters
- Navigation
- Onboarding
- Empty states
- Buttons
- Forms
- Status states
- Admin flows
- User flows
- Content flows
- Visual hierarchy
- Spacing
- Layout consistency
- Design systems
- Component reuse
- Rounded rectangles
- Avoiding generic templates
- Making screens feel intentional
- Removing clutter
- Knowing when I overbuilt
- Making simple things actually simple
Brand + visual systems
- Streamo.gg identity
- Vibe is the Algorithm™
- VibeTags
- Gaming culture positioning
- Genre identities
- Vibe worlds
- AI-generated art direction
- Prompting for visuals
- Rejecting bad visuals
- Refining atmosphere
- Color systems
- Promotional graphics
- Launch language
- Community tone
- Making the product feel like a world
- Making a brand feel alive
Product strategy
- What belongs in v1
- What does not belong in v1
- What needs to be removed
- What needs to be simplified
- What should be admin-controlled
- What should not be admin-controlled
- What users actually need
- What only feels useful because I overthought it
- How platforms become complicated fast
- Why “simple” takes more thinking
- The difference between a cool idea and a working product
- The difference between a generated screen and a real system
The lesson
I thought I was learning AI. I was learning infrastructure.
I thought I was building a gaming platform. I was learning how products are structured.
I thought the tools were supposed to make it easy. They made it possible.
There is a difference.