Skip to content

encse/juggling

Repository files navigation

Juggling Simulator

This project is a simple juggling simulator built with JavaScript and HTML Canvas. It includes a tutorial that guides users through various juggling techniques and patterns.

Features

  • Interactive Tutorial: Follow prompts to learn juggling patterns like the cascade, snake, shower, columns, and circular patterns.
  • Customizable Throws: Experiment with different key presses to vary throw height, hand usage, and throw position.
  • Realistic Physics: Simulates basic gravity and hand alternation to emulate the physics of juggling.

Getting Started

Prerequisites

  • Modern web browser with JavaScript support.

Usage

  1. Clone this repository:
    git clone https://github.com/encse/juggling.git
  2. Open index.html in a web browser to start the simulation.

Controls

  • Basic Throws:
    • Press S for a left-hand throw and D for a right-hand throw in the cascade pattern.
  • Vary Height: Use Q, W, E, and R for higher throws.
  • Outer Throws: A and F produce wider throws for left and right hands, respectively.
  • Quick Throws: X and C create low, fast throws for dynamic patterns.
  • CapsLock Mode: Turns on vertical mode, enabling one-handed juggling styles without holding Shift.

Tutorial Steps

The tutorial introduces basic and advanced juggling techniques. You’ll follow prompts to learn and practice:

  • The cascade (classic alternating hand throw)
  • The shower (circular motion)
  • One-handed patterns
  • Columns and more complex formations with hand-specific keys.

Contributing

Feel free to fork this repository, make improvements, and submit a pull request. Contributions to improve the tutorial, physics, or add new patterns are welcome!

Image credits

Circus Vectors by Vecteezy Face Vectors by Vecteezy Hand Vectors by Vecteezy

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published