1f20359fa3a4c28d827df2ed97ba68d9684deda6
marathon.todo
A frontend-only React + TypeScript app for planning what to loot (or do) in raid in Bungie's Marathon.
Features
- Search for Marathon items by name.
- Show up to 5 relevant results with item icons.
- Search also includes faction upgrades with salvage requirements.
- Add an item to a to-do list by clicking a search result.
- Clicking an upgrade search result adds all mapped salvage materials to the to-do list.
- Set quantity per to-do entry.
- Mark entries completed.
- Delete entries.
- Persist to-do entries in browser
localStorage.
Data Source
- Frontend fetches a local proxy endpoint:
/api/catalog - Proxy source data:
- Items:
https://items.marathondb.gg/api/items - Faction upgrades:
https://marathondb.gg/js/data/faction-upgrades.js
- Items:
- Proxy stores processed catalog in SQLite (
backend/data/catalog.db) and refreshes every 24h.
Project Structure
frontend/: Vite + React app (frontend/src,frontend/index.html)backend/: local proxy API (backend/server.js) and SQLite data (backend/data/)backend/references/: downloaded reference source files used during development
Tech Stack
- React
- TypeScript
- Vite
Run Locally
- Install dependencies:
npm install - Start backend + frontend together:
npm run dev:all - Or run separately if preferred:
npm run dev:backend npm run dev:frontend - Build production assets:
npm run build
Description
Languages
JavaScript
81.6%
TypeScript
13.9%
CSS
4%
HTML
0.5%