Files

109 lines
6.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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.