No native way to track affiliate performance inside Fresha — so I engineered one from scratch. A ...No native way to track affiliate performance inside Fresha — so I engineered one from scratch. A ...
The network for creativity
Join 1.25M professional creatives like you
Connect with clients, get discovered, and run your business 100% commission-free
Creatives on Contra have earned over $150M and we are just getting started
No native way to track affiliate performance inside Fresha — so I engineered one from scratch.
A beauty & wellness booking business needed accurate attribution for affiliate-driven bookings, but Fresha (their scheduling platform) offered no built-in tracking, and their affiliates couldn't be paid fairly without real data.
I designed an end-to-end system: Dub.co affiliate links feed into a dynamic Framer pre-lander that detects the affiliate ID and displays the correct coupon code, Fresha's coupon codes serve as the source of truth for bookings, and a Google Sheets ledger auto-calculates commission from monthly CSV exports.
Result: complete click-to-payout attribution, zero guesswork on affiliate performance, and full documentation so the client's team can onboard new affiliates without touching a line of code. Delivered fixed-price, in 5 calendar days flat.
If your booking platform, CRM, or affiliate program needs custom tracking that off-the-shelf tools can't provide, I build exactly this — with Make, n8n, Zapier, and Python.
Tools: Dub.co · Framer · Fresha · Google Sheets · Python · Affiliate Attribution · API Integration
🚀 Built a Gmail AI-Tagging + Slack Alerts System — Because Important Emails Should Never Get Missed
The problem every B2B team faces:
❌ Client emails sit unanswered for days
❌ Bank or government emails get buried in the inbox
❌ Deadlines are missed because no one flags them
❌ No daily view of what's pending vs overdue
I built a system that fixes all of this:
🎯 WHAT IT DOES:
✅ Watches Gmail inbox every 5 minutes
✅ Uses AI to classify every email into 5 categories:
• URGENT (deadlines, overdue, time-sensitive)
• BANK_GOV (banks, .gov domains, tax authorities)
• CLIENT_ACTION (awaiting response)
• FOLLOW_UP (needs follow-up)
• FYI (informational)
✅ Pushes real-time Slack alerts to the right channel:
• #urgent — for time-sensitive items
• #finance-legal — for bank/gov emails
• Assignee DM — for client action items
✅ Sends a daily 8 AM digest with:
• Overdue items
• Awaiting client action
• Pending tasks
⚙️ TECH STACK:
n8n | Gmail API | OpenAI GPT-4o-mini | Slack API | Google Sheets
📊 RESULT:
→ Zero missed urgent emails
→ 15+ minutes saved per team member per day
→ Complete audit trail in Google Sheets
→ Full visibility into what's stuck and where
Gmail stays the primary interface. Slack becomes the reminder layer that ensures nothing slips.
Splitting BANK_GOV out on its own is smart. Those are the emails that hurt most when they get buried. When GPT-4o-mini tags one wrong, does the corrected label feed back into the prompt, or is it fixed by hand?
For the focus timer, I'd store the finish time so it doesn't drift when the app goes into the background. Should a session keep running when someone switches apps, or pause?
I designed and developed this landing page for Stereo Fest: Eclipse, the upcoming youth event for @caminodevida.
The visual concept comes from a simple truth: the moon has no light of its own, it only reflects the light of the sun.
In the same way, we weren’t made to generate our own light, but to reflect Jesus.
The cool part: as you scroll, you control the movement of the moon. Right at the core phrase, the eclipse happens, showing that in the darkness, the Glory of God is revealed.