47 lines
1.8 KiB
Markdown
47 lines
1.8 KiB
Markdown
# CLAUDE.md
|
|
|
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
|
|
## Project Status
|
|
|
|
This is a greenfield project in early discovery/design phase. No source code exists yet. The project aims to automate financial and operational management for a small sports club.
|
|
|
|
See `docs/project-notes.md` for the current brainstorming state, domain model, and open questions that need answering before implementation begins.
|
|
|
|
## Key Constraints
|
|
|
|
- **PII separation**: Member data (names, emails, payment info) must never be committed to git. Enforce config/data separation from day one.
|
|
- **Incremental approach**: Start with highest-ROI automation (likely fee billing & payment tracking), not a full platform.
|
|
|
|
## Development Workflow
|
|
|
|
This project uses a hybrid workflow:
|
|
- Claude.ai chat for brainstorming and design exploration
|
|
- Claude Code for implementation
|
|
|
|
## When Code Exists
|
|
|
|
## Development Setup
|
|
|
|
This project uses `uv` for dependency management.
|
|
|
|
```bash
|
|
uv venv # Create virtual environment
|
|
uv sync # Install dependencies from pyproject.toml
|
|
source .venv/bin/activate
|
|
```
|
|
|
|
Alternatively, use the Makefile:
|
|
- `make sync` - Sync bank transactions to Google Sheets
|
|
- `make infer` - Automatically infer Person/Purpose/Amount in the sheet
|
|
- `make reconcile` - Generate balance report from Google Sheets data
|
|
- `make fees` - Calculate expected fees from attendance
|
|
- `make match` - (Legacy) Match bank data directly
|
|
- `make web` - Start dashboard
|
|
- `make image` - Build Docker image
|
|
|
|
Requires `credentials.json` in the root for Google Sheets API access.
|
|
|
|
## Git Commits
|
|
|
|
When making git commits, always append yourself as co-author trailer to the end of the commit message to indicate AI assistance |