# AGENTS.md

## Project
LottoData.com is a production-minded, local-first Laravel 11 web/SaaS foundation focused on lottery jackpots, results, public website pages, and admin-managed content/ad placements.

## Build philosophy
- Build locally first, staging second, production third.
- Keep V1 tight and production-minded.
- Prefer modular foundations over one-off hacks.
- Avoid scope creep.
- Plan first for any task beyond a very small change.

## Stack
- Laravel 11
- Blade for V1 UI
- Tailwind-based styling
- SQLite for local development
- MySQL-ready for staging/production

## Environment notes
- Local development is on Windows.
- Access the app locally through Herd.
- Do not rely on `php artisan serve` for browser access on this machine.
- Normal artisan, composer, npm, and test commands are allowed when needed.

## Core V1 goals
- Public-facing responsive website
- Homepage with prominent Powerball and Mega Millions modules
- Results/game pages
- Admin login and dashboard
- Admin-managed content and ad placements
- Future-ready lottery data provider abstraction

## Non-goals for V1
Do not add these unless explicitly requested:
- paid memberships
- user billing/subscriptions
- SMS/email alerts
- AI recommendation engine
- mobile app
- charts/advanced analytics
- broad state-by-state personalization
- marketplace/affiliate expansion

## Guardrails
- Do not redesign unrelated sections when implementing a scoped task.
- Do not add unrequested packages unless clearly necessary.
- Do not invent unsupported lottery data sources; use provider abstraction/stubs if needed.
- Do not couple the whole app to a single external data source.
- Keep ad support structured and admin-manageable.
- Keep Powerball and Mega Millions highly visible near the top of the homepage.

## Architecture expectations
- Separate public site concerns from admin concerns.
- Use clear models for games, draws, jackpots, settings, pages, and ad placements.
- Prefer reusable modules and predictable naming.
- Make future extension easier than V1 overengineering.

## Task workflow
For every meaningful task:
1. inspect current state
2. create a short implementation plan
3. implement only the requested scope
4. run relevant verification
5. summarize changed files
6. report any errors or follow-up notes

## Verification expectations
Use relevant commands such as:
- `php artisan test`
- `php artisan route:list`
- `php artisan migrate`
- `npm run build`

Only run what is relevant to the current phase.

## Output expectations
After each implementation task, report:
- what was implemented
- commands run
- errors/warnings
- changed files
- how to test locally
- whether the definition of done was met

## Known local note
If browser access is needed locally, use Herd site access instead of `php artisan serve`.