Skip to content

Dave2ooo/F2LTrainer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

729 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

F2LTrainer 🧩

License Svelte TypeScript

A speedcubing training application for F2L, featuring 3D cube rendering, algorithmic training, and smart cube integration.

🚀 Live Demo

✨ Features

  • 🎯 Specialized Training: Dedicated modes for learning and drilling F2L algorithms.
  • 🛜 Bluetooth Smart Cube Support: Connect your smart cube directly to get real-time feedback and automatic timing.
  • 🧊 3D Visualization: Interactive 3D cube player powered by cubing.js.
  • 📊 Statistics: Track your progress with detailed charts and session history.
  • 📱 Responsive Design: Fully optimized for desktop and mobile devices.

🛠️ Built With

This F2L Trainer was inspired by JPerms OLL Trainer and Romans OLL Trainer / PLL Trainer.


📸 Screenshots

Selection & Training

Case Selection Classic Training
Select View Classic Training
Drill Mode Smart Cube Integration
Drill Mode Smart Cube Mode

Statistics

Session Insights Case Analysis
Session Stats Case Stats

❓ Further Help

Feel free to create an issue if you need any help, have ideas for improvement or find any bugs. I'm happy to help.

🤝 Contributing

Feel free to tackle any Issue on your own. If you want to change something that is not covered in an issue, please create an issue first, to make sure the pull request will be approved.


💻 Development Setup

Follow these steps to set up the project on a fresh Windows 11 machine.

1️⃣ Install Node.js (LTS)

Download and install the LTS version of Node.js from:
👉 https://nodejs.org/en/download

During installation, make sure to check

“Automatically install necessary tools”

This ensures required build tools are set up.

💡 Note: A restart of your PC may be required after installation for Node.js to work correctly in the terminal.


2️⃣ Verify Installation

Open a terminal (PowerShell or Windows Terminal) and check:

node -v
pnpm -v

You should see versions printed for both commands.
If pnpm is not installed, install it with:

npm install -g pnpm

3️⃣ Clone the Repository

Clone this project from GitHub and navigate into it:

git clone https://github.com/Dave2ooo/F2LTrainer.git
cd F2LTrainer

4️⃣ Install Dependencies

Run:

pnpm install

This installs all required packages defined in the project’s pnpm-lock.yaml.


5️⃣ Start the Development Server

Launch the app locally with:

pnpm run dev

Then open your browser at the address shown in the terminal (usually http://localhost:5173).


✅ Done!

You’re ready to start developing!
The project uses SvelteKit, TypeScript, TailwindCSS, and Flowbite — all preconfigured.