CubeSnap - photo-based solver, looking for Android beta testers

CubeSnapJ

Member
Joined
Aug 24, 2026
Messages
3
Location
Los Angeles, CA
I've been building CubeSnap. Two photos of your scrambled cube - white center up, then yellow - and it reconstructs all 54 stickers and gives you the solution move by move on a 3D cube, with a flattened net view alongside.
iOS version is out: https://apps.apple.com/us/app/cubesnap-cube-solver/id6778213510
Free web version: https://cubesnap.app
Android is in closed testing and I need people on real devices. Google's rule is 12 testers opted in for 14 consecutive days before it can ship, so the ask is install it and leave it there two weeks.
1. Join: https://groups.google.com/g/cubesnap-android-beta
2. Opt in: https://play.google.com/apps/testing/app.cubesnap.android
Feedback on scan accuracy across different cubes and lighting would help most. Glad to hear what you'd want out of it.
 
Out of curiosity, when tapping on the Scramble again button in the web version, what is the reason behind getting an "That state isn't reachable from a real cube." error message?

with a flattened net view alongside

Among cubers, this 2D net is usually used for a better clarity: https://mfeather1.github.io/m2p/solve.html

Also, if you want to tighten the solution to 20 or less moves in HTM for a random cube state pretty much instantly (as opposed to waiting several seconds as in your current solver implementation), I recommend to use the solver linked above.

Edit: oh, by a flattened net view alongside you probably meant that tiny 2D net next to the 3D simulator, while I was having that Ring graph in mind.
 
Last edited:
Good catch on Scramble again. That error means the scramble path handed the UI an illegal facelet string and the solver correctly refused it. Bug on my side, looking into it. Thanks for reporting.

On the net: yeah, I meant the small flattened net next to the 3D cube, not a Ring graph. Appreciate the m2p pointer either way.

On tighten-to-20: we’re already optimizing toward God’s-number length; the wait you’re seeing is the current search budget. Instant ≤20 HTM is on the roadmap. Useful link, thanks!
 
Update on the "isn't reachable from a real cube" message: my earlier explanation was wrong. The scramble was fine. The solver's own watchdog was killing the move-tightening step on some scrambles and the UI reported that as an unreachable state. Fixed today: the tightening step now respects its time budget, and a genuine solver hiccup says so and offers a retry. Thanks again for the report, it pointed straight at it.
 
Back
Top