Arcade › Part Forge
Click the game above and it runs right here in your browser. No download, no installer, no account needed. Daniel Sidorkin built it with Cinevva, so it works on a phone or a tablet too.
Nobody has said anything about Part Forge yet. Play it, then tell Daniel Sidorkin what you would add next.
Part Forge was built by Daniel Sidorkin with the Cinevva game creator: describe the game you want in chat, watch it get built, and play it in your browser minutes later.
Remix Part Forge opens the real game in the creator and forks its actual files, chat and design doc, so you start from the code rather than from a description.
Cinevva's analyzer read this game's design doc and its source, then wrote the brief below. "Make your own" hands it to the game creator as your opening message, so you start from a real spec rather than a one-line idea.
Create a responsive single-screen web puzzle game titled “Part Forge.” It is a dark, mobile-friendly merge game with no scrolling. Center the app in a viewport-width container capped at about 760px, with a deep navy background (#111827), light text, compact system UI typography, and roughly 10–14px outer padding. At the top, show a header with the large bold title “Part Forge” on the left and two dark rounded stat cards on the right: “SCORE” above the current score and “BEST” above the best achieved part level. Initialize score to 0 and best to the stored best value, defaulting to 1; persist best in local storage under the key “part-forge-best.” Under the header show the muted instruction: “Tap two matching parts to merge them into a better part.” The main play area is a large flexible-height rectangular board with rounded corners, a thin slate border, a dark blue radial-gradient interior, inset shadow, and a subtle 40px square grid made from low-opacity horizontal and vertical lines. It should fill the available vertical space between the instruction and bottom tray, with a minimum height around 280px, and clip pieces at its rounded edges. Place parts at random coordinates within the board, keeping their centers at least about 42px from the edges when added. On window resize, clamp all part centers to at least 40px and at most board width/height minus 40px. A part is a 74x74px rounded-square tile (62x62px on narrow screens), centered on its stored x/y coordinate using translate(-50%, -50%). Give it a translucent white 3px border, dark inset highlight, soft drop shadow, and a diagonal gradient from its type color to #111827. Display its emoji prominently in the center and a small dark rounded level badge in the lower-right showing the displayed level number (internal level + 1). The available progression, in order, is: level 1 Bolt 🔩 color #64748b; level 2 Gear ⚙️ color #3b82f6; level 3 Tool 🔧 color #8b5cf6; level 4 Rig 🛠️ color #ec4899; level 5 Bot 🤖 color #ef4444; level 6 Rocket 🚀 color #f97316; level 7 Satellite 🛰️ color #eab308; level 8 Core 🌌 color #22c55e. The initial board contains exactly six level-1 Bolt parts at random positions. Interaction is tap/click based. Tapping a part with nothing selected selects it, adding a clear white outline (about 4px with offset) and brightening it. Tapping the selected part again deselects it. Tapping a second part checks whether both parts have the same internal level. If they match, remove both and create one new part at the midpoint of their positions with internal level one higher, capped at the final available type. Add (new level + 1) * 10 to the score, update best to the maximum displayed level reached, persist it, set the next-part level to the newly created level (also capped), clear selection, and show a brief toast such as “Gear created!” or the corresponding type name. If the two selected parts do not match, keep only the newly tapped part selected and show a brief toast saying “Match two of the same part”. Tapping empty board space clears the selection. At the bottom, show a dark rounded tray with a thin slate border. On the left display muted text “Next part” and a 42x42 rounded preview tile containing the emoji and gradient for the current next level. In the middle/right place an orange rounded “Add part” button with dark bold text, and a dark slate secondary rounded “Reset” button with white bold text. Clicking “Add part” creates one random-position part at the current next-part level without changing the next level. The next level starts at internal level 0 (Bolt), and should visually update to the type resulting from the latest merge. Clicking “Reset” empties the board, clears selection, resets score and next level to Bolt, then adds exactly six fresh level-1 Bolts and briefly displays “Fresh board.” Use touch-friendly controls and prevent page scrolling while interacting with the board. Add a subtle pressed scale-down effect to tiles. Toast messages should appear centered near the upper portion of the board as a dark pill with a slate border, fade in briefly, remain for roughly 900ms, and fade out. Keep all displayed labels, colors, progression, scoring, random placement, and behavior faithful to this specification; do not add dragging, timers, lives, obstacles, animations beyond the small tile press/selection and toast feedback, or other game systems.