CubeSolver3D logo CubeSolver3D

❓ Help

Mouse

πŸ–± Drag background β€” Rotate camera

πŸ–± Drag face β€” Rotate layer

Keyboard

  • R Right
  • L Left
  • U Up
  • D Down
  • F Front
  • B Back
  • Shift + key Counter-clockwise

Buttons

  • Start New session
  • Reset Solved cube
  • Scramble Random scramble
  • Find Solution Search solution
  • Solve Play solution
  • Prev Undo move
  • Next Redo move

🧩 Rubik's Cube Simulator

Welcome!

This project is an interactive 3D Rubik's Cube simulator built with JavaScript and Three.js.

Its main goal is to combine realistic 3D graphics, intuitive controls, and an efficient solving algorithm in a single web application.

Features

  • 🎲 Interactive 3D Rubik's Cube.
  • πŸ–± Mouse and keyboard controls.
  • πŸ”€ Random scramble generator.
  • πŸ” Optimal solution search.
  • β–Ά Step-by-step animated solving.
  • βš™ Adjustable animation speed.
  • πŸ’Ύ Accurate cube state tracking.

Solving Algorithm

The simulator is based on Herbert Kociemba's Two-Phase Algorithm, one of the fastest and most widely used methods for solving the Rubik's Cube.

In addition, a custom optimization layer has been implemented. The solver evaluates up to 20 of the most promising candidate solutions and automatically selects the shortest valid solution.

Note. The solution search is performed using the Kociemba Two-Phase Algorithm. The program analyzes a large number of possible cube configurations using precomputed transition tables and pruning tables. The total number of possible Rubik’s Cube states is approximately 43 quintillion (43,252,003,274,489,856,000), so even with an optimized algorithm, finding the optimal solution may take some time.

The solving speed depends on:

  • β€’ processor performance;
  • β€’ available RAM;
  • β€’ browser performance;
  • β€’ the current cube configuration.

In most cases, a solution is found within a few seconds. However, for more complex configurations, the search may take considerably longer.

Technologies

  • JavaScript (ES Modules)
  • Three.js
  • Vite
  • HTML5 / CSS3

Contacts

GitHub
github.com/Akinaru72/cube-app

E-mail
akinaru3@gmail.com

❀️ This project is dedicated to my beloved grandchildren β€” Mark, Eva and Daniil.

May this project inspire your curiosity, strengthen your logical thinking, and encourage your passion for programming.

With love, Grandpa.

Version 1.0 Β© 2026 AKINARU

πŸ› οΈ Settings

Rotation Speed
Scramble Length
Idle Animation, min
Sound

πŸ’‘ How to Solve

1 / 8