Hi everyone! ![]()
I’m excited to share Thrive on a Dime, a full-scale coaching marketplace I’ve spent the past year building — entirely in Bubble. It connects coaches-in-training with clients who want affordable coaching or metaphysical sessions (tarot, astrology, intuitive guidance, etc.).
This is the first large production app I’ve ever built, and Bubble has been the engine behind every part of it — no custom code.
My learning journey
When I started this project, I had zero Bubble experience. I learned the platform from scratch and leaned heavily on a few educators and resources:
-
@heythere Kelly Claus — I hired her for 1:1 Bubble coaching sessions to help me navigate complex backend workflows, data structuring, and app logic. Her guidance accelerated my learning curve drastically.
-
@matt.n Think It Build It — His course provided a strong conceptual and strategic foundation for building scalable Bubble apps, especially marketplaces.
-
@mattblake No Code Planet — awesome YouTube content and Slack community
-
@jj11 JJ Englert’s courses — Helpful for deeper dives and filling in gaps in advanced Bubble features.
-
@gregoryjohn Gregory John’s free Stripe API course on YouTube — This is what finally helped me wrap my head around Stripe’s API and build out my subscription system, session credit ledger, and payment flows cleanly.
-
@petter Petter Amelie’s book — The Ultimate Guide to Bubble Performance: How to build fast, scalable applications in Bubble.io
-
AirDev’s Free Bootcamp — A great starting point that helped me understand Bubble fundamentals.
I wouldn’t have gotten this far without the Bubble education ecosystem.
What I built in Bubble
It took a few months to get comfortable with Bubble and almost 6 months to truly feel confident architecting more complex features. Thrive on a Dime’s backend is fairly robust, so here’s a closer look:
Backend Workflow Architecture
-
Complete Final Matching Algorithm (21-step workflow)
-
Matching corrections + re-matching logic
-
Multi-step onboarding workflows per user role (coach vs. client)
-
Missed-session workflows
-
Session completion verification
-
Session review + scoring workflows
-
Nudge + reminder workflows
-
Data cleanup + archival tasks
-
Chat message/thread creation
-
Availability expansion/restriction logic
-
Admin recurring workflows
-
Subscription billing + ledger updates
-
Automated Stripe webhook processing
-
Dynamic email sequences (regular + announcement flows)
Scheduling + Marketplace Logic
-
Dynamic availability + blackout times
-
Time-zone aware scheduling
-
Coach activation/inactivation handling for matching
-
Coach availability management including recurring time slots and date-specific black out capability
-
Client preferences feeding into multi-step matching workflows
-
Chat messaging
-
Video call sessions (on the Thrive on a Dime domain using the Daily.co plugin)
Stripe + Payment Infrastructure
Powered entirely by knowledge from @gregoryjohn Gregory John’s YouTube course, plus Bubble’s native API Connector:
-
Subscription product setup
-
Upgrades, downgrades, cancelations
-
Session credit ledger system
-
Automated credit deduction/adding
-
Webhook-based fulfillment flows
-
Refund handling workflows
API Integrations
-
Stripe (subscriptions, sessions, ledger, webhooks)
-
Email service integrations (Loops.so)
-
Video session integrations (Daily.co)
-
Foundations for an AI-based session summary, progress tracking, and coach feedback tool (upcoming)
Why I built it
Coaching is usually expensive and not covered by insurance, and coaches-in-training often struggle to find real practice clients.
Thrive on a Dime bridges both sides:
-
Clients get affordable sessions
-
Coaches get real-world practice
-
The ecosystem becomes more accessible and equitable
My goal is to democratize coaching and make personal development accessible to everyone — and Bubble gave me the power to build the platform from scratch.
Live App
If you’d like to explore it, here’s the live site:
Thrive on a Dime
I’d love feedback — especially on my backend logic, scheduling architecture, and data structure decisions. If anyone is curious about how I approached a specific problem (matching, Stripe, subscription logic, etc.), I’m more than happy to share what I learned.
This forum has been a huge part of my development journey. Thanks to everyone here for the constant inspiration and knowledge. ![]()