├── .babelrc ├── .eslintrc ├── .gitignore ├── DEPLOY.md ├── README.md ├── TODO.md ├── config ├── babel.dev.js ├── babel.prod.js ├── eslint.js ├── flow │ ├── css.js.flow │ └── file.js.flow ├── webpack.config.dev.js └── webpack.config.prod.js ├── favicon.png ├── index.html ├── misc ├── favicon.psd ├── key_and_pad.png └── logo_large.png ├── package.json ├── sample-cassette-actions.json ├── scripts ├── build.js ├── deploy.js ├── openChrome.applescript └── start.js ├── src ├── _mixins.scss ├── _variables.scss ├── actions │ └── index.js ├── components │ ├── App │ │ ├── index.js │ │ └── index.scss │ ├── AxisControls │ │ ├── index.js │ │ └── index.scss │ ├── Button │ │ ├── index.js │ │ └── index.scss │ ├── ButtonToggleGroup │ │ ├── index.js │ │ └── index.scss │ ├── Canvas │ │ └── index.js │ ├── Column │ │ ├── index.js │ │ └── index.scss │ ├── ControlPanel │ │ ├── index.js │ │ └── index.scss │ ├── DevTools │ │ ├── index.dev.js │ │ ├── index.js │ │ └── index.prod.js │ ├── Error │ │ ├── index.js │ │ └── index.scss │ ├── FeatureHighlight │ │ └── index.js │ ├── FeaturePointer │ │ ├── index.js │ │ └── index.scss │ ├── Footer │ │ ├── index.js │ │ └── index.scss │ ├── Header │ │ ├── index.js │ │ └── index.scss │ ├── HorizontalRule │ │ ├── index.js │ │ └── index.scss │ ├── Icon │ │ └── index.js │ ├── IconCycle │ │ └── index.js │ ├── IconWithHover │ │ └── index.js │ ├── Introduction │ │ ├── index.js │ │ └── index.scss │ ├── Key │ │ ├── index.js │ │ └── index.scss │ ├── Keyboard │ │ ├── index.js │ │ └── index.scss │ ├── Logo │ │ ├── index.js │ │ └── index.scss │ ├── Modal │ │ ├── index.js │ │ └── index.scss │ ├── OscillatorControls │ │ ├── index.js │ │ └── index.scss │ ├── PrivacyPolicy │ │ ├── index.js │ │ └── index.scss │ ├── ProgressBar │ │ ├── index.js │ │ └── index.scss │ ├── Row │ │ ├── index.js │ │ └── index.scss │ ├── Select │ │ ├── index.js │ │ └── index.scss │ ├── Slider │ │ ├── index.js │ │ └── index.scss │ ├── Subheading │ │ ├── index.js │ │ └── index.scss │ ├── Tooltip │ │ ├── index.js │ │ └── index.scss │ ├── Waveform │ │ └── index.js │ ├── XYPad │ │ ├── index.js │ │ └── index.scss │ └── XYPadAxisLabel │ │ ├── index.js │ │ └── index.scss ├── data │ ├── app-constants.js │ ├── effect-default-options.js │ ├── firebase.js │ ├── keyboard-layout.js │ ├── keyboard-notes.js │ ├── onboarding-config.js │ └── onboarding-stages.js ├── fonts │ ├── lineto-brown-bold.woff │ ├── lineto-brown-light-backslanted.woff │ ├── lineto-brown-light-italic.woff │ ├── lineto-brown-light.woff │ ├── lineto-brown-regular.woff │ └── lineto-brown-thin.woff ├── icons │ ├── arrow_down.svg │ ├── arrow_left.svg │ ├── arrow_right.svg │ ├── arrow_up.svg │ ├── chevron_left.svg │ ├── chevron_right.svg │ ├── close.svg │ ├── eject.svg │ ├── error.svg │ ├── error_outline.svg │ ├── fast_forward.svg │ ├── fast_rewind.svg │ ├── happy.svg │ ├── keyboard.svg │ ├── keyboard_down.svg │ ├── mouse.svg │ ├── music_note.svg │ ├── pause.svg │ ├── play.svg │ ├── replay.svg │ ├── skip_next.svg │ ├── skip_previous.svg │ ├── stop.svg │ ├── trackpad.svg │ ├── very_happy.svg │ ├── volume_high.svg │ ├── volume_low.svg │ └── volume_med.svg ├── images │ ├── daftpunktocat_bangalter.gif │ ├── daftpunktocat_bangalter_150.gif │ ├── daftpunktocat_guy.gif │ ├── waveform-sawtooth.svg │ ├── waveform-sine.svg │ ├── waveform-square.svg │ └── waveform-triangle.svg ├── index.js ├── reducers │ ├── effects.reducer.js │ ├── index.js │ ├── is-admin.reducer.js │ ├── modal.reducer.js │ ├── notes.reducer.js │ ├── onboarding.reducer.js │ └── oscillators.reducer.js ├── sagas │ └── onboarding.saga.js ├── store │ ├── configure-store.dev.js │ ├── configure-store.prod.js │ ├── configure-store.test.js │ └── index.js └── utils │ ├── build-middleware-array.js │ ├── canvas-helpers.js │ ├── distortion-helpers.js │ ├── dom-helpers.js │ ├── icon-map.js │ ├── keyboard-helpers.js │ ├── misc-helpers.js │ ├── onboarding-helpers.js │ ├── web-audio-helpers.js │ ├── web-audio-manager.js │ └── web-audio-reconciler.js ├── test ├── reducers │ ├── effects.reducer.spec.js │ ├── is-admin.reducer.spec.js │ ├── modal.reducer.spec.js │ ├── notes.reducer.spec.js │ ├── onboarding.reducer.spec.js │ └── oscillators.reducer.spec.js ├── sagas │ └── onboarding.saga.spec.js ├── test_helper.js ├── utils │ └── build-middleware-array.spec.js └── web-audio │ ├── web-audio-manager-stub.js │ └── web-audio-reconciler.spec.js └── yarn.lock /.babelrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/.babelrc -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/.eslintrc -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | build 4 | npm-debug.log 5 | stats.json 6 | -------------------------------------------------------------------------------- /DEPLOY.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/DEPLOY.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/README.md -------------------------------------------------------------------------------- /TODO.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/TODO.md -------------------------------------------------------------------------------- /config/babel.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/config/babel.dev.js -------------------------------------------------------------------------------- /config/babel.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/config/babel.prod.js -------------------------------------------------------------------------------- /config/eslint.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/config/eslint.js -------------------------------------------------------------------------------- /config/flow/css.js.flow: -------------------------------------------------------------------------------- 1 | // @flow 2 | -------------------------------------------------------------------------------- /config/flow/file.js.flow: -------------------------------------------------------------------------------- 1 | // @flow 2 | declare export default string; 3 | -------------------------------------------------------------------------------- /config/webpack.config.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/config/webpack.config.dev.js -------------------------------------------------------------------------------- /config/webpack.config.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/config/webpack.config.prod.js -------------------------------------------------------------------------------- /favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/favicon.png -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/index.html -------------------------------------------------------------------------------- /misc/favicon.psd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/misc/favicon.psd -------------------------------------------------------------------------------- /misc/key_and_pad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/misc/key_and_pad.png -------------------------------------------------------------------------------- /misc/logo_large.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/misc/logo_large.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/package.json -------------------------------------------------------------------------------- /sample-cassette-actions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/sample-cassette-actions.json -------------------------------------------------------------------------------- /scripts/build.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/scripts/build.js -------------------------------------------------------------------------------- /scripts/deploy.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/scripts/deploy.js -------------------------------------------------------------------------------- /scripts/openChrome.applescript: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/scripts/openChrome.applescript -------------------------------------------------------------------------------- /scripts/start.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/scripts/start.js -------------------------------------------------------------------------------- /src/_mixins.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/_mixins.scss -------------------------------------------------------------------------------- /src/_variables.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/_variables.scss -------------------------------------------------------------------------------- /src/actions/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/actions/index.js -------------------------------------------------------------------------------- /src/components/App/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/App/index.js -------------------------------------------------------------------------------- /src/components/App/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/App/index.scss -------------------------------------------------------------------------------- /src/components/AxisControls/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/AxisControls/index.js -------------------------------------------------------------------------------- /src/components/AxisControls/index.scss: -------------------------------------------------------------------------------- 1 | .axis-controls { 2 | 3 | } 4 | -------------------------------------------------------------------------------- /src/components/Button/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Button/index.js -------------------------------------------------------------------------------- /src/components/Button/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Button/index.scss -------------------------------------------------------------------------------- /src/components/ButtonToggleGroup/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/ButtonToggleGroup/index.js -------------------------------------------------------------------------------- /src/components/ButtonToggleGroup/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/ButtonToggleGroup/index.scss -------------------------------------------------------------------------------- /src/components/Canvas/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Canvas/index.js -------------------------------------------------------------------------------- /src/components/Column/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Column/index.js -------------------------------------------------------------------------------- /src/components/Column/index.scss: -------------------------------------------------------------------------------- 1 | .column { 2 | flex: 1; // default. May be overwritten with JS 3 | } 4 | -------------------------------------------------------------------------------- /src/components/ControlPanel/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/ControlPanel/index.js -------------------------------------------------------------------------------- /src/components/ControlPanel/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/ControlPanel/index.scss -------------------------------------------------------------------------------- /src/components/DevTools/index.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/DevTools/index.dev.js -------------------------------------------------------------------------------- /src/components/DevTools/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/DevTools/index.js -------------------------------------------------------------------------------- /src/components/DevTools/index.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/DevTools/index.prod.js -------------------------------------------------------------------------------- /src/components/Error/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Error/index.js -------------------------------------------------------------------------------- /src/components/Error/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Error/index.scss -------------------------------------------------------------------------------- /src/components/FeatureHighlight/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/FeatureHighlight/index.js -------------------------------------------------------------------------------- /src/components/FeaturePointer/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/FeaturePointer/index.js -------------------------------------------------------------------------------- /src/components/FeaturePointer/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/FeaturePointer/index.scss -------------------------------------------------------------------------------- /src/components/Footer/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Footer/index.js -------------------------------------------------------------------------------- /src/components/Footer/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Footer/index.scss -------------------------------------------------------------------------------- /src/components/Header/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Header/index.js -------------------------------------------------------------------------------- /src/components/Header/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Header/index.scss -------------------------------------------------------------------------------- /src/components/HorizontalRule/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/HorizontalRule/index.js -------------------------------------------------------------------------------- /src/components/HorizontalRule/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/HorizontalRule/index.scss -------------------------------------------------------------------------------- /src/components/Icon/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Icon/index.js -------------------------------------------------------------------------------- /src/components/IconCycle/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/IconCycle/index.js -------------------------------------------------------------------------------- /src/components/IconWithHover/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/IconWithHover/index.js -------------------------------------------------------------------------------- /src/components/Introduction/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Introduction/index.js -------------------------------------------------------------------------------- /src/components/Introduction/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Introduction/index.scss -------------------------------------------------------------------------------- /src/components/Key/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Key/index.js -------------------------------------------------------------------------------- /src/components/Key/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Key/index.scss -------------------------------------------------------------------------------- /src/components/Keyboard/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Keyboard/index.js -------------------------------------------------------------------------------- /src/components/Keyboard/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Keyboard/index.scss -------------------------------------------------------------------------------- /src/components/Logo/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Logo/index.js -------------------------------------------------------------------------------- /src/components/Logo/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Logo/index.scss -------------------------------------------------------------------------------- /src/components/Modal/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Modal/index.js -------------------------------------------------------------------------------- /src/components/Modal/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Modal/index.scss -------------------------------------------------------------------------------- /src/components/OscillatorControls/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/OscillatorControls/index.js -------------------------------------------------------------------------------- /src/components/OscillatorControls/index.scss: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/components/PrivacyPolicy/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/PrivacyPolicy/index.js -------------------------------------------------------------------------------- /src/components/PrivacyPolicy/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/PrivacyPolicy/index.scss -------------------------------------------------------------------------------- /src/components/ProgressBar/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/ProgressBar/index.js -------------------------------------------------------------------------------- /src/components/ProgressBar/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/ProgressBar/index.scss -------------------------------------------------------------------------------- /src/components/Row/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Row/index.js -------------------------------------------------------------------------------- /src/components/Row/index.scss: -------------------------------------------------------------------------------- 1 | .row { 2 | display: flex; 3 | } 4 | -------------------------------------------------------------------------------- /src/components/Select/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Select/index.js -------------------------------------------------------------------------------- /src/components/Select/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Select/index.scss -------------------------------------------------------------------------------- /src/components/Slider/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Slider/index.js -------------------------------------------------------------------------------- /src/components/Slider/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Slider/index.scss -------------------------------------------------------------------------------- /src/components/Subheading/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Subheading/index.js -------------------------------------------------------------------------------- /src/components/Subheading/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Subheading/index.scss -------------------------------------------------------------------------------- /src/components/Tooltip/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Tooltip/index.js -------------------------------------------------------------------------------- /src/components/Tooltip/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Tooltip/index.scss -------------------------------------------------------------------------------- /src/components/Waveform/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/Waveform/index.js -------------------------------------------------------------------------------- /src/components/XYPad/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/XYPad/index.js -------------------------------------------------------------------------------- /src/components/XYPad/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/XYPad/index.scss -------------------------------------------------------------------------------- /src/components/XYPadAxisLabel/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/XYPadAxisLabel/index.js -------------------------------------------------------------------------------- /src/components/XYPadAxisLabel/index.scss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/components/XYPadAxisLabel/index.scss -------------------------------------------------------------------------------- /src/data/app-constants.js: -------------------------------------------------------------------------------- 1 | export const ONBOARDING_COMPLETED_FLAG = 'key-and-pad|onboarding-completed'; 2 | -------------------------------------------------------------------------------- /src/data/effect-default-options.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/data/effect-default-options.js -------------------------------------------------------------------------------- /src/data/firebase.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/data/firebase.js -------------------------------------------------------------------------------- /src/data/keyboard-layout.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/data/keyboard-layout.js -------------------------------------------------------------------------------- /src/data/keyboard-notes.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/data/keyboard-notes.js -------------------------------------------------------------------------------- /src/data/onboarding-config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/data/onboarding-config.js -------------------------------------------------------------------------------- /src/data/onboarding-stages.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/data/onboarding-stages.js -------------------------------------------------------------------------------- /src/fonts/lineto-brown-bold.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/fonts/lineto-brown-bold.woff -------------------------------------------------------------------------------- /src/fonts/lineto-brown-light-backslanted.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/fonts/lineto-brown-light-backslanted.woff -------------------------------------------------------------------------------- /src/fonts/lineto-brown-light-italic.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/fonts/lineto-brown-light-italic.woff -------------------------------------------------------------------------------- /src/fonts/lineto-brown-light.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/fonts/lineto-brown-light.woff -------------------------------------------------------------------------------- /src/fonts/lineto-brown-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/fonts/lineto-brown-regular.woff -------------------------------------------------------------------------------- /src/fonts/lineto-brown-thin.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/fonts/lineto-brown-thin.woff -------------------------------------------------------------------------------- /src/icons/arrow_down.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/arrow_down.svg -------------------------------------------------------------------------------- /src/icons/arrow_left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/arrow_left.svg -------------------------------------------------------------------------------- /src/icons/arrow_right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/arrow_right.svg -------------------------------------------------------------------------------- /src/icons/arrow_up.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/arrow_up.svg -------------------------------------------------------------------------------- /src/icons/chevron_left.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/chevron_left.svg -------------------------------------------------------------------------------- /src/icons/chevron_right.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/chevron_right.svg -------------------------------------------------------------------------------- /src/icons/close.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/close.svg -------------------------------------------------------------------------------- /src/icons/eject.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/eject.svg -------------------------------------------------------------------------------- /src/icons/error.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/error.svg -------------------------------------------------------------------------------- /src/icons/error_outline.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/error_outline.svg -------------------------------------------------------------------------------- /src/icons/fast_forward.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/fast_forward.svg -------------------------------------------------------------------------------- /src/icons/fast_rewind.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/fast_rewind.svg -------------------------------------------------------------------------------- /src/icons/happy.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/happy.svg -------------------------------------------------------------------------------- /src/icons/keyboard.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/keyboard.svg -------------------------------------------------------------------------------- /src/icons/keyboard_down.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/keyboard_down.svg -------------------------------------------------------------------------------- /src/icons/mouse.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/mouse.svg -------------------------------------------------------------------------------- /src/icons/music_note.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/music_note.svg -------------------------------------------------------------------------------- /src/icons/pause.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/pause.svg -------------------------------------------------------------------------------- /src/icons/play.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/play.svg -------------------------------------------------------------------------------- /src/icons/replay.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/replay.svg -------------------------------------------------------------------------------- /src/icons/skip_next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/skip_next.svg -------------------------------------------------------------------------------- /src/icons/skip_previous.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/skip_previous.svg -------------------------------------------------------------------------------- /src/icons/stop.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/stop.svg -------------------------------------------------------------------------------- /src/icons/trackpad.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/trackpad.svg -------------------------------------------------------------------------------- /src/icons/very_happy.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/very_happy.svg -------------------------------------------------------------------------------- /src/icons/volume_high.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/volume_high.svg -------------------------------------------------------------------------------- /src/icons/volume_low.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/volume_low.svg -------------------------------------------------------------------------------- /src/icons/volume_med.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/icons/volume_med.svg -------------------------------------------------------------------------------- /src/images/daftpunktocat_bangalter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/daftpunktocat_bangalter.gif -------------------------------------------------------------------------------- /src/images/daftpunktocat_bangalter_150.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/daftpunktocat_bangalter_150.gif -------------------------------------------------------------------------------- /src/images/daftpunktocat_guy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/daftpunktocat_guy.gif -------------------------------------------------------------------------------- /src/images/waveform-sawtooth.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/waveform-sawtooth.svg -------------------------------------------------------------------------------- /src/images/waveform-sine.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/waveform-sine.svg -------------------------------------------------------------------------------- /src/images/waveform-square.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/waveform-square.svg -------------------------------------------------------------------------------- /src/images/waveform-triangle.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/images/waveform-triangle.svg -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/index.js -------------------------------------------------------------------------------- /src/reducers/effects.reducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/effects.reducer.js -------------------------------------------------------------------------------- /src/reducers/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/index.js -------------------------------------------------------------------------------- /src/reducers/is-admin.reducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/is-admin.reducer.js -------------------------------------------------------------------------------- /src/reducers/modal.reducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/modal.reducer.js -------------------------------------------------------------------------------- /src/reducers/notes.reducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/notes.reducer.js -------------------------------------------------------------------------------- /src/reducers/onboarding.reducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/onboarding.reducer.js -------------------------------------------------------------------------------- /src/reducers/oscillators.reducer.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/reducers/oscillators.reducer.js -------------------------------------------------------------------------------- /src/sagas/onboarding.saga.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/sagas/onboarding.saga.js -------------------------------------------------------------------------------- /src/store/configure-store.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/store/configure-store.dev.js -------------------------------------------------------------------------------- /src/store/configure-store.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/store/configure-store.prod.js -------------------------------------------------------------------------------- /src/store/configure-store.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/store/configure-store.test.js -------------------------------------------------------------------------------- /src/store/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/store/index.js -------------------------------------------------------------------------------- /src/utils/build-middleware-array.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/build-middleware-array.js -------------------------------------------------------------------------------- /src/utils/canvas-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/canvas-helpers.js -------------------------------------------------------------------------------- /src/utils/distortion-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/distortion-helpers.js -------------------------------------------------------------------------------- /src/utils/dom-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/dom-helpers.js -------------------------------------------------------------------------------- /src/utils/icon-map.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/icon-map.js -------------------------------------------------------------------------------- /src/utils/keyboard-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/keyboard-helpers.js -------------------------------------------------------------------------------- /src/utils/misc-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/misc-helpers.js -------------------------------------------------------------------------------- /src/utils/onboarding-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/onboarding-helpers.js -------------------------------------------------------------------------------- /src/utils/web-audio-helpers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/web-audio-helpers.js -------------------------------------------------------------------------------- /src/utils/web-audio-manager.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/web-audio-manager.js -------------------------------------------------------------------------------- /src/utils/web-audio-reconciler.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/src/utils/web-audio-reconciler.js -------------------------------------------------------------------------------- /test/reducers/effects.reducer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/reducers/effects.reducer.spec.js -------------------------------------------------------------------------------- /test/reducers/is-admin.reducer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/reducers/is-admin.reducer.spec.js -------------------------------------------------------------------------------- /test/reducers/modal.reducer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/reducers/modal.reducer.spec.js -------------------------------------------------------------------------------- /test/reducers/notes.reducer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/reducers/notes.reducer.spec.js -------------------------------------------------------------------------------- /test/reducers/onboarding.reducer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/reducers/onboarding.reducer.spec.js -------------------------------------------------------------------------------- /test/reducers/oscillators.reducer.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/reducers/oscillators.reducer.spec.js -------------------------------------------------------------------------------- /test/sagas/onboarding.saga.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/sagas/onboarding.saga.spec.js -------------------------------------------------------------------------------- /test/test_helper.js: -------------------------------------------------------------------------------- 1 | require('babel-core/register') 2 | -------------------------------------------------------------------------------- /test/utils/build-middleware-array.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/utils/build-middleware-array.spec.js -------------------------------------------------------------------------------- /test/web-audio/web-audio-manager-stub.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/web-audio/web-audio-manager-stub.js -------------------------------------------------------------------------------- /test/web-audio/web-audio-reconciler.spec.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/test/web-audio/web-audio-reconciler.spec.js -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/joshwcomeau/key-and-pad/HEAD/yarn.lock --------------------------------------------------------------------------------