Chordiate is a web-based music tool built with React, TypeScript, and Vite. It allows users to play notes and chords using their keyboard, record them, and play them back in a loop. The application is designed to be intuitive and interactive, making it a great tool for musicians and hobbyists alike.
- Play Notes and Chords: Use your keyboard to play individual notes or chords. Switch between chord modes (root, major/minor, major/minor7, diminished) with ease.
- Record and Quantize: Record your notes and chords, which are automatically quantized to the nearest 8th note for precise playback.
- Loop Playback: Play back your recorded notes in a 4-bar repeating rhythm. Each note's duration is recorded and used during playback.
- Interactive Note Management: View your recorded notes on the screen and click on them to remove them from the sequence.
- Deployable to GitHub Pages: Easily build and deploy the application to GitHub Pages using the included GitHub Actions workflow.
- Node.js (v16 or later)
- npm (Node Package Manager)
- Clone the repository:
git clone <repository-url> cd chordiate
- Install dependencies:
npm install
Start the development server:
npm run devOpen your browser and navigate to http://localhost:3000 to use the application.
Build the application for production:
npm run buildThe production-ready files will be in the dist directory.
- Ensure the repository is connected to GitHub.
- Push changes to the
mainbranch. - The GitHub Actions workflow will automatically build and deploy the application to GitHub Pages.
- React: A JavaScript library for building user interfaces.
- TypeScript: A strongly typed programming language that builds on JavaScript.
- Vite: A fast build tool and development server.
- Tone.js: A Web Audio framework for creating interactive music applications.
Contributions are welcome! Feel free to open issues or submit pull requests to improve the application.