fix(docs): address CTO review feedback on marketing site

- Convert mobile-groomers.html from Markdown to proper HTML
- Fix "Client/p pet profiles" typo → "Client/pet profiles"
- Add missing trailing newlines to all files
- Remove duplicate "Back to Home" link in getting-started/index.html
- Fix link paths: use relative URLs instead of /groombook/docs/ absolute paths
- Remove placeholder testimonials with fake names

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Groom Book CTO
2026-03-24 21:56:16 +00:00
parent 6945efdbed
commit 735c0f09fd
6 changed files with 148 additions and 106 deletions
+1 -1
View File
@@ -16,4 +16,4 @@ footer:
- label: Issues
url: https://github.com/groombook/groombook/issues
- label: Discord
url: https://discord.gg/groombook
url: https://discord.gg/groombook
+2 -2
View File
@@ -32,7 +32,7 @@
<p class="date">March 2026</p>
</header>
<a href="/" class="back-link">← Back to Home</a>
<a href="../" class="back-link">← Back to Home</a>
<p class="highlight"><strong>We built the CRM you've been waiting for if you're tired of paper files, spreadsheets, and overpriced salon software that spies on you.</strong></p>
@@ -127,4 +127,4 @@
<p style="margin-top: 20px; font-size: 0.8rem; color: #999;">Standing on the shoulders of: Hono, React, Drizzle ORM, CNPG, Authentik, and the open source community.</p>
</footer>
</body>
</html>
</html>
+2 -2
View File
@@ -41,7 +41,7 @@
<p class="date">March 2026</p>
</header>
<a href="/" class="back-link">← Back to Home</a>
<a href="../" class="back-link">← Back to Home</a>
<div class="story">
<p>My groomer's name is Maria. She's been grooming for 22 years. She has a small salon with two chairs, a bathtub for the big dogs, and a wall of laminated breed standard cards that her mentor gave her in 2002.</p>
@@ -151,4 +151,4 @@
<p style="margin-top: 10px;">Groom Book — Open Source Pet Grooming Software</p>
</footer>
</body>
</html>
</html>
+3 -5
View File
@@ -30,11 +30,9 @@
<body>
<header>
<h1>Getting Started with Groom Book</h1>
<a href="/">← Back to Home</a>
<a href="../">← Back to Home</a>
</header>
<a href="/" class="back-link">← Back to Home</a>
<p>Groom Book can be run on a single server with Docker Compose or in a production Kubernetes cluster. Choose the path that fits your needs.</p>
<h2>Docker Compose (Recommended for Single Server)</h2>
@@ -114,7 +112,7 @@
<li><a href="https://github.com/groombook/groombook">GitHub Repository</a></li>
<li><a href="https://github.com/groombook/groombook/issues">Report an Issue</a></li>
<li><a href="https://discord.gg/groombook">Join Our Discord</a></li>
<li><a href="/groombook/docs/blog/launch.html">Launch Announcement</a></li>
<li><a href="../blog/launch.html">Launch Announcement</a></li>
</ul>
</body>
</html>
</html>
+8 -8
View File
@@ -157,7 +157,7 @@
Web UI: <strong>http://localhost:8080</strong> &nbsp;|&nbsp; API: <strong>http://localhost:3000</strong>
</p>
<p style="text-align: center; margin-top: 30px;">
<a href="/groombook/docs/getting-started/">Full Getting Started Guide →</a>
<a href="getting-started/">Full Getting Started Guide →</a>
</p>
</div>
</section>
@@ -167,16 +167,16 @@
<h2 style="text-align: center; font-size: 2rem; margin-bottom: 30px;">From the Blog</h2>
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 20px;">
<div style="background: #f9f9f9; padding: 25px; border-radius: 8px;">
<h3 style="margin-bottom: 10px; font-size: 1.1rem;"><a href="/groombook/docs/blog/launch.html" style="color: #1a1a2e; text-decoration: none;">Introducing Groom Book</a></h3>
<h3 style="margin-bottom: 10px; font-size: 1.1rem;"><a href="blog/launch.html" style="color: #1a1a2e; text-decoration: none;">Introducing Groom Book</a></h3>
<p style="color: #666; font-size: 0.9rem; margin-bottom: 15px;">March 2026</p>
<p style="font-size: 0.95rem;">The CRM you've been waiting for if you're tired of paper files, spreadsheets, and overpriced salon software.</p>
<a href="/groombook/docs/blog/launch.html" style="color: #4CAF50; font-size: 0.9rem;">Read more →</a>
<a href="blog/launch.html" style="color: #4CAF50; font-size: 0.9rem;">Read more →</a>
</div>
<div style="background: #f9f9f9; padding: 25px; border-radius: 8px;">
<h3 style="margin-bottom: 10px; font-size: 1.1rem;"><a href="/groombook/docs/blog/why-we-built.html" style="color: #1a1a2e; text-decoration: none;">Why We Built Groom Book</a></h3>
<h3 style="margin-bottom: 10px; font-size: 1.1rem;"><a href="blog/why-we-built.html" style="color: #1a1a2e; text-decoration: none;">Why We Built Groom Book</a></h3>
<p style="color: #666; font-size: 0.9rem; margin-bottom: 15px;">March 2026</p>
<p style="font-size: 0.95rem;">An honest look at the pet grooming software landscape — and why we decided to do something about it.</p>
<a href="/groombook/docs/blog/why-we-built.html" style="color: #4CAF50; font-size: 0.9rem;">Read more →</a>
<a href="blog/why-we-built.html" style="color: #4CAF50; font-size: 0.9rem;">Read more →</a>
</div>
</div>
</div>
@@ -190,10 +190,10 @@
<a href="https://github.com/groombook/groombook">GitHub</a>
<a href="https://github.com/groombook/groombook/issues">Issues</a>
<a href="https://discord.gg/groombook">Discord</a>
<a href="/groombook/docs/blog/launch.html">Launch Announcement</a>
<a href="/groombook/docs/blog/why-we-built.html">Why We Built</a>
<a href="blog/launch.html">Launch Announcement</a>
<a href="blog/why-we-built.html">Why We Built</a>
</div>
</div>
</footer>
</body>
</html>
</html>
+132 -88
View File
@@ -1,114 +1,158 @@
# Groom Book — Mobile Groomer Landing Page
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Groom Book for Mobile Groomers</title>
<meta name="description" content="The grooming salon that comes to you — now with software that keeps up. Offline-capable PWA for mobile pet groomers.">
<style>
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; line-height: 1.7; color: #333; max-width: 700px; margin: 0 auto; padding: 20px; }
header { background: #1a1a2e; color: #fff; padding: 60px 20px; margin: -20px -20px 40px; text-align: center; }
header h1 { font-size: 2rem; margin-bottom: 15px; }
header p { color: #a0a0a0; font-size: 1.1rem; max-width: 600px; margin: 0 auto; }
h2 { color: #1a1a2e; margin: 40px 0 15px; font-size: 1.5rem; }
h3 { color: #333; margin: 25px 0 10px; font-size: 1.2rem; }
p { margin-bottom: 15px; }
ul, ol { margin: 15px 0 15px 25px; }
li { margin-bottom: 8px; }
.highlight { background: #f0f8ff; padding: 15px 20px; border-left: 4px solid #4CAF50; margin: 20px 0; }
table { width: 100%; border-collapse: collapse; margin: 20px 0; }
th, td { padding: 12px 15px; text-align: left; border-bottom: 1px solid #eee; }
th { background: #1a1a2e; color: #fff; }
a { color: #4CAF50; text-decoration: none; }
a:hover { text-decoration: underline; }
.back-link { display: inline-block; margin-bottom: 20px; color: #666; }
.cta-section { background: #f9f9f9; padding: 30px; border-radius: 8px; margin-top: 40px; text-align: center; }
.cta-section h2 { margin-top: 0; }
.faq dt { font-weight: 600; margin-top: 20px; }
.faq dd { margin-left: 0; margin-bottom: 10px; }
footer { margin-top: 60px; padding-top: 30px; border-top: 1px solid #eee; color: #666; font-size: 0.9rem; }
</style>
</head>
<body>
<header>
<h1>Groom Book Goes Mobile</h1>
<p>The same powerful grooming CRM &mdash; appointment scheduling, client records, POS, reminders &mdash; on your phone, in your van, in backyards and driveways across town.</p>
</header>
## Tagline
**"The grooming salon that comes to you — now with software that keeps up."**
<a href="./" class="back-link">&larr; Back to Home</a>
## Hero Section
<div class="highlight">
<p><strong>Works offline. Syncs when you're back in range.</strong></p>
</div>
### Headline
Groom Book goes mobile.
<h2>The Mobile Groomer Problem</h2>
### Subheadline
The same powerful grooming CRM — appointment scheduling, client records, POS, reminders — on your phone, in your van, in backyards and driveways across town.
<p>You're not just a groomer. You're a receptionist, scheduler, record-keeper, and accountant &mdash; all while working out of a van.</p>
Works offline. Syncs when you're back in range.
<p>Most grooming software assumes you have:</p>
<ul>
<li>Reliable WiFi</li>
<li>A fixed location</li>
<li>Time to sit at a desk between appointments</li>
</ul>
### CTA
[Get Started Free](https://github.com/groombook/groombook) · [See How It Works](#how-it-works)
<p>You have none of those things.</p>
---
<h3>What you're actually dealing with:</h3>
<ul>
<li>Appointment info on scraps of paper</li>
<li>Client calls mid-route you can't reference</li>
<li>Credit card processing that takes 10% of your tips</li>
<li>No-show reminders you can't send from the road</li>
<li>End-of-day paperwork that takes longer than the grooming</li>
</ul>
## The Mobile Groomer Problem
<h2>How Groom Book Works for Mobile Groomers</h2>
You're not just a groomer. You're a receptionist, scheduler, record-keeper, and accountant — all while working out of a van.
<h3>1. Install the PWA</h3>
<p>Groom Book is a Progressive Web App. Open it in your phone's browser, tap "Add to Home Screen." It looks and feels like a native app &mdash; no app store required.</p>
Most grooming software assumes you have:
- Reliable WiFi
- A fixed location
- Time to sit at a desk between appointments
<h3>2. Take appointments offline</h3>
<p>The full appointment calendar, client profiles, and pet records are cached on your device. Pull up Mrs. Johnson's doodle's last grooming notes while you're three miles from the nearest cell tower.</p>
You have none of those things.
<h3>3. Check in clients on-site</h3>
<p>Record services performed, add notes, process payment &mdash; all while the dog is still on the table.</p>
### What you're actually dealing with:
- Appointment info on scraps of paper
- Client calls mid-route you can't reference
- Credit card processing that takes 10% of your tips
- No-show reminders you can't send from the road
- End-of-day paperwork that takes longer than the grooming
<h3>4. Sync when you're back in range</h3>
<p>When you hit WiFi or cell service again, everything syncs to your server automatically. No manual uploads. No "export and import" workflows.</p>
---
<h2>Features Mobile Groomers Actually Need</h2>
## How Groom Book Works for Mobile Groomers
<table>
<thead>
<tr>
<th>Feature</th>
<th>Why It Matters</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Offline calendar</strong></td>
<td>Check tomorrow's route without cell service</td>
</tr>
<tr>
<td><strong>Client/pet profiles</strong></td>
<td>Know the dog before you arrive &mdash; allergies, behavioral notes, preferred cuts</td>
</tr>
<tr>
<td><strong>Route notes</strong></td>
<td>"Gate code is 4721" lives in the appointment notes, not your head</td>
</tr>
<tr>
<td><strong>On-site POS</strong></td>
<td>Process credit cards while you're there, not an hour later</td>
</tr>
<tr>
<td><strong>SMS reminders</strong></td>
<td>Reduce no-shows even for clients without app installed</td>
</tr>
<tr>
<td><strong>Service logging</strong></td>
<td>Track what you did, what products used, for future reference</td>
</tr>
</tbody>
</table>
### 1. Install the PWA
Groom Book is a Progressive Web App. Open it in your phone's browser, tap "Add to Home Screen." It looks and feels like a native app — no app store required.
<h2>Pricing</h2>
### 2. Take appointments offline
The full appointment calendar, client profiles, and pet records are cached on your device. Pull up Mrs. Johnson's doodle's last grooming notes while you're three miles from the nearest cell tower.
<p><strong>Groom Book: Free.</strong> No monthly fee. No per-groomer fee. No cut of your bookings.</p>
### 3. Check in clients on-site
Record services performed, add notes, process payment — all while the dog is still on the table.
<p>Host it on a $10/month VPS, an old laptop in your van, or a Raspberry Pi. Your server, your rules.</p>
### 4. Sync when you're back in range
When you hit WiFi or cell service again, everything syncs to your server automatically. No manual uploads. No "export and import" workflows.
<p>Compare that to mobile-friendly SaaS alternatives at $150&ndash;300/month &mdash; and they still don't work offline.</p>
---
<h2>FAQ</h2>
## Features Mobile Groomers Actually Need
<dl class="faq">
<dt>Does it work without internet?</dt>
<dd>Yes. The PWA caches your data locally. You can view appointments, client records, and take notes offline. Changes sync when you reconnect.</dd>
| Feature | Why It Matters |
|---|---|
| **Offline calendar** | Check tomorrow's route without cell service |
| **Client/p pet profiles** | Know the dog before you arrive — allergies, behavioral notes, preferred cuts |
| **Route notes** | "Gate code is 4721" lives in the appointment notes, not your head |
| **On-site POS** | Process credit cards while you're there, not an hour later |
| **SMS reminders** | Reduce no-shows even for clients without app installed |
| **Service logging** | Track what you did, what products used, for future reference |
<dt>What if I lose my phone?</dt>
<dd>Your data is on your server, not your phone. Install Groom Book on a new device, log in, and everything is there.</dd>
---
<dt>How do I accept credit cards?</dt>
<dd>Groom Book includes a built-in POS. Connect a card reader (Stripe Terminal or similar) or record cash/check payments manually.</dd>
## Pricing Context
<dt>Can I use this alongside my existing software?</dt>
<dd>Yes &mdash; many groomers start with Groom Book for new client intake while keeping existing systems for historical data during a transition period.</dd>
**Groom Book: Free**
No monthly fee. No per-groomer fee. No cut of your bookings.
<dt>Do I need technical skills to set it up?</dt>
<dd>Basic Docker knowledge is enough. <code>docker compose up</code> gets you running in 5 minutes. Full Kubernetes setup for advanced users.</dd>
</dl>
Host it on a $10/month VPS, a old laptop in your van, or a Raspberry Pi. Your server, your rules.
<div class="cta-section">
<h2>Ready to cut your software costs?</h2>
<p>Groom Book is free, open source, and runs on your own server.</p>
<p style="margin-top: 20px;">
<a href="https://github.com/groombook/groombook" style="display: inline-block; padding: 12px 24px; background: #4CAF50; color: #fff; border-radius: 6px; text-decoration: none; font-weight: 600;">View on GitHub</a>
<a href="getting-started/" style="display: inline-block; padding: 12px 24px; background: #333; color: #fff; border-radius: 6px; text-decoration: none; font-weight: 600; margin-left: 10px;">Getting Started Guide</a>
</p>
</div>
Compare that to mobile-friendly SaaS alternatives at $150-300/month — and they still don't work offline.
---
## Testimonials (placeholder for real quotes when available)
> "I was using a paper planner and Venmo for payments. Groom Book replaced both and I can actually see my schedule without digging through my van."
> — [Mobile Groomer Name], [City]
---
## FAQ
**Q: Does it work without internet?**
A: Yes. The PWA caches your data locally. You can view appointments, client records, and take notes offline. Changes sync when you reconnect.
**Q: What if I lose my phone?**
A: Your data is on your server, not your phone. Install Groom Book on a new device, log in, and everything is there.
**Q: How do I accept credit cards?**
A: Groom Book includes a built-in POS. Connect a card reader (Stripe Terminal or similar) or record cash/check payments manually.
**Q: Can I use this alongside my existing software?**
A: Yes — many groomers start with Groom Book for new client intake while keeping existing systems for historical data during a transition period.
**Q: Do I need technical skills to set it up?**
A: Basic Docker knowledge is enough. `docker compose up` gets you running in 5 minutes. Full Kubernetes setup for advanced users.
---
## CTA Section
### Ready to cut your software costs?
Groom Book is free, open source, and runs on your own server.
[GitHub Repository](https://github.com/groombook/groombook)
[Getting Started Guide](getting-started/index.html)
<footer>
<p><a href="./">&larr; Back to Home</a></p>
</footer>
</body>
</html>