🎼 A web app to teach musical chords, modes, and songs
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build
public
src
.gitignore
LICENSE.md
README.md
package.json

README.md

Practice Buddy

Practice Buddy

A web app to help practice modes, learn chords, and chart tunes for guitar and bass players.

See it live and track progress!

Currently in development.

Table of Contents

  1. Getting Started
  2. Deployment
  3. Built With
  4. Contributing
  5. Authors
  6. License

Introduction

Practice Buddy is currently in development. The final product will consist of three major components: modes, chords, and charts. The components are detailed below.

Components

Modes (in active development)

Practice Buddy will allow show all seven modes and their corresponding scales. The modes are listed as intervals and actual pitches, and can be adjusted to any starting pitch.

Chords (planned)

Practice Buddy will map out chords for you. You can chose Ebm7, and the notes (and their intervals) will be displayed, along with a chart showing the chord on guitar or bass.

Charts (planned)

A database of Nashville system charts will be available for creation, retrieval, update, and deletion.

Note: this feature may require adding user accounts to the application.

Getting Started

Practice Buddy uses Webpack and NPM to build and transpile all React code into regular HTML, CSS, and Javascript.

Prerequisites

Make sure you have NodeJS and NPM installed. You can download Node here. This will install NPM as well.

You are welcome to use Yarn instead of NPM if you prefer.

Installing

First, clone the project to a local directory.

   git clone https://github.com/regexpressyourself/PracticeBuddy.git && cd PracticeBuddy

Next, install the dependencies using NPM or Yarn.

Using NPM

   npm install

Using Yarn

   yarn install

Back to top

Deployment

Development Environment

To run Practice Buddy in development mode, you will need to run the start script declared in package.json.

Using NPM

   npm run start

Using Yarn

   yarn run start

That's it! Your development server is running at http://localhost:8080

Webpack is configured with hot reloading, so any changes saved to source files will be immediately reflected in the browser.

Production Build

To build a production version of the app, with all React code loaded into a bundled, minified Javascript file, you need to run the production script declared in package.json.

Using NPM

   npm run production

Using Yarn

   yarn run production

This will leave you with an index.html and an index_bundle.js file in the build directory. Hosting these files from the same location will serve the production build of Practice Buddy.

Back to top

Built With

  • React - The web framework that powers the site
  • Webpack - A module builder automate development and production build processes
  • React Router v. 4 - Sits on top of React to enable route-based views without a backend server
  • Babel - Transpiler to convert raw React code into browser-ready HTML and Javascript
  • create-react-app - Boilerplate React configuration from Facebook

Back to top

Contributing

As always, I'm very happy to receive pull requests, questions/issues regarding code, and feature requests.

Practice Buddy is under active development, poised for a complete feature set by January 2018. If you are interested in contributing, check out the existing projects and issues, and contact me if anything sounds interesting to you.

Back to top

Authors

Back to top

License

Practice Buddy is licensed under the MIT License - see the LICENSE.md file for details.

Back to top