websocket & http server for ssb
Peer-to-peer audio publishing and streaming application. Like SoundCloud but decentralized. A mashup of ssb, webtorrent and electron.
Map pull-streams to other pull-streams then concat together
hyperscript as a pull-stream source. Allows streaming the view to the browser as it continues to render.
Reduce the output of a pull-stream into a mutant observable.
minimal core for ssb clients
scuttlebot plugin for indexing all link mentions of messages
scuttlebot plugin for getting reduced 'about' state
scuttlebot plugin for getting reduced 'contacts' state
get realtime stats out of your sbot.
scripts to generate ssb data for testing
Secure Scuttlebutt client-side API for React Native apps
Secure Scuttlebutt peer for React Native apps
serve ssb threads as (embeddable) web pages
notify irc when something happens on ssb.
reduce a reverse stream of ssb messages into a collection of threads and channels.
localStorge based settings module for patch-* related apps
Create observables and map them to DOM elements. Massively inspired by hyperscript and observ-*. No virtual dom, just direct observable bindings. Unnecessary garbage collection is avoided by using mutable objects instead of blasting immutable junk all ove
Index your database objects in the way they will be rendered. Follows the JSON Context matcher pattern. Datasources generated from matchers, then watch for realtime changes.
Sort an item in a collection relative to other items based on it's before/after attribute
Sync json-context instances via WebSockets using sock.js
Use json-context with leveldb. Contexts are automatically generated from matchers, and provides ability to watch matchers for realtime notifications.
Canvas based knob widget for the browser
Creates a virtual midi clock ticking at 24 PPQ
PCM Wave File stream for Node and Web FileSystem API
Use qwerty keyboard as midi keyboard in the browser
Index and filter LevelDB databases and watch for future changes.
Put all function and variable declarations at the top of the scope in an AST
Create multiple duplex object streams that read and write through a single text stream.
Define javascript behavior for DOM elements
Match an object against a filter
Watch rincewind views and trigger callbacks on change
Get a short, unique key for a given file path based on the content of the file or its path.
Scroll the page by a given offset using CSS transitions
Stream midi data in and temporarily route ranges to specific callbacks.
Convert HTML into an array of DOM Elements
Create buttons and note matrices from duplex midi streams for midi controllers such as Launchpad.
Transform target DOM elements to become incoming HTML
Create a single object containing all data required to render a view/page that provides an event stream for syncing with server and data-binding. Browserify compatible.
Wrap an AudioContext to allow inheritance and additional properties.
Smoothly animate a DOM element swap from one to another.
Launchpad control bindings for midi-looper
Render views on the server (using standard HTML markup) that the browser can update in realtime when the original data changes.
Position two-dimensional ndarrays on an x/y grid for lookup of individual coords and values.
Wrap an observable so that only the top most observer receives notifications.
Browserify transform to inline and precompile rincewind templates
Map a duplex midi stream to observable input and output value grids.
Create browserify transforms that change or inline external module function calls
Apply multiple transforms with custom functions to Web Audio API AudioParams.
Simple pitch shifter for Web Audio API based on delay nodes. Extends Jungle by Chris Wilso.
Use with soundbank-inherit to slice an audio sample across the desired amount of audio-slots.
Modulator to implement time sliding between grouped values.
Estimates BPM from tap events
Automatable DC voltage for modulation of Web Audio API AudioParams.
A simple audio distortion effect based on wave shaping with automatable filter and gain controls.
List of remote connections for loop-drop app
FTDI bindings for Node.js
Trigger soundbank slots by piping in ditty events.
Buffers all streamed in trigger events and creates range loops on demand.
Animate between DOM style changes using css transitions
Populate html form elements with data and return updated object
A collection of triggerable Web Audio API audio slots, supporting audio routing, midi input and value providers.
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.
Stream based midi loop maker. Buffers all input then creates loops on demand.
A global side-chain compressor for the Web Audio API. Modulate the amplitude of AudioNodes based on the amplitude of other AudioNodes.
Use with soundbank-inherit to distribute a series of audio-slots across a musical scale.
Inherit descriptor from target audio slot and override specified attributes.
Repeat template descriptor for every item in input array, replacing placeholder with current item.
Move selected ranges of loops to new origin. loop-grid transform.
Two-dimensional implementation of ndarray to avoid dynamic code generation eval.
A note repeater transform for loop-grid.
Stream observable array-grids as ditty note events.
Transform for suppressing selected loops on loop-grid.
Connect a Web Audio API AudioNode and stream out the realtime RMS audio level.
Observe stacked array-grids of identical shape, falling back to grid below on null.
Editor for Loop Drop objects.
Web MIDI API stream based wrapper
Create your own AudioNodes with AudioParams for using with the Web Audio API.
Duplex stream wrapper around 'midi' module
loop-grid bindings for Akai MPK Mini controller.
Range selector for loop-grid.
Evalulate javascript like the built-in eval() method but safely
An observable array-grid.
Visual node editor for soundbank slots.
A group of triggerable sound descriptors to be positioned on a loop-grid and played with soundbank.
Beat stutter/looper transform for loop-grid.
Schedule a looped sequence of Web Audio events using bopper clock source.
AudioContext prepopluted with all the soundbank modules used in Loop Drop
Bind to midi port by name and expose switchable duplex stream.
Route Web Audio API audio nodes through schedulable chains of processor nodes.
List git repos that have dirty working directories (uncommited changes)
Retrieves values from JSON objects for data binding. Offers params, nested queries, deep queries, custom reduce/filter functions and simple boolean logic. Browserify compatible.
Sample based granular sythesis and timestretch.
Attack, decay, sustain, release envelope for automating Web Audio API AudioParams.
a secure, replicatable database
Basic delay processor AudioNode with feedback, filter and wet/dry AudioParams.
Simple Web Audio API based reverb effect.
Observe and write to midi stream as a single value, struct, array or grid.
Pipe Web Audio API nodes into PCM Wave files
Low frequency oscillator for automating Web Audio API AudioParams.
Qwerty keyboard bindings for loop-grid.
Oscillator AudioNode source extended with automatable amplitude and midi note params.
Create observable file system scopes using observ pattern.
Sample player AudioNode source extended with automatable transpose, tuning and amp.
Node's fs interface for Web FS API and Chrome Packaged Apps.
Provides scoped object access and persistence layer for Loop Drop objects.
Populate an observable array from node descriptors.
network protocol layer for secure-scuttlebutt
Novation Launchpad bindings for loop-grid
Web Audio API FRP wrapper for creating, routing, and triggering AudioNodes.
An observable collection of looped event sequences shaped to a grid.
Provides a streaming clock source for scheduling Web Audio events rhythmically
Persist Loop Drop controller and chunk setups.
create and validate ssb feeds
An intro to the Web Audio API by a series of self-guided workshops.
Expose leap motion data as params in Loop Drop.
MIDI looper, modular synth and sampler app built around Novation Launchpad controller (electron app).
A Web Audio implementation of freeverb (Schroeder Reverberator)
test wether a string is a valid ssb reference type
Convert values to and from decibels.
Build MSI (Windows Installer) packages on Mac and Linux
Link and transform schedule-based observables and connect to AudioParams (Web Audio API).
Observ but with default value on null.
A decentralized messaging and sharing app built on top of Secure Scuttlebutt (SSB).
Decode specified ranges of PCM Wave and Opus webm files on disk to AudioBuffers. Probably only works with electron.
Observable AudioBuffer for use with fs.
Throttles observ object broadcast to specified rate.
Observ object for arranging, trimming and adjusting multiple audio clips on a timeline using Web Audio.
A markdown parser built for speed, customized for SSB
Example electron app that creates a web server and then streams the remote web-cam of connected user to the local machine.
Get a PCM stream from input AudioBuffers (Web Audio API). Can be used to implement a streaming audio recorder.
Observable transform (with args) based on observ-* pattern.
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.
pull-stream to a infinite scrolling web pane.
patchwork's markdown parser
get the `signifier` (name for an object) or `signified` (object for a name) from a secure-scuttlebutt database.
index links in ssb messages
extract the mentions in a ssb message, just using the markdown. this is _mostly compatible_ with the way patchwork does it. but simpler, because it relies only on the markdown.
keyfile operations for SSB on the React Native side
A scuttlebot plugin for querying data. With [map-filter-reduce](https://github.com/dominictarr/map-filter-reduce) you can write pretty flexible queries, similar to SQL, but more javascripty.
Play audio buffer in node or browser
query for the avatar that an ssb feed has been assigned, compatible with the way that patchwork selects avatars.
localStorge based drafts module for patch-* related apps
validation and publishing methods for common ssb message types
load a ssb-thread, and sort it in [cryptographic order](https://github.com/ssbc/ssb-sort).
publish of scuttlebot with shrinkwrapped deps
use multiple identities from a single sbot instance
basic utilities for running an app in CV
common protocol for multiplayer messages
The core-logic for rpc/multiplexing protocols
Replicates SSB feeds using Epidemic broadcast trees
A simple JS sdk to interact with Voxels' marketplace