Giter VIP home page Giter VIP logo

jarmlib's Introduction

jarmlib: Jack Armitage's (mostly TidalCycles) live coding library

This is not a "working repo", I just update this occassionally to make what I do a bit more shareable.

Currently this doesn't include much SuperCollider / SuperDirt code as that's a mess. Also not included as of now is Emacs stuffs. If you poke me I might do something about that.

Mostly what I'm trying to achieve with live coding is efficiency, flexibility, minimal cognitive overhead, and easy memorisation (both cognitive and embodied).

Overview

  • Three main Haskell files:
    • Boot.hs: the main entry point.
    • Lib.hs: extra functionality.
    • Targets.hs: destinations for sending Tidal pattersn to (AKA OSCTargets).
  • Some random SuperCollider bits:
    • tidal-midi-setup.scd possibly the only thing here that's useful to anyone other than me.

Boot.hs

  • Main entry point kept simple as possible
  • Includes hoogle if you have that installed

Lib.hs (in order of import)

  • Shorthands.hs: shorthand versions of standard Tidal functions/parameters. Because life is short.
  • Signal.hs: efficient ways to work with "continuous functions".
  • Sequence.hs: number sequences.
  • Param.hs: efficient ways to work with groups of parameters.
  • Harmony.hs: a keyTable and a harmonise function for writing in-key chord sequences efficiently.
  • Composition.hs: experiments in writing Tidal "tracks".
  • MIDI.hs: any custom MIDI stuff.
  • Misc.hs: misc.
  • Compatibility.hs: anything deprecated.

Targets.hs

  • SuperDirt.hs (basically the rest of the default BootTidal.hs)
  • Bitwig/BitwigAPI.hs (experimental)
  • Other experiments

Setup

  • Set the absolute path in Boot.hs
  • Run :script /path/to/Boot.hs when booting Tidal (this will depend on your editor)

Customisation

  • Comment out what you do/don't want inside Boot.hs, Targets.hs and Lib.hs

Questions/comments

  • Contact here or Twitter (@jdkarmitage).

Buy Me A Coffee

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.