# Namecheap deployment guide for Kickoff Brief

This site is plain static HTML, CSS and JS. Good. That means hosting it is simple instead of needlessly cursed.

## Files to upload
Upload everything inside the `kickoffbrief-site` folder to your domain root. On Namecheap shared hosting that is usually `public_html/`.

You should end up with files like:
- `public_html/index.html`
- `public_html/about.html`
- `public_html/product.html`
- `public_html/samples.html`
- `public_html/contact.html`
- `public_html/privacy.html`
- `public_html/thanks.html`
- `public_html/assets/styles.css`
- `public_html/assets/main.js`
- `public_html/assets/snapshot.json`

## Before you upload
1. Open the HTML files and replace `hello@kickoffbrief.co.uk` with the real email address you control.
2. Keep or change the FormSubmit action if you want a different form service.
3. Decide whether the site should live on `kickoffbrief.co.uk` or `www.kickoffbrief.co.uk`. Root domain is cleaner.
4. If you want the thank-you redirect to use your real domain, keep `_next` set to `https://kickoffbrief.co.uk/thanks.html` or update it to the final live URL.

## Signup form setup
The site now uses a static-friendly POST form instead of `mailto:` cosplay.

Current production action:
- `https://formsubmit.co/hello@kickoffbrief.co.uk`

What that means:
- in production, submissions can go straight to the configured inbox
- in local preview (`localhost`), the JS intercepts the submit and routes to `thanks.html` so you can test the flow without pretending a remote form submission happened

Before launch:
1. Replace the placeholder inbox.
2. Submit one real test entry on the live domain.
3. Confirm the email arrives where it should.
4. Only then start sending traffic.

## If you are using Namecheap shared hosting
1. Log in to Namecheap.
2. Open **Hosting List**.
3. Click **Go to cPanel** for the hosting plan attached to your domain.
4. Open **File Manager**.
5. Go into `public_html`.
6. Upload the site files there.
7. If Namecheap created a default `index.php` or placeholder page, delete or replace it.
8. Visit your domain in the browser and hard refresh.

## If your domain is only registered at Namecheap but hosted elsewhere
Point the domain DNS to the host you are actually using. Do not upload files to Namecheap in that case because they will go nowhere useful.

## Local test before upload
From the project folder, run:

```bash
python3 -m http.server 8000
```

Then open:
- `http://localhost:8000`
- `http://localhost:8000/contact.html`
- `http://localhost:8000/thanks.html`

## Data refresh automation
The snapshot data can be refreshed locally with:

```bash
bash scripts/refresh_snapshot.sh
```

That wrapper stays silent on success and writes a timestamp to:
- `assets/last_refresh.txt`

If you want automation on this machine, a cron job can run that script daily.

## Gotchas
- Replace placeholder contact details before launch. Seriously.
- Test one real form submission on the live site. Pretty forms that go nowhere are useless.
- If styles look broken after upload, check that the `assets/` folder uploaded correctly and file names kept the same case.
- If the homepage does not show, make sure `index.html` is in the root of `public_html`, not inside another nested folder.
