1fcef255a6434a99746bff68e1f9467e80f1ed33
floatformat() returns a str; saving that to ExchangeRate.rate (FloatField) via create() leaves the Python instance attribute as a str. Reading it back on the same instance (rate = exchange_rate.rate) then caused `purchase.price * rate` to fail with "can't multiply sequence by non-int of type 'float'". Fix: pass the raw float from the API directly to ExchangeRate.objects.create. Also replace floatformat(..., 0) on the converted price with round(..., 2) to keep a numeric type throughout. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Timetracker
A simple game catalogue and play session tracker.
Development
The project uses uv to manage Python versions and dependencies.
Simply run:
make init
This installs the correct Python version, syncs all dependencies, and installs npm packages.
Afterwards, you can start the development server using make dev.
Description
Releases
23
Languages
Python
63.5%
JavaScript
16.9%
CSS
14.3%
HTML
3.7%
TypeScript
0.9%
Other
0.7%