How would you like to begin?
Pick a path. You can always switch later inside the editor.
Pick a draft from the left sidebar to keep editing it.
| Name | Contact | Type | Status | Source | Budget | Last touch |
|---|
{{firstName}} · {{lastName}} · {{address}} as merge fields.{{firstName}} · {{lastName}} · {{name}} · {{address}} for per-recipient personalization.How theme switching works
When you click Apply, your choice is saved to your account settings. Chris (cmgroup904@gmail.com) gets notified and swaps your live homepage to the new theme — usually within a few hours. The rest of your site (listings, neighborhood guides, blog, CRM) keeps working exactly the same. You can switch back any time.
Want to see all 4 side-by-side? Visit your theme gallery.
GOOGLE_OAUTH_CLIENT_ID + GOOGLE_OAUTH_CLIENT_SECRET set before this will work. See How To tab for setup steps.
iframe src="..." tag. Where to find them: your MLS portal → Embeddable Market Stats (realMLS calls it "Domus Analytics Dashboards"). Each agent has a unique number in the URL.
➕ Add a new testimonial
Talk it. We'll turn it into a blog post.
Record straight into the browser, or upload a Voice Memo from your phone. Whisper transcribes, Gemini polishes, FLUX generates a cover image. End to end in about a minute.
- Client names, addresses, or deal-specific numbers — fiduciary duty / NDAs apply. Transcripts are processed by Cloudflare AI and saved as drafts.
- Anything that touches Fair Housing protected classes — race, religion, national origin, sex, familial status, disability, age. Describe properties and locations, not who lives there.
- Political opinions, candidates, or partisan commentary — bad for SEO, bad for client relationships, against most brokerage policies.
- Guarantees about price appreciation, rent yields, or tax outcomes — say "historically" or "typically," never "you'll make X%."
- Confidential MLS data, off-market deals, or other agents' listings by name — talk market trends without naming the listing.
- Other people's voices without their permission — record yourself only.
| Name | Contact | Last Activity | Time | Stage |
|---|---|---|---|---|
| Loading… | ||||
What would you like to do today?
- Videos: Record + edit directly in Descript, or use the free CapCut / VEED.io. Save to Drive and paste the link into Studio's Videos tab to publish.
- Blog drafts: Write in any tool you like (Notes, Docs, ChatGPT), paste the result into the post editor.
- Captions only: Submagic is fast and cheap.
- Need a higher cap? Email cmgroup904@gmail.com — Chris can bump it instantly.
Or paste a video URL instead (Drive / Dropbox / OneDrive)
Must be set to "anyone with the link can view." Uses no storage from your quota.Setup status & troubleshooting
This feature uses Descript's AI editor (the same one that removes silence and "um"s in podcasts). The platform needs a Descript API key on file for it to work.
If you see "awaiting credentials": Chris hasn't added the Descript API key yet. Your video is safely queued — it will start processing as soon as the key is added. Email cmgroup904@gmail.com to ping him.
If a job is "failed": the share link might not be public (set to "anyone with link"), or the video format might not be supported (MP4, MOV, WEBM all work fine; some HEIC and old Android codecs don't).
Daily limit: 5 videos per day. (More than that and you're probably batch-creating content — talk to Chris.)
{{firstName}} · {{lastName}} · {{name}} · {{address}}
📝 Publish your first blog post (typing)
- Click 📝 Posts in the top menu.
- You'll see three starter cards. Click ✍️ Write one out.
- Type your raw ideas in the Raw notes box. Don't worry about polish — just thoughts.
- Click ✨ Polish with AI. Wait ~20 seconds. AI generates title, intro, body, and tags.
- Scroll down — click 🎨 Generate cover image (or upload your own).
- Read the draft top to bottom. Edit anything that doesn't sound like you.
- Click Save draft to keep private, or Publish + download to make it live on your blog.
🎙 Record a voice memo → blog post
- Click 🎙 Voice in the top menu.
- Click 🎙️ Choose audio or video to upload (or 🔴 Record now to use your browser mic).
- Audio preview loads — play it back to check it's the right file.
- Click Transcribe → blog draft → cover image. ~60 seconds.
- Studio auto-creates a draft and switches to the Posts tab so you can watch the polish happen.
- Review the draft, edit anything that needs fixing, then Save or Publish.
📡 Get AI to suggest blog topics from current news
- Click 📝 Posts → 📡 AI pick & look up ideas.
- Wait ~15 seconds. Gemini scans this week's real estate news for NE Florida.
- You'll see 3 topic suggestions with a working title, angle, and starter notes.
- Click Use this one on whichever appeals to you.
- Edit the starter notes in the Raw notes box if you want to add your angle.
- Click ✨ Polish with AI → review → Publish.
🏘 Add a property listing
- Click 🏘 Listings → + New Listing.
- Fill in: title (street name), address, city, county, status (Active / Pending / Sold), price.
- Add beds, baths, square footage, year built, property type.
- Write a short description (or paste from your MLS copy).
- List features (granite counters, dock with lift, gated community, etc.) — one per line.
- Upload photos using 📎 Choose photos. Multiple at once is fine.
- Click one photo as the hero — that's what shows on the listing card.
- Paste MLS number + direct MLS link (FlexMLS share link works well here).
- Check Featured if you want this on the home page.
- Click Save listing.
📥 Respond to a new lead
- You'll see a red badge on the 📥 Leads menu when there's something new.
- Click 📥 Leads. New leads appear in the sidebar with a red dot.
- Click a lead to open it. You'll see name, contact info, source page, and their message.
- Click 📞 Call, 💬 Text, or ✉️ Email to reach out — pre-fills their info.
- After you reach out, change Status from "New" to "Contacted".
- Add private notes about the conversation in the Notes box.
- Click Save. The Studio remembers everything so you can pick up where you left off.
- Update status over time: Qualified → Won (or Lost) as the deal progresses.
💬 Add a testimonial from a Zillow review
- Click ⚙ Settings in the top menu.
- Scroll down to 💬 Testimonials.
- Click ➕ Add a new testimonial.
- Copy/paste the review text into the Quote field.
- Add the reviewer's name (first name + last initial, or full name).
- Add their location (e.g. "Ponte Vedra, FL").
- Pick transaction type (Bought / Sold / Both), home type, year, source (Zillow).
- Click Add testimonial. It appears on the home page immediately.
⚙ Refresh your FlexMLS share link
- Log into your FlexMLS account in another browser tab.
- Generate a fresh share link to your active listings.
- Copy the URL.
- Back in the Studio: click ⚙ Settings.
- Paste the new URL into FlexMLS share URL.
- Update Link expires on to the new expiration date.
- Click Save settings.
🖼 Upload your own cover photo (instead of AI)
- Open or create a blog post in the 📝 Posts tab.
- Scroll to the Cover image section.
- Click the 📎 Upload my photo tab (next to "🎨 Generate with AI").
- Click Choose your cover photo.
- Pick a horizontal photo (16:9 works best) — JPG, PNG, or WebP up to 5 MB.
- It uploads and replaces the AI cover (if any).
✂️ Edit or delete an existing post
- Click 📝 Posts.
- In the left sidebar, click the post you want to change.
- To edit: change any field, click Save draft or Publish + download.
- To unpublish: change Status from "Published" to "Draft" → Save.
- To delete: scroll to the bottom action bar → click the red Delete button on the left → confirm.
⛵ About the weekly Weekly Market Report (auto-publishes)
The Weekly Market Report is fully automatic — you don't have to do anything to publish one.
- Every Monday at 7am ET the system generates a 3-section blog post using actual news from the past week.
- It auto-publishes to your blog and appears as a featured banner on your home page.
- Take 2 minutes Monday morning to read it. If anything sounds off, open it in Posts and edit.
- If you want a fresh one right now (e.g. to preview), the worker has a manual trigger — text Chris if you need it.
🚀 Quick start: write your first post
- Click + New Post in the left sidebar
- (Optional) Click Suggest topics from current news for AI ideas grounded in this week's headlines
- Pick a suggested topic, or type your own thoughts into Raw notes
- Click ✨ Polish with AI — 20-30 seconds for a full draft with title, intro, body, and tags
- Click 🎨 Generate cover image — add a custom scene description if you want more control
- Review the draft. Edit anything that doesn't sound like you
- Click Save draft to keep private, or Publish + download to make it live on your blog
🎙️ Voice → Post (talk it, ship it)
Best for when you're driving, between showings, or just want to talk an idea out loud.
- Record yourself in your phone's Voice Memos app (or use the 🔴 Record button right in the Studio)
- AirDrop or text the audio to your computer if you recorded on phone
- In the Voice → Post section, click 🎙️ Choose audio or video and pick your file
- Click Transcribe → blog draft → cover image
- ~60 seconds later you have a full draft with cover
- Review, edit, Save or Publish
Works with: .m4a, .mp3, .wav, .mp4, .mov, .webm — up to 24 MB (~15 min audio).
🏠 Adding & managing listings
- Click the Listings tab at the top
- Click + New Listing
- Fill in address, city, county, price, beds/baths, square footage, year built, property type
- Write a description or paste from your MLS copy
- Add features (granite counters, dock with lift, etc.) — one per line
- Upload photos (multiple at once works). Pick one as the hero — that's what shows on the listing card
- Paste your MLS number + direct MLS link (FlexMLS share link works great)
- Check Featured if you want it on the home page Featured Listings strip
- Save
The listing immediately appears on /listings.html and gets its own detail page at /listing/<slug>.
⛵ The Weekly Weekly Market Report (auto-publishes Mondays)
Every Monday at 7am Eastern, the system automatically generates and publishes a 3-section blog post in your voice using real news from the past week:
- ⛵ Easy Sailing — positive real estate news
- 🌊 Steady Currents — local NE Florida happenings, events, community
- ⚠️ Choppy Waters — cautionary news handled responsibly
What you do: nothing — it's fully automatic.
What you SHOULD do: read it Monday morning. If anything sounds off, open it and edit. AI is well-trained but not perfect.
⚙ Settings (FlexMLS link)
Click the ⚙ tab to manage:
- FlexMLS share link — your broker-generated link to ALL your active MLS listings. Drives the "Browse all NE Florida MLS listings" button
- Link expiration date — FlexMLS links rotate (~30 days). The Studio warns you when it's getting close so you can refresh
When your link is about to expire, log into FlexMLS, generate a fresh share link, paste it in, save. 60 seconds.
🖼 Image library (photos for your posts)
Inside a post editor, scroll to Image library:
- Click 📎 Choose images to upload
- Pick JPG, PNG, WebP, or GIF (up to 5 MB each)
- Click any thumbnail to insert it into your post at the cursor
Use for: house photos from recent sales, neighborhood landmarks, dock/seawall examples in waterfront posts, lifestyle shots.
🛟 Troubleshooting
Can't log in? Check capitalization on your studio token. If still failing, it may have been rotated — contact Chris.
Post didn't publish? Open the post, confirm Status = Published (not Draft), click Save, refresh blog in a new tab.
Cover image looks generic? Type a more specific scene in the custom prompt box: "A wooden dock at sunrise in Ponte Vedra with a heron in the foreground" beats "a dock."
Voice memo too quiet to transcribe? Re-record closer to your phone. Whisper handles background noise well but needs clear voice audio.
Link preview missing/wrong? iMessage / Facebook cache aggressively. Share with ?v=2 at the end once to force a refresh.
Stuck on something not listed here? Ask the AI helper below — or text Chris.