Positive FX Guide
HTML Email

A Complete Guide for June

Your Positive FX Website
in plain English

Every piece of your website and admin panel explained. What runs in the background. Your full branding kit. And, if you ever want to, exactly how to take over yourself.

Section 01

Your website  positivefxcounseling.com

Public Facing

Your site lives at positivefxcounseling.com. Anyone can visit. It is the front door of your practice.

What is on it

Twenty-nine pages organized into a few clear sections:

How it performs

Every page is independently tested every month against Google's PageSpeed Insights. The home page scores essentially perfect across performance, accessibility, best practices, and SEO. Other pages stay in the green band. The exception is the Book page, which is a few points lower because of the third-party SimplePractice widget embedded inside it. That is the trade-off for letting visitors schedule directly without leaving the site.

Behind the scenes

The whole site runs on Cloudflare's global network. Pages serve from the closest data center to each visitor. No traditional server, no monthly hosting bill aside from your domain registration. Updates push out worldwide in seconds.

The contact form

When someone submits a message, three things happen at once:

  1. The message is saved in your admin under Messages, where you can read and reply.
  2. You get an email notification from noreply@positivefxcounseling.com.
  3. An auto-reply is sent back to the visitor confirming you received their note.

If the notification email ever lands in your Gmail spam folder or Promotions tab, mark it "Not spam" once. Gmail learns and delivers future ones to your inbox.

The Book page

Embeds the SimplePractice scheduling widget so visitors can request a consult without leaving your site. When the Google Calendar connection is active, bookings flow into your calendar automatically.

The Kaizen Blog

Posts have a built-in editor in your admin panel with formatting, links, image upload, topic tags, draft and schedule states, and SEO meta fields.

Auto internal-linking. On save, the blog worker reads your post body and automatically links phrases like "anxiety," "grief," "trauma," "loss of a loved one," "boundaries," and many others to the matching service page. You do not have to insert links manually. Just write naturally, and readers get a path from your article to your service pages.

Auto social-share image. When you publish, the system generates a custom Open Graph image for that post on the fly. When someone shares your article on Facebook, LinkedIn, iMessage, or X, a branded preview shows up with your title and a Positive FX visual.

Auto sitemap update. Your sitemap at positivefxcounseling.com/sitemap.xml is dynamic. Every time a post publishes (or you add a new page), it appears in the sitemap automatically. Google rechecks the sitemap and indexes the new URL within a day or two.

SEO and discoverability

Quiet polish

A few touches running in the background that you do not need to think about, but that make the site feel cared for:

Section 02

Your admin panel  your private dashboard

Always Yours

Your admin lives at admin.positivefxcounseling.com. This is your private dashboard. No one but you can see it.

How to log in

1
Open the URLType admin.positivefxcounseling.com into any browser.
2
Enter your emailA small Cloudflare Access screen appears asking for your email. Use the one you set up with us.
3
Check your inboxYou will get an email within a minute with a one-time code.
4
Paste the codePaste it into the browser and you are in.
Stay signed in for a week

Once you sign in, you stay signed in for seven days on that device and browser. After that you do the email-code step again. There is no password to remember or lose. If anyone tries to access the panel without going through your email, they cannot get in.

The six tabs

Overview

Your home base. Six cards on one screen.

Next appointments shows upcoming sessions pulled from your scheduling. New messages shows unread contact-form submissions. License health reads your record from the Florida Department of Health and counts days until renewal. CE progress tracks training hours toward your renewal cycle. PLLC status watches your Sunbiz filing for the May 1 deadline. Recent posts shows your three most recent blog publications.

Appointments

Calendar view with month navigation. List of upcoming sessions you can click into for details, reschedule, or admin-cancel. Blackout days for vacations or PTO. And the Google Calendar connection card.

Click Connect Google Calendar once. The flow opens Google sign-in, you allow access, and you bounce back to the admin. From then on, bookings made on your website land in your Google Calendar, and your existing entries (SimplePractice, Headway, personal) show up here for context.

Messages

Every contact form submission lands here. You can read each, mark read, reply from inside the panel (the reply sends from your noreply address), or delete. There is a separate view for replies you have already sent.

Blog

Rich-text editor with bold, italic, headings, bulleted lists, links, and image uploads. Tag posts by topic (Anxiety, Grief, Self-Care, etc.) so the filters on your public blog page work.

Three save modes: Save as draft (no one sees it yet), Publish now (goes live immediately), Schedule (publishes at a future date and time), or Backdate (publish with an earlier date if you are migrating a post).

Each post has an SEO meta-description field. Every save runs HTML sanitization so accidental bad markup can never break the site.

SEO

A date dropdown lets you switch the time window: 24 hours, 72 hours, 7, 14, 28, 60, or 90 days.

Site analytics shows page views and unique visitors with a daily bar chart. Active visitors now is live to the second. Conversions counts contact-form submits, booking clicks, and phone taps. Top pages and Traffic sources show what is reading and where they came from. PageSpeed scores cycles through your six representative pages every three seconds.

Photo

Drag a photo onto the drop area, or click to choose one. The system auto-resizes for the web, optimizes the file, and replaces your headshot across every page of your website within about twenty minutes.

Previous headshots are kept in a strip on the right. Click any thumbnail to restore. Star a favorite so it does not get auto-cleaned when you cross ten archived versions. Click the small × to manually delete an archived version.

Section 03

Workers running for you  ten tiny programs, one job each

All Live

"Workers" are tiny programs that live on Cloudflare's network and do specific jobs for your site. They run continuously, scale up automatically if traffic spikes, and cost essentially nothing because Cloudflare's free tier covers everything we use.

runs daily
License Monitor

Checks the Florida Department of Health's verification page for your LMHC license. Calculates days until renewal. Surfaces the number on your Overview tab so you never get surprised by an expiry.

runs daily
AR Reminder

Tracks your PLLC annual report status from Florida Sunbiz. Florida requires PLLC filings between January and May 1 each year. This worker watches and reminds you.

on demand
Scheduling

Stores your booking data, manages blackout days, handles reschedules and cancellations from the admin, and serves available slot data to the public booking page.

on demand
Contact Form

Receives form submissions from your public site, validates the data, stores the message, sends you a notification email, and sends an auto-reply confirmation back to the visitor.

on demand
Blog

Stores all blog posts and drafts. Handles the publishing pipeline including scheduling future posts, auto internal-linking on save, sanitizing HTML, and generating the social-share image for each post.

on demand
Media

Stores your profile photo and keeps the last ten versions archived. Serves the live photo to your website with proper caching headers. Handles uploads, restores, and favoriting from the Photo tab.

daily + on demand
Analytics

Connects to Google Analytics 4 with a securely stored OAuth token. Pulls visitor counts, traffic sources, page popularity, and conversion event counts. Caches results so your admin loads fast even when you change the date range.

monthly
PageSpeed Monitor

On the first of each month, asks Google's PageSpeed Insights to test the speed and quality of your six representative pages: Home, About, Blog, Book, First Session, and Anxiety & Depression.

runs daily
Backup

Every day at 4am ET, takes a complete snapshot of every database your admin uses: blog posts, contact messages, scheduling data, license records, AR records, and your profile photo. Keeps thirty days of snapshots.

on demand
Calendar Sync

Connects your Google Calendar via a one-click OAuth flow on the Appointments tab. Pushes booked appointments to your calendar. Pulls existing entries so you can see them in the admin. Includes a "Reconnect" button so you can re-authorize yourself if the connection ever expires.

Why so many

Each worker does one job. If one ever has a problem, the others keep running. They are small, easy to update individually, and Cloudflare's free tier covers all of them combined. Total monthly cost: zero.

Things that happen automatically

The workers above quietly handle these for you. You do not have to do anything to get them.

Section 04

Email and Resend  how messages reach inboxes

Verified

What is Resend

Resend is a service that sends transactional emails on behalf of your domain. "Transactional" means emails triggered by an action: someone fills out the form and you get a notification, you reply to a client through the admin, the backup worker fails and we get alerted. Resend handles the deliverability and authentication so those messages reach inboxes instead of spam folders.

Why not just Gmail SMTP

Gmail's outgoing limits are low (about 500 emails per day) and sending from your personal Gmail through code is fragile. Resend is built for it: a clean API, proper DKIM and SPF signatures, deliverability monitoring, and a free tier of 100 emails per day, which is more than you will ever need for a single-practitioner practice.

What Resend sends for you

The DNS records that make it work

Three records sit in your Cloudflare DNS to authenticate your email:

A quick note on inbox placement

A new sending domain takes a few weeks of consistent legitimate use to build a strong reputation. Until then, occasional messages may land in spam. Marking them "Not spam" trains Gmail and Outlook to deliver future ones correctly. After a month of steady use, you will rarely see this happen.

Section 05

Branding kit  colors, fonts, logos

For Anything You Print or Post

Everything you need to design a business card, an Instagram post, a workshop flyer, or anything else under the Positive FX brand. Click any color swatch to copy its hex code. Click any logo to download.

Colors

Click a swatch to copy the hex code.

Shoji Paper
#f5f0e6
Cream / base background
Kintsugi Gold
#b8925a
Primary accent
Deep Gold
#9a7540
Italic emphasis
Deep Bark
#6b4f24
Body accent / dark links
Sumi Ink
#1a1f2b
Headings and primary text
Aizome Indigo
#3d5578
Navigation and secondary

Typography

Three typefaces, each with a distinct job. All free, all available on Google Fonts.

Cormorant Garamond Serif · Headings & titles · Google Fonts
Small steps. Lasting change.
A warm classical serif that holds its grace at large sizes. Used for all section headings and italic emphasis throughout the site.
DM Sans Sans-serif · Body text & UI · Google Fonts
You are the most important subject you will ever study.
A quiet, modern sans-serif that reads cleanly at small sizes. Used for body copy, navigation, buttons, and small UI labels.
Caveat Handwriting · Accents only · Google Fonts
Welcome. I am glad you are here.
A casual handwritten script used very sparingly for warm signature moments. Not for body copy.

Logos and marks

Click any thumbnail to download. Every logo file is also hosted on your live site under positivefxcounseling.com/brand/logo/.

Mark
MarkPNG
Full Logo
Full LogoPNG
Master
Master LockupPNG
Mark on Dark
Mark · On DarkPNG

Vector (SVG) sources

For print, scaling, or design work, raw SVG files are at positivefxcounseling.com/brand/logo/:

PNG sizes (for raster needs)

Sized logos for places that need a specific dimension (favicons, app icons, social profile pictures). Available at positivefxcounseling.com/brand/logo/sizes/:

Brand voice notes

Section 06

Taking over completely  if and when you decide

Optional

You own everything. Steve has access right now because he built and maintains the system for you. If you ever decide to remove him completely, here is the full path through each service. None of this is urgent. It is here so you know exactly what to do and feel in control of your own setup.

Cloudflare (your website, admin, and workers)

Where: dash.cloudflare.com, your account.

What lives here: Your domain, your DNS records, the public website (Pages project named pfx-site), your admin panel (pfx-admin), and all ten workers.

To remove Steve: Manage Account → Members → find his email → Remove. Confirm.

After removal: Generate a new ADMIN_SECRET value on each worker (10 places) and update the matching value on the Pages project. Steve can hand you the exact wrangler commands to do this in one batch, or you can do it through the dashboard one secret at a time.

Google Cloud Platform (the OAuth client behind analytics and calendar)

Where: console.cloud.google.com, project named "Positive FX Analytics."

What lives here: The OAuth Client ID that lets your workers talk to Google Analytics, PageSpeed Insights, and Google Calendar.

To remove Steve: IAM & Admin → IAM → find his email → Remove. Confirm.

After removal: The OAuth Client itself stays valid because it is tied to the project, not to a person. Workers keep working. If you want to be extra cautious, you can regenerate the OAuth Client Secret in Credentials, then update it on the analytics, pagespeed, and calendar-sync workers.

Google Analytics 4

Where: analytics.google.com, Positive FX property.

What lives here: Your visitor stats, conversion events, key event configuration.

To remove Steve: Admin → Account access management (or Property access management) → find his email → Remove.

Google Tag Manager

Where: tagmanager.google.com, container GTM-PBFJSQ7Z.

What lives here: The triggers that tell GA4 when someone submits the contact form, clicks Book, or taps your phone number.

To remove Steve: Admin → User Management → find his email → Remove.

Google Search Console

Where: search.google.com/search-console, positivefxcounseling.com property.

What lives here: Search performance data, indexing status, sitemap submissions.

To remove Steve: Settings → Users and permissions → find his email → Remove access.

Resend (your email sending account)

Where: resend.com.

What lives here: The API key used by your workers to send email through your domain.

To remove Steve: Settings → Team → find his email → Remove. Then rotate the API key (API Keys → revoke old → create new) and update it on the contact-form and pfx-backup workers.

Your domain (positivefxcounseling.com)

Where: Whoever currently registers your domain (likely Squarespace Domains or a similar registrar, the original site lived on Squarespace before we migrated).

What to do: Confirm the registration is under your name and your email. Make sure you have the login credentials. The domain renewal is yearly; missing it would take the site offline, so it is worth setting up auto-renew with a card you own.

If you want Cloudflare to register it instead: Cloudflare Registrar charges wholesale rates with no markup, which is the cheapest option. The transfer takes a week and requires unlocking the domain at the old registrar.

SimplePractice and Headway

These are entirely your accounts. Steve has no access to either and never has. Login at simplepractice.com and headway.co respectively.

If you want to do this all at once

Text Steve and say "let's transfer everything to me." He will walk you through it in one sitting, hand off all credentials, and the whole site keeps running through the transition. Nothing breaks. It is meant to be smooth whenever you decide.

Section 07

If something feels off  what to do

No Stress

If a card on the dashboard stays on "Loading" forever, if you cannot sign in, if an email never arrives, or if you spot a typo on the site, text Steve. He built it and will fix it.

Nothing on the admin can be broken by clicking the wrong thing. The destructive actions all ask "are you sure?" first. The daily backups mean anything accidentally deleted can be brought back.

A note on privacy

None of the analytics or messaging systems track or store client health information. The website knows when people visit, which pages they read, and whether they submitted the contact form. It does not know who they are individually, what they wrote in the form (other than the message you choose to read in the admin), or anything about why they reached out. HIPAA-sensitive work happens entirely inside SimplePractice and Headway, which are separate from this site.

Quick reference URLs

June, your site is in good hands. Built with care for Positive FX Counseling & Wellness.