Sparkulator turns Oddsparks crafting chains into a clear production plan. Pick an item, set the desired output per minute, choose the Sparks working each machine, and the app calculates the machine counts, recipe flow, and raw input demand needed to keep that target running.
It is built for players who want to design cleaner automation layouts without doing repeated rate math by hand.
The interactive flow graph is the centerpiece: zoom with the mouse wheel, drag the canvas with left click, jump into fullscreen, and inspect every machine, resource rate, and output step in one view.
- Interactive production graph with zoom, drag-to-pan, fullscreen, and resource-rate edges.
- Machine count summary for every workstation in the selected plan.
- Raw demand breakdown in items per minute.
- Crew presets for Stumpy and Crafty Spark combinations.
- Recipe rule selection for items with multiple production paths.
- English and German UI switch.
- Recipe and item links back to the Oddsparks wiki.
flowchart LR
A["Choose target item"] --> B["Set output / min"]
B --> C["Select crew per machine"]
C --> D["Calculate recipe chain"]
D --> E["Show machine counts"]
D --> F["Show raw input demand"]
D --> G["Render visual flow graph"]
- Find out how many Sawbenches and Wood Workshops are needed for a steady Wooden Panel line.
- Compare Stumpy and Crafty crew setups before rebuilding a factory section.
- Trace the upstream material demand for Spark crafting.
- Keep wiki recipe data close while planning an automation build.
Sparkulator is a client-side Next.js app using React, TypeScript, Tailwind CSS, and local Oddsparks item artwork stored in public/oddsparks.
app/page.tsx Main calculator UI, recipe data, and flow graph
app/globals.css Visual theme and shared surfaces
public/oddsparks/ Item and workstation artwork
Install dependencies and start the development server:
npm install
npm run devThen open:
http://localhost:3000
npm run dev # Start the local development server
npm run build # Create a production build
npm run start # Run the production server
npm run lint # Run ESLintThe calculator currently uses recipe data and wiki links embedded in the app, based on the public Oddsparks wiki:
Sparkulator is released under the MIT License.





