# Programmer Manual

## Overview

This repository contains a static local preview website for **The Little Green Cart** and a complete handoff structure for Codex.

The current starter is deliberately simple:

- no build step
- no JavaScript framework
- no external package dependencies
- content loaded from JSON
- all visual assets stored locally

This makes it easy for Codex to inspect, run, modify and later migrate.

## File structure

```text
website/
  index.html                 Main local preview page.
  public/assets/             Images, logos, reference artwork, generated crops and downloads.
  src/css/styles.css         Brand styles and responsive layout.
  src/js/app.js              Small JavaScript helper for menu and JSON content.
  src/data/site-content.json Content source for the static preview.
docs/
  PROGRAMMERS_MANUAL.md
  USER_MANUAL.md
  WEBSITE_SPECIFICATION.md
  ASSET_MANIFEST.md
  DEPLOYMENT_GUIDE.md
handoff/
  source_archives/           Earlier ZIPs and packages.
  asset_originals/           Original/source asset uploads.
tasks/
  CODEX_PHASES.md
```

## Running locally

From the root folder:

```bash
python3 -m http.server 8080 --directory website
```

Then visit:

```text
http://localhost:8080
```

You can also run:

```bash
npm run start
```

if Node is available.

## Content model

The current content model lives at:

```text
website/src/data/site-content.json
```

The JSON contains:

- brand data
- navigation items
- plant categories
- promotions
- growing guides
- growing pains / help topics
- supporters
- about content

This should later become the basis for CMS collections.

## Coding style

- Use semantic HTML.
- Keep class names readable.
- Comment non-obvious layout decisions.
- Avoid hard-coded content where the JSON file is more appropriate.
- Do not bake important text into images.
- Keep all real user-facing copy editable.

## Image handling

Current assets are a mix of:

- real photographs
- logo files
- AI concept artwork
- print/social concepts
- generated review assets derived from approved reference artwork

Important: concept artwork may contain low-resolution or inaccurate text.
Use it for visual reference. Use real HTML text for final website copy.

The current hero image is:

```text
website/public/assets/generated/hero-willow-cart.png
```

It is a crop from the approved Facebook cover direction. It is for local review
only and keeps the real headline/tagline as HTML text.

## Accessibility

Minimum expectations:

- every meaningful image has alt text
- page has one main h1
- links are descriptive
- colour contrast should be checked before deployment
- mobile navigation must be keyboard reachable

## CMS migration notes

Likely CMS content types:

- Plant
- Plant Category
- Promotion
- Growing Guide
- Growing Pain / Problem
- Supporter
- Gallery Item
- Download
- Event
- Site Settings

Do not implement CMS until the static build is approved.
