Un'implementazione web interattiva del classico Cubo di Rubik utilizzando JavaScript vanilla e Three.js per la grafica 3D.
- Cubo 3D Interattivo: Visualizzazione realistica del cubo di Rubik con animazioni fluide
- Controlli Intuitivi: Ruota le facce del cubo con mouse/touch
- Timer Integrato: Cronometra i tuoi tempi di risoluzione
- Sistema di Punteggi: Traccia le tue performance e migliori tempi
- Temi Personalizzabili: Scegli tra diversi temi di colore
- Configurazioni Multiple: Supporta cubi di diverse dimensioni (2x2, 3x3, 4x4, 5x5)
- Scramble Automatico: Mescola automaticamente il cubo per nuove sfide
- Statistiche Dettagliate: Visualizza le tue statistiche di gioco
- Responsive Design: Funziona su desktop e dispositivi mobili
- Clona o scarica il repository
- Apri
index.html
in un browser web moderno - Inizia a giocare!
- Avvia una Nuova Partita: Con un doppio click (o tap) sulla scacchiera centrale avvia una nuova partita
- Ruota le Facce: Clicca e trascina sulle facce del cubo per ruotarle
- Cronometra: Il timer si avvia automaticamente alla prima mossa
- Risolvi: Cerca di riportare tutte le facce al loro colore originale
- Visualizza Statistiche: Controlla i tuoi tempi e miglioramenti con il pulsante "Statistiche"
- Personalizza: Scegli il tema, la dimensione del cubo e la configurazione di scramble preferita con il pulsante "Opzioni"
CuboDiRubik/
├── index.html # File HTML principale
├── assets/
│ ├── css/
│ │ ├── style.css # Stili CSS compilati
│ │ └── style.sass # File sorgente SASS
│ └── js/
│ └── script.js # Logica principale del gioco
└── README.md # Questo file
- HTML5: Struttura della pagina
- CSS3/SASS: Styling e animazioni
- JavaScript ES6+: Logica del gioco
- Three.js: Rendering 3D e animazioni
- LocalStorage: Salvataggio delle preferenze e statistiche
- Chrome 60+
- Firefox 55+
- Safari 12+
- Edge 79+
- Dispositivi mobili iOS/Android
Il gioco include diversi temi di colore preimpostati. Puoi personalizzare i colori modificando la sezione Themes
nel file script.js
.
Supporta cubi di diverse dimensioni:
- 2x2x2 (Pocket Cube)
- 3x3x3 (Cubo di Rubik classico)
- 4x4x4 (Revenge Cube)
- 5x5x5 (Professor Cube)
- Facile: 10 mosse
- Medio: 25 mosse
- Difficile: 50 mosse
- Tracciamento automatico dei tempi di risoluzione
- Salvataggio del miglior tempo personale
- Statistiche dettagliate delle performance
- Cronologia delle ultime 100 risoluzioni
- ✅ Correzione bug nel sistema di punteggi
- ✅ Gestione migliorata degli errori
- ✅ Ottimizzazione delle performance
- ✅ Aggiunta costanti per evitare magic numbers
- ✅ Gestione sicura dei timeout e callback
- ✅ Validazione dei parametri nelle classi principali
I contributi sono benvenuti! Sentiti libero di:
- Segnalare bug
- Suggerire nuove funzionalità
- Migliorare il codice esistente
- Aggiungere nuovi temi o configurazioni
Questo progetto è open source e disponibile sotto la licenza MIT.
- Modalità multiplayer online
- Tutorial interattivo per principianti
- Algoritmi di risoluzione automatica
- Esportazione/importazione delle configurazioni
- Modalità sfida con obiettivi specifici
- Integrazione con social media per condividere i risultati
Divertiti a risolvere il cubo! 🧩