Skip to content

Repository files navigation

Crucible — Commodity Certainty for Construction

Crucible is a scenario-modeling and portfolio-management platform that helps Brisbane property developers hedge copper price exposure before subcontractors walk off site.

Live: https://l-s-capital.github.io/crucible/

What it does

  • Forecaster — Quantify copper hedge savings vs unhedged cost (Pro+)
  • Portfolio dashboards — Basic / Pro / Enterprise / Staff views by plan
  • Physical inventory — Warehouse pulse, spreads, carrying-charge check (Pro+)
  • LME forward curve docs — Contango, backwardation, roll timing (Pro+)
  • Pricing — Basic A$999/mo, Pro A$2,500/mo, Enterprise enquire

Tech stack

Layer Choice
Framework React 19
Build Vite 8
Routing React Router 7 (HashRouter)
Icons Lucide React
Auth Client AuthContext + localStorage (demo-grade)
Optional API Flask (backend/) — LME + portfolio JSON
CI/CD GitHub Actions → GitHub Pages
Tests Vitest

Getting started

npm install
npm run dev        # http://localhost:5173
npm run build
npm run preview
npm run test
npm run lint

Optional LME API:

cd backend
pip install -r requirements.txt
python server.py   # :5001
cp .env.example .env
# VITE_API_URL=http://localhost:5001/api

Demo login

Any email + password ≥ 6 characters creates a demo session. Tier shortcuts:

Email Plan
basic@crucible.dev basic
pro@crucible.dev pro
enterprise@crucible.dev enterprise
staff@crucible.dev staff

Project structure

src/
├── components/   # UI chrome + charts
├── context/      # AuthContext
├── data/         # tiers, inventory model, offerings
├── hooks/        # useLME
├── pages/        # routes
├── styles/       # shared CSS
├── test/         # vitest
├── utils/        # calc, api, formatters
backend/          # optional Flask API
docs/             # architecture, skills, hooks, observability
AGENTS.md         # agent runbook

Deployment

GitHub Pages (canonical public site)

Pushes to main run Actions: test → build (PAGES_BASE=/crucible/) → deploy.
Hash routes: /#/forecaster, etc.

Vercel

vercel.json for root-base deploys.

Roadmap

  • Tier-gated UI (basic / pro / enterprise / staff)
  • Demo auth with hashed passwords (client-side)
  • Optional LME API + client hook
  • Production IdP (Supabase / Auth0 / Clerk)
  • Hosted LME API for Pages users
  • Payments (Stripe)
  • OpenTelemetry / error reporting (see docs/observability.md)

License

Private — all rights reserved. Not financial advice.

About

Crucible — copper hedging platform for Brisbane property developers

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages