Static website skeleton for Christopher "CT" Hoon's computer repair business in Charlottesville, Virginia.
The current working name is Cville Computer Repair. Other viable directions before launch: CT Computer Repair, CT's Cville Computer Help, or Hoon Computer Repair.
index.html- home page with local positioning, service overview, trust promises, and repair request CTAabout.html- owner/about page for CT's bio, values, and privacy-minded service promiseservices.html- repair service menu for diagnostics, malware cleanup, data help, networking, and setuprequest.html- static repair request form that prepares an email draft until a real form backend is connectedstyles.css- shared responsive stylingsite.js- shared navigation, icon initialization, and request-form email draft behaviorassets/repair-workbench-hero.png- concept hero image; replace with a real CT/shop photo when available
This is a static site. You can open index.html directly, or serve the folder locally:
python3 -m http.server 4173Then open http://localhost:4173.
- Replace placeholder email
hello@cvillecomputerrepair.com. - Replace placeholder phone
(434) 555-0137. - Add CT's real bio, experience, certifications, hours, service area, and policies.
- Decide whether the final brand is
Cville Computer Repairor another CT-centered name. - Replace the generated workbench image with real local photography if possible.
- Connect the request form to a production intake workflow.
- Add a short privacy policy before collecting real customer requests.
Static HTML cannot send reliable email or SMS by itself. The request page currently prepares a mailto: email draft so the skeleton is usable for review without pretending it has a backend.
Recommended MVP:
- Keep the current HTML request form.
- Connect it to a hosted form provider such as Formspree or Netlify Forms.
- Send CT an email notification for each request.
- Store submissions in the provider inbox or export to Google Sheets/Airtable if CT wants a lightweight work queue.
- Keep call/text links visible for urgent jobs.
Recommended custom backend later:
- Add
POST /api/repair-request. - Validate fields server-side and block spam.
- Send email through a provider such as Resend.
- Optionally send SMS alerts through Twilio Programmable Messaging.
- Store requests in a small database, Airtable, or Google Sheets.
- Add a confirmation page and optional customer confirmation email.
The form intentionally collects only what CT needs for a first reply:
- Name
- Phone
- City or ZIP
- Preferred contact method
- Best time to reach the customer
- Customer type
- Device type
- Brand/model
- Issue type
- Urgency
- Problem details
- Consent to be contacted
- Optional SMS consent
Do not collect passwords, PINs, payment details, private files, or full street addresses in the MVP. Ask for those only after CT has confirmed a real appointment and has a safe process.
- The site repeats the header/footer markup across pages. That is acceptable for this small static skeleton, but a template system would be cleaner if the site grows.
- Lucide icons load from a CDN. For production, consider bundling icons locally or replacing the CDN dependency.
- The request form is not a real submission flow yet. Connect a provider or backend before launch.
- There are no automated tests because the site is static HTML/CSS/JS. Use browser checks before publishing changes.
- Metadata is basic. Add Open Graph images, local business schema, and analytics only after the brand/contact details are final.
- Use HTTPS for the production site.
- Keep request data in one protected business inbox or system with a strong password and 2FA.
- Add spam protection with a honeypot first; add CAPTCHA only if spam becomes a real problem.
- If CT sends automated SMS, collect clear text-message consent and support opt-out language. Twilio notes that U.S. application-to-person SMS over 10DLC has registration/compliance requirements.