A new port of the MagicCube4D in your browser

27 views
Skip to first unread message

Kyle Cranmer

unread,
Jul 31, 2026, 12:00:03 PMJul 31
to hypercubing
Hello all,

I'm new to this community. I only found out about the Magic Cube website and software last weekend. 

I created a modern port of the code that runs in your browser (phone, tablet, computer). No install necessary. I also worked on what I considered to be some user interface improvements. 

Play with it here: 

Blog post here:

Share on social media:
You should be able to load solves and replay them there. The hall of fame solves are there and most of them play fine.

Enjoy!

Kyle

Marc Ringuette

unread,
Jul 31, 2026, 10:20:10 PMJul 31
to hyper...@googlegroups.com
Thanks, Kyle, for a very cool contribution to the community.    Folks will particularly appreciate the nice github release.

I found it interesting to have a look at the docs, where Cranmer-and-Claude analyzed the legacy code and designed the port.

1.   https://github.com/cranmer/cube4d/blob/main/docs/legacy-internals.md

The code, including grips, state, twisting, and Don Hatch's old magic, analyzed.  

2.  https://github.com/cranmer/cube4d/blob/main/docs/architecture-options.md

Architecture choices, including the biggest tricky decision:  to precompute the geometry from the Java at build time.
   Pros: legacy compatibility, far easier than other options.
   Cons: ships static assets; arbitrary Schläfli symbols can't be constructed in the browser.


The result is nice for us old-timers by helping the legacy stuff to live on past the Java runtime.


Cheers
Marc


On 7/31/2026 8:26 AM, 'Kyle Cranmer' via hypercubing wrote:
I created a modern port of the code that runs in your browser (phone, tablet, computer).    ... 

Jay Berkenbilt

unread,
Aug 3, 2026, 11:50:37 AMAug 3
to Kyle Cranmer, hypercubing
I obviously have a soft spot for that version, though I worked on the older C++ version. :-) One thing I notice is that the number keys behave differently. On the original code, if you press 2 or 3, you *only* get layer 2 or 3. On the new code, there's also a mouse control, and pressing 2 or 3 doesn't turn off layer 1. The only way I could see to get only one layer other than layer 1 was to use the mouse. The original version treated the number keys like modifiers. Layer 1 was the default, but it only took effect if no other keys were down. Otherwise, it's a fun project. I haven't pulled out the old puzzle for years, though I have the physical 2^4 out where I can play with it from time to time. :-)
--
You received this message because you are subscribed to the Google Groups "hypercubing" group.
To unsubscribe from this group and stop receiving emails from it, send an email to hypercubing...@googlegroups.com.

Kyle Cranmer

unread,
Aug 10, 2026, 11:17:15 PM (8 days ago) Aug 10
to Jay Berkenbilt, hypercubing
Thanks Jay, I’ll try to adjust that in the future. 
Reply all
Reply to author
Forward
0 new messages