Defaults to localhost:3000 for local dev. Server deployments can
pass a comma-separated list via the environment.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
REACT_APP_API_URL is baked into the JS bundle at build time, so it
must be passed as a build arg, not a runtime environment variable.
Port changed from 3000 to 3001 to avoid conflict with Gitea.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Tab bar above charts lets the user switch between showing both charts
stacked, or either chart individually.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
New GET /history endpoint fetches 365 days of BTC/EUR data from
CoinGecko, deduplicates by date, and joins the user's purchases.
BTCHistoryChart component renders the price line with orange dot
markers on purchase dates and a dashed cyan avg buy price line.
Tooltip shows purchase details on marked dates.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Backend: PUT /purchases/{id} endpoint accepts updated amount_eur,
price_eur, and created_at. Frontend: inline edit row in PurchaseList
with date picker and number inputs, Save/Cancel actions.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>