Files
flipventory_v2/CLAUDE.md
Martin Hohenberg d9ce2dd680 docs: add CLAUDE.md with project context, run instructions, and conventions
Documents the admin e-mail guard rule, tea CLI usage for Gitea issues,
and commit message conventions so future Claude Code sessions can pick up
the project without re-deriving context from scratch.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-16 10:41:19 +02:00

1.5 KiB
Raw Blame History

Flipventory v2 Claude Code Notes

Project context

Inventory management for small/medium resellers who use "chaotic stockpiling": buy stuff in bulk, sort it later, track it through sale.

Gitea repo: https://git.hohenberg.jp/martin/flipventory_v2
Original v1 repo (for reference): https://git.hohenberg.jp/martin/flipventory

Running the app

cp .env.example .env          # then edit SECRET_KEY at minimum
uvicorn app.main:app --reload
# → http://127.0.0.1:8000/docs

Key business rules

  • martin@hohenberg.jp is ALWAYS admin. Enforced on every login in app/routers/auth.py. Never remove this guard.
  • All other registered users are customers (is_admin=False).
  • Item hard-delete is admin-only. Customers archive items instead.

Tech stack

  • FastAPI 0.115 + uvicorn
  • SQLAlchemy 2.x (declarative ORM, SQLite default)
  • Pydantic v2 + pydantic-settings
  • JWT via python-jose (HS256), bcrypt via passlib

Gitea / tea CLI

The tea CLI is at ~/bin/tea and is logged in to git.hohenberg.jp as martin. Use it to work with issues:

tea issues list --login git.hohenberg.jp --repo martin/flipventory_v2
tea issue create --login git.hohenberg.jp --repo martin/flipventory_v2 \
    --title "..." --description "..."

Commit conventions

  • Verbose, imperative commit messages
  • Format: type: short summary\n\nLonger explanation
  • Types: feat, fix, refactor, docs, test, chore
  • Always include Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>