Fugue State is a deck-builder game that aims to provide an immersive and interactive experience for players. It combines elements of rhythm games and puzzle games to teach chords using different musical notations (scientific, do-re-mi, and chromatic).
- Interactive game environment
- Real-time audio feedback
- Customizable options
- Multi-scene gameplay
To get started with Fugue State, follow these steps:
- Clone the repository:
git clone https://github.com/your-username/fugue-state.git
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Open the game in your browser:
http://localhost:5173
The project is structured as follows:
src/
: Contains all the source code for the game.src/components/
: Contains reusable components used throughout the game.src/data/
: Contains data files for the game, including cutscenes, options, and player state.src/styles/
: Contains CSS files for styling the game.src/utils/
: Contains utility functions used throughout the game.
Contributions are welcome! If you'd like to contribute to Fugue State, please follow these guidelines:
- Fork the repository.
- Create a new branch for your changes:
git checkout -b feature/your-feature
- Make your changes and commit them:
git commit -m "Add your feature"
- Push your changes to your forked repository:
git push origin feature/your-feature
- Create a pull request to merge your changes into the main repository.
- Vite for their fast development server.
- React for their JavaScript library.
- Tonal.js for their music theory library.
- Tone.js for their audio synthesis library.
- abc.js for their sheet music rendering library.
- react-dnd-kit for their drag-and-drop library.
- Preact Signals for their state management library.
- framer-motion for their animation library.
- Tailwind CSS for their utility-first CSS framework.