toneify
https://toneify-arthurhwang.herokuapp.com/ -- Please allow up to 20 seconds for the link to load. Heroku hosting is extremely slow sometimes.
A full-stack Javascript application to help guitarists create pedalboard configurations dynamically with an interactive builder.
Technologies Used
- React
- Redux
- Redux-Thunk
- Redux-Persist
- React-Router
- Express
- Node
- MongoDB
- Mongoose
- PassportJS
- CookieSession
- Google OAuth
- Facebook OAuth
- Stripe API
- Semantic UI React
- MomentJS
Key Features
-
Users can pick and choose pedals to add to their pedalboard configuration
-
Users can drag and drop pedals
-
Users can rotate pedals to have a more realistic experience
-
Users can delete pedals from their build
-
Users can reset their build
-
Users can save their build, whilst retaining all pedal rotation values and positioning coordinates
-
Users can load their build from a build history. Previously saved rotation and position values of each pedal will persist on load.
-
Users can update their build history
-
Users can double-click a pedal to hear what it sounds like
-
Users can sign-in using Google OAuth / Facebook OAuth
-
Users can checkout with Stripe API
Development
System Requirements
- Node.js v10
- NPM v6
- MongoDB v4
Getting Started
Clone the repository.
git clone https://github.com/ArthurHwang/toneify.git
Install dependencies.
cd toneify/
npm install
Create a .env
file in the project root. Example:
MONGODB_URI=mongodb://localhost:27017/toneify
PORT=3000
Automatically run/restart server with nodemon and live reload page on update with browser-sync
npm run watch
Run without nodemon and browser-sync
npm run build
npm run start