@noirdoor/client 
Frontend music streaming app for Chords
Contents
Why?
- Our philosophy is based upon appreciation of our community.
- Our app allows people to lead happy, productive lives.
- Our team is a diverse group of musicians and fans.
- Our technology delivers a beautiful experience.
Install
Note that the server uses a client version from npm in production and your local client during development. Changes to the server itself require restarting the server, however changes to the client only require rebuilding the client.
Development
To make development and debugging easier, we support the React DevTools extension (for Chrome and Firefox) and the Redux DevTools extension (for Chrome and Firefox).
File an issue if there are other tools you think we should use or support!
Usage
The client's programmatic API is designed to help the server locate the resources it needs to serve the app.
const client = require('@noirdoor/client');
console.log('Build path:', client.appPath);
API
client
Type: object
Constants to locate builds of the client, which the server uses to serve the client correctly.
appPath
Absolute path to the app's main entry point. Use path.join(appPath, '..') to get its parent directory or path.basename(appPath) to get its filename.
Testing
You should test the code frequently to catch mistakes early.
npm test
If necessary, you can instead run the individual commands (e.g. xo to lint the code), in which case you should install the relevant tools globally.
We highly recommend integrating the linter in your code editor to help you while writing code.
Continuous delivery
All commits, including pull requests, are tested by Circle CI.
We don't yet have automatic deployment, but the app on dev.chords.io is updated within a few minutes of bumping the client dependency in the server.
See the latest CI results at: https://circleci.com/gh/noirdoor/client
Browser support
We support recent versions of modern, auto-updating browsers on Windows 10 and macOS 10.13 or newer. Generally, the latest two browser versions are supported, except when major breaking changes are released, in which case it may take some time for us to support the new version.
Mobile and tablet support is not planned at this time. However, iPad support may be a low priority stretch goal for late 2018.
Related
- chords - Backend Node.js server
Team
These humans are the primary caretakers of @noirdoor/client.
Contributing
See our contributing guidelines for more details.
- Fork it.
- Make a feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request.
License
Copyright Š 2017 Noirdoor. All rights reserved.