109 lines
6.0 KiB
Markdown
109 lines
6.0 KiB
Markdown
# LoperBoys — Progress
|
||
|
||
Foundation: WilliamsPressureWashingServices.com UI/UX
|
||
Content: LoperBoys (Javen's lawn care & seasonal services)
|
||
|
||
## Repo Consolidation (2026-06-15)
|
||
- Consolidated two separate repos (`LoperBoys` + `LoperBoys2.com`) into single `LoperBoys` repo
|
||
- All print collateral (business cards, flyers, yard sign) now in `print/` folder
|
||
- Legacy website files archived in `legacy-site/` folder
|
||
- Gitea repo: `Sage_Software/LoperBoys` (old `LoperBoys2.com` repo deleted)
|
||
|
||
## Completed
|
||
- [x] Initial website build (WilliamsPW codebase adapted)
|
||
- [x] Responsive multi-section design (hero, services, about, why-us, contact)
|
||
- [x] Professional blue/cyan gradient theme
|
||
- [x] Contact form with validation (PHP → SMTP relay)
|
||
- [x] Mobile nav toggle + floating CTA button
|
||
- [x] Phone number formatting + clickable tel: links
|
||
- [x] Git repo created and pushed to Gitea
|
||
- [x] **SEO fundamentals** — OG tags, Twitter cards, structured data (LocalBusiness), canonical URL, robots meta, favicon, description/keywords meta
|
||
- [x] **How It Works** section — 3-step visual process (Contact → Quote → Get It Done)
|
||
- [x] **Before & After Gallery** — 3 comparison cards (hidden, placeholder) with hover reveal effect
|
||
- [x] **Placeholder images** — WilliamsPW stock images (replace with LoperBoys job photos)
|
||
- [x] **Service area** — Warsaw, Coshocton, and surrounding areas
|
||
- [x] **Privacy-respecting analytics** — Script placeholder commented in `<head>`, ready for Plausible/Umami
|
||
- [x] **Site deployed to 10.10.9.230** (hostname: `dotnet`), nginx serving, PHP 8.2 FPM installed
|
||
- [x] **Gitea repo** — `Sage_Software/LoperBoys` (consolidated from LoperBoys2.com)
|
||
- [x] **Site live on IP** — http://10.10.9.230 serving full site with all assets (200 OK)
|
||
|
||
## Pending
|
||
|
||
### 🚨 SEO (HIGH PRIORITY — must be done before going live)
|
||
- [ ] **Real OG banner image** — replace placeholder `img/og-banner.jpg` with a proper 1200×630 branded image
|
||
- [ ] **Real favicon** — generate a proper `.ico` / `.png` favicon with LoperBoys branding
|
||
- [ ] **Google Search Console verification** — add meta tag or HTML file after John purchases the domain
|
||
- [ ] **Google Business Profile** — set up once domain is live
|
||
- [ ] **Alt text review** — ensure all real images have descriptive, keyword-rich alt text
|
||
- [ ] **Page load optimization** — compress real images, minify CSS/JS
|
||
- [ ] **Content review** — Javen to review all copy for accuracy before going live
|
||
|
||
### Contact Form / Email
|
||
- [x] **SMTP relay configuration** — PHPMailer connected to hMailserver on 10.10.9.31:25 (no auth, no TLS) — relay handled by hMailserver/Mailjet
|
||
- [x] **From address** — `noreply@loperboys.com`
|
||
- [x] **To address** — `contact@loperboys.com`
|
||
- [x] **Reply-to** — customer's form email (auto-populated)
|
||
- [x] **Form spam protection** — honeypot field included
|
||
- [x] **Test email delivery** — confirmed via hMailserver logs on 10.10.9.31 ✅ (2026-05-16)
|
||
- [x] **Test form end-to-end** — POST returns `{"success":true}` ✅ (2026-05-16)
|
||
|
||
### Hosting & Domain
|
||
- [x] **Purchase domain** — loperboys.com ✅ (purchased, DNS configured)
|
||
- [x] **DNS setup** — pointing to OpenResty on .230 ✅
|
||
- [x] **SSL certificate** — Let's Encrypt, valid (issued Apr 8, expires Jul 7) ✅
|
||
- [x] **HTTP→HTTPS redirect** — 301 working ✅
|
||
- [x] **Mail relay** — hMailserver → Mailjet, tested and working ✅ (2026-05-16)
|
||
|
||
### Content & Branding
|
||
- [ ] **LoperBoys job photos** — replace placeholder images with real LoperBoys job photos
|
||
- [ ] **Testimonials** — add real customer quotes when Javen has them
|
||
- [ ] **LoperBoys logo** — if Javen has one, add to nav and footer
|
||
- [ ] **Service area specifics** — confirm which towns/counties to list
|
||
- [ ] **Hours of operation** — verify accuracy with Javen
|
||
- [ ] **Gallery photos** — get 3+ more before/after pairs if Javen has them
|
||
|
||
### Analytics
|
||
- [ ] **Choose analytics provider** — see options below
|
||
- [ ] **Add tracking script** — uncomment and configure Plausible or Umami
|
||
- [ ] **Privacy policy page** — add if required by analytics terms of service
|
||
|
||
## Open Questions
|
||
- Hosting? ✅ WE ARE PROVIDING (10.10.9.230)
|
||
- Domain purchased? ⏳ John to purchase (next)
|
||
- Specific images/branding from Javen? ⏳ Javen to collect
|
||
- Service area confirmed? ✅ Warsaw, Coshocton, and surrounding areas
|
||
- Hours of operation? ⏳ TBD (confirm with Javen)
|
||
|
||
## Hosting Details
|
||
- **Target server:** 10.10.9.230 (hostname: `dotnet`)
|
||
- **SSH:** `sage@10.10.9.230` using `~/.ssh/id_ed25519` ✅ **AUTHORIZED**
|
||
- **OS:** Debian 12, bare metal, nginx 1.22.1, PHP 8.2 FPM, Postfix
|
||
- **Site files:** `/var/www/loperboys2/` (pending deployment)
|
||
- **Nginx config:** `/etc/nginx/sites-available/LoperBoys2.com` (pending creation)
|
||
- **Currently serving:** AssetTrackr.co (proxy to :5000), loperboys.com, WilliamsPressureWashingServices.com
|
||
- **LoperBoys2 deployment target:** Replace loperboys.com Nginx config to proxy to new site files
|
||
- **Access:** `http://10.10.9.230` (serving correctly, all assets 200 OK)
|
||
- **Disk:** 50GB total, ~655MB used — plenty of space
|
||
- **Existing services:** AssetTrackr.co, loperboys.com (both nginx static/proxy)
|
||
|
||
## Analytics Options (Privacy-Respecting)
|
||
|
||
### Plausible (recommended)
|
||
- https://plausible.io (self-hostable free)
|
||
- Lightweight JS (~1KB), no cookie consent required
|
||
- Self-host: `docker run -d --name plausible -p 8000:8000 ghcr.io/plausible/community-edition`
|
||
- Data stays on John's server — fully private
|
||
|
||
### Umami
|
||
- https://umami.is (self-hostable free, open source)
|
||
- Clean dashboard, privacy-focused, no cookies
|
||
- Self-host: `docker run -d -p 3000:3000 ghcr.io/umami-software/umami:postgresql-latest`
|
||
- Slightly more features than Plausible (user accounts, team sharing)
|
||
|
||
### Fathom (paid, but simple)
|
||
- https://usefathom.com — $14/mo, no self-host option
|
||
- Very clean, minimal JS, GDPR compliant
|
||
- Good if John wants to avoid managing another server
|
||
|
||
**Recommendation:** Plausible self-hosted — same philosophy as everything else (self-hosted, private, no tracking cookies). Can run on 10.10.9.230 alongside the site.
|