Matt McKegg (@mmckegg)
  • Stars
    star
    2,539
  • Global Rank 11,404 (Top 0.5 %)
  • Followers 630
  • Following 27
  • Registered about 15 years ago
  • Most used languages
    JavaScript
    95.8 %
    HTML
    3.4 %
    Others
    0.8 %
  • Location 🇳🇿 New Zealand
  • Country Total Rank 36
  • Country Ranking
    Rust
    36
    HTML
    44

Top repositories

1

loop-drop-app

[unmaintained] MIDI looper, modular synth and sampler app built using Web Audio and Web MIDI APIs
JavaScript
823
star
2

web-audio-school

An intro to the Web Audio API by a series of self-guided workshops.
JavaScript
401
star
3

notevil

Evalulate javascript like the built-in javascript eval() method but safely.
JavaScript
196
star
4

mutant

Create observables and map them to DOM elements. Massively inspired by hyperscript and observ-*, but avoids GC thrashing.
JavaScript
124
star
5

msi-packager

Build MSI (Windows Installer) packages on Mac and Linux
JavaScript
78
star
6

rust-loop-drop

[WIP] Midi-only version of Loop Drop for running on low power machines like Raspberry Pi and Beaglebone
Rust
52
star
7

soundbank

A collection of triggerable Web Audio API audio slots, supporting audio routing, midi input and value providers.
JavaScript
52
star
8

micro-css

A CSS preprocessor that provides a simplified object orientated approach to css. The syntax is very similar to CSS but encourages better reuse of classes and discourages high specificity.
JavaScript
48
star
9

web-midi

Web MIDI API stream based wrapper
JavaScript
46
star
10

bopper

⏰ Streaming clock source for scheduling Web Audio events rhythmically
JavaScript
43
star
11

patchwork-next

Now located at ssbc/patchwork!
JavaScript
36
star
12

soundbank-pitch-shift

Simple pitch shifter for Web Audio API based on delay nodes. Extends Jungle by Chris Wilso.
JavaScript
34
star
13

audio-slot

Web Audio API FRP wrapper for creating, routing, and triggering AudioNodes.
JavaScript
33
star
14

adsr

UNMAINTAINED: Attack, decay, sustain, release envelope for automating Web Audio API AudioParams.
JavaScript
30
star
15

freeverb

⛪ A Web Audio implementation of freeverb (Schroeder Reverberator)
JavaScript
28
star
16

audio-rms

〰️ Connect a Web Audio API AudioNode and stream out the realtime RMS audio level.
JavaScript
26
star
17

ditty

🔃 Schedule playback for a loop sequence of Web Audio events (e.g. midi notes) using bopper clock source.
JavaScript
26
star
18

wave-recorder

💿 Record WAVE files using Web Audio API and persist with Web FileSystem API.
JavaScript
25
star
19

audio-buffer-stream

Get a PCM stream from input AudioBuffers (Web Audio API). Can be used to implement a streaming audio recorder.
JavaScript
23
star
20

soundbank-reverb

Simple Web Audio API based reverb effect.
JavaScript
22
star
21

web-fs

UNMAINTAINED: Node's fs module for browsers using Web FileSystem API
JavaScript
20
star
22

jsconfasia-talk-2015

I Play the JavaScript - JavaScript, Midi and Live Computer Music!
HTML
20
star
23

patchtron

Yet another SSB client! Probably gonna be Patchwork 4.0, but for now is missing a lot of things and under pretty serious development
JavaScript
17
star
24

custom-audio-node

Create your own AudioNodes with AudioParams for using with the Web Audio API.
JavaScript
14
star
25

lfo

Low frequency oscillator for automating Web Audio API AudioParams.
JavaScript
12
star
26

loop-grid

Make grid based controllers that trigger events and record loops using soundbank and loop-recorder.
JavaScript
12
star
27

dirty-git

List git repos that have dirty working directories (uncommited changes)
JavaScript
12
star
28

observ-midi

Observe and write to midi stream as a single value, struct, array or grid.
JavaScript
10
star
29

array-grid

Two-dimensional implementation of ndarray to avoid dynamic code generation eval.
JavaScript
10
star
30

soundbank-granular

Sample based granular sythesis and timestretch
JavaScript
9
star
31

knob

Canvas knob widget for the browser (touch compatible). Based on jQuery Knob by Anthony Terrien.
JavaScript
9
star
32

midi-looper

Stream based midi loop maker. Buffers all input then creates loops on demand.
JavaScript
9
star
33

audio-buffer-range-decoder

🕞 Decode specified ranges of wave files on disk to AudioBuffers.
JavaScript
9
star
34

midi-controller

Create buttons and note matrices from duplex midi streams for midi controllers such as Launchpad.
JavaScript
8
star
35

audio-param-transform

Apply multiple transforms with custom functions to Web Audio API AudioParams.
JavaScript
7
star
36

observ-fs

Create observable file system scopes using observ pattern.
JavaScript
6
star
37

nodepdx-talk-2016

Portland flavoured version of "I Play The JavaScript" or "I still play the JavaScript" given on the 21st of June 2016
HTML
6
star
38

soundbank-sample

DEPRECATED: Sample player AudioNode source extended with automatable transpose, tuning and amp.
JavaScript
6
star
39

observ-grid

An observable array-grid.
JavaScript
6
star
40

pull-hyperscript

hyperscript as a pull-stream source. Allows streaming the view to the browser as it continues to render.
JavaScript
6
star
41

remote-camera

Example electron app that creates a web server and then streams the remote web-cam of connected user to the local machine.
JavaScript
6
star
42

mutant-pull-reduce

Reduce the output of a pull-stream into a mutant observable.
JavaScript
6
star
43

audio-timeline

DEPRECATED: merged into loop-drop-app
JavaScript
5
star
44

soundbank-oscillator

Oscillator AudioNode source extended with automatable amplitude and midi note params.
JavaScript
5
star
45

wave-file-stream

PCM Wave File stream for Node and browsers using Web FileSystem API (via web-fs).
JavaScript
5
star
46

soundbank-slice

Use with soundbank-inherit to slice an audio sample across the desired amount of audio-slots.
JavaScript
5
star
47

midi-grid

Map a duplex midi stream to observable input and output value grids.
JavaScript
5
star
48

nodejs-wellington-talk-september-2015

Loop Drop and Electron - Node.js Wellington, 2 September 2015
JavaScript
5
star
49

soundbank-overdrive

A simple audio distortion effect based on wave shaping with automatable filter and gain controls.
JavaScript
5
star
50

audio-slot-param

Link and transform schedule-based observables and connect to Web Audio AudioParams.
JavaScript
4
star
51

midi-grabber

Stream midi data in and create temporarily route ranges to specific callbacks.
JavaScript
4
star
52

loop-recorder

Buffers all streamed in trigger events and creates range loops on demand.
JavaScript
4
star
53

tone-modular

Special build of Tone.js that allows requiring of individual components and avoids the global AudioContext. This make it much more browserify friendly and easier to use with existing code or other libraries.
JavaScript
4
star
54

soundbank-dipper

A global side-chain compressor for the Web Audio API. Modulate the amplitude of AudioNodes based on the amplitude of other AudioNodes.
JavaScript
4
star
55

soundbank-delay

Basic delay processor AudioNode with feedback, filter and wet/dry AudioParams.
JavaScript
3
star
56

campjs-v-loop-drop-talk

JavaScript
3
star
57

lookup-grid

Position two-dimensional ndarrays on an x/y grid for lookup of individual coords and values.
JavaScript
3
star
58

observ-fs-audio-buffer

Observable AudioBuffer for use with fs.
JavaScript
3
star
59

callify

Create browserify transforms that change or inline external module function calls.
JavaScript
3
star
60

midi-repeater

Continuously trigger held midi notes using clock input
JavaScript
3
star
61

loop-drop-engine

JavaScript
3
star
62

midi-looper-launchpad

Launchpad control for midi-looper
JavaScript
3
star
63

wave-view

SVG based PCM waveform renderer for the browser
JavaScript
3
star
64

realtime-templates

DEPRECATED: Render views on the server (using standard HTML markup) that the browser can update in realtime when the original data changes.
JavaScript
3
star
65

campjs-v-hack

JavaScript
3
star
66

observ-node-array

Populate an observable array from node descriptors.
JavaScript
3
star
67

audio-meddle

Route Web Audio API audio nodes through schedulable chains of processor nodes.
JavaScript
3
star
68

ableton-hack

hack hack
JavaScript
3
star
69

observ-default

Observ with default value on null.
JavaScript
3
star
70

json-signer

Signs JSON objects using a private key allowing a server to ensure an object has not been tampered with.
JavaScript
3
star
71

audio-splatter

JavaScript
3
star
72

observer-stack

Wrap an observable so that only the top most observer receives notifications.
JavaScript
2
star
73

loopjs-www

Loop Drop marketing/purchase/download/help website
HTML
2
star
74

throttle-observ

Throttles observ object broadcast to specified rate.
JavaScript
2
star
75

loop-mpkmini

loop-grid bindings for Akai MPK Mini controller
JavaScript
2
star
76

loopjs-packager

JavaScript
2
star
77

disco-textures

JavaScript
2
star
78

window-stream

Stream data between browser windows using postMessage
JavaScript
2
star
79

soundbank-scale

Use with soundbank-inherit to distribute a series of audio-slots across a musical scale.
JavaScript
2
star
80

pull-cat-map

Map pull-streams to other pull-streams then concat together
JavaScript
2
star
81

loop-drop-hack

JavaScript
2
star
82

soundbank-inherit

Inherit descriptor from target audio slot and override specified attributes.
JavaScript
2
star
83

midi-port-holder

Bind to midi port by name and expose switchable duplex stream.
JavaScript
2
star
84

contextdb

Use json-context with leveldb. Contexts are automatically generated from matchers, and provides ability to watch matchers for realtime notifications.
JavaScript
2
star
85

observ-transform

Observable transform (with args) based on observ-* pattern.
JavaScript
2
star
86

soundbank-multi

Repeat template descriptor for every item in input array, replacing placeholder with current item.
JavaScript
2
star
87

jsconfasia-talk-2016-livejs

HTML
2
star
88

soundbank-slide

Modulator to implement time sliding between grouped values.
JavaScript
1
star
89

realtime-templates-example

An example of using all of the realtime-templates modules together in a single site.
JavaScript
1
star
90

loop-drop-sample-project

Sample Project for Loop Drop
1
star
91

loop-drop-server

JavaScript
1
star
92

elementize

Convert HTML into an array of DOM Elements
JavaScript
1
star
93

forest-songs

JavaScript
1
star
94

soundbank-slot-editor

Visual node editor for soundbank slots.
JavaScript
1
star
95

loop-grid-repeater

A note repeater transform for loop-grid.
JavaScript
1
star
96

loop-drop-setup

DEPRECATED: merged into loop-drop-app
JavaScript
1
star
97

moontune

JavaScript
1
star
98

loop-stream

Stream Loop Drop playback data out on a websocket
JavaScript
1
star
99

loop-drop-project

Provides scoped object access and persistence layer for Loop Drop objects.
JavaScript
1
star
100

inheritable-audio-context

Wrap an AudioContext to allow inheritance and additional properties.
JavaScript
1
star