A professional mobile app for solving and mastering the Rubik's Cube, built with React Native and Expo. Instantly solve scrambles, study algorithms, train with flashcards, record times, and visualize your cube in 3D.
- Instant Cube Solver: Solve any valid scramble using cubejs.
- Algorithm Library: Browse and learn F2L, OLL, PLL algorithms.
- Flashcard Training: Practice algorithms with spaced repetition.
- Tutorials: Step-by-step guides to learn solving methods.
- Precision Timer: Track solves, averages, and personal bests.
- 3D Visualization: View cube states in interactive 3D (expo-three powered).
- Modern Material UI: Intuitive and clean interface.
- React Native & Expo SDK 54
- cubejs for solving logic
- expo-three and three.js for 3D rendering
- @react-navigation/native v7 for navigation
- React Native Paper & @expo/vector-icons for UI
- Async Storage for data persistence
Requires: Node.js v18.x or newer, Expo Go app (SDK 54+)
npm install --legacy-peer-deps
npm start- Install Expo Go on your mobile device.
- Start the development server:
npm start
- Scan the QR code shown in your terminal with Expo Go (Android) or your iOS Camera.
Platform-specific commands:
npm run android # Run on Android device/emulator
npm run ios # Run on iOS simulator/device- Use
npm install --legacy-peer-depsfor dependency warnings. - Clear Metro cache with:
npx expo start -c - Warnings about three.js loaders from expo-three can be ignored.
- Ensure every cube color appears exactly nine times for solver input.
- expo-three vulnerabilities: Some build-time dependencies have known issues but do not affect runtime.
- 3D Cube controls: Touch/gesture rotation is not yet implemented; current 3D view is basic.
- Cube state checking: Cube input is not auto-validated; ensure your scramble is accurate.