Skip to content
Colin Clark edited this page Mar 16, 2015 · 23 revisions

Flocking Release Plan

0.1.0: Essential Unit Generators and Better WebAudio API Integration

0.2.0: Internal Refactoring

  • Improved factoring of core components (merge in the graphical-ioc branch)
  • Performance improvements
    • Functions + state for main sample processing loop
    • Optimize all hot paths
    • remove Infusion events and invokers from the main processing loop
  • flock.define() for more easier declarative coding
  • "Generous" JSON parser that supports unquoted keys and comments
  • Expression parser that supports mathematical expressions, references to constants, etc. in JSON
  • Migrate website to Digital Ocean
  • ✅ Migrate mailing lists to the Fluid Project

0.3.0: Live coding support

  • Refactor eight by eight into new "live data" environment
  • Add the ability to load a JSON file containing a band/synthDef
  • On the fly modification of synth parameters converted into change specifications using the ChangeApplier

0.4.0: Web Audio Islands

  • SignalEvaluator
  • JSON Specification for wiring up WebAudio nodes (sketches)
  • Refactor graphical renderer to support wire specifications

0.5.0: Return of the Visual Playground

  • Rewrite the visual playground and underlying synthDef/ugenDef parsing logic
  • Graceful handling of parsing and rendering errors (to make writing code while visualizing it smoother)
  • Optimize the rendering performance

0.6.0: Input Mapping

  • Input mapper
  • Finish MIDI support
  • Out of the box support for OSC.js

0.7.0: Documentation

  • Awesome getting started tutorial
  • Documentation for all unit generators
  • How to reuse and extend other synths

0.8.0: New Scheduler

  • New scheduler API, including the ability to:
  • create synths
  • manipulate the environment (e.g. add synths, remove them)
  • destroy old synths
  • support for value expressions (e.g. ${synth.freq})
  • Block-accurate, inline scheduler

0.9.0: Unit Generator Performance Optimization

  • Functions + state for all unit generators

1.0.0: Collaborative Playground

  • Support for file management
    • Create, delete, save
  • New view for selecting and creating
  • OAuth integration with Github
  • Gist persistence manager
  • PouchDB-based local caching, wrapped with a similar REST-style API to Gist’s
Clone this wiki locally