
# Skini project

Author : <bertrand@hedelin.fr>

**Skini** is a platform for collaborative and generative music based on **[synchronous programming](https://github.com/manuel-serrano/hiphop)**.
It is a result of reseaches on computer music done at **[Inria](www.inria.fr)**.

Introduction
------------
Skini was designed to compose music that will be performed in **interaction with an audience** or produced **automatically by random processes**. The solution includes a web server that integrates **orchestration modules** written using a graphical programming tool that is an abstraction layer on top of the HipHop.js language. The composition method is based on three basic concepts: clips (or patterns), instruments and orchestration.

Skini means "scene" in greek. To understand the functioning of Skini, it is advisable to refer to the different articles published about this platform:
* [Programming journal 2020](https://programming-journal.org/2021/5/2/) (best paper award for 2021), 
* [ICMC 2021](https://www.youtube.com/watch?v=fYu9Cp8veaE) (video)
* [Japanese Society for Sonic Arts 2021](https://www.youtube.com/watch?v=r8eSzy0ZlrA&t=2s) (video)
* [NIME 2019](https://zenodo.org/record/3672870#.Y3YBdnbMJPY) (paper)
* [Tenor Conference 2022](https://tenor2022.prism.cnrs.fr/templates/ProceedingsTENOR2022.pdf) (paper)

 If you can read French the PhD thesis [Temps et Durée : de la programmation synchrone à la composition musicale](https://hal.inria.fr/tel-03135288/) is the most complete document describing the Skini approach.

Most of the history and functionnalities of Skini are described at www.hedelin.fr.

Documentation
-------------

* [Installing the application](https://github.com/BertrandHedelin/Skini/blob/main/doc/quickstart.pdf)
* [Skini User manual](https://github.com/BertrandHedelin/Skini/blob/main/doc/Doc%20Skini%20Node%20english.pdf)
* [Mode d'emploi Skini](https://github.com/BertrandHedelin/Skini/blob/main/doc/Mode%20d'emploi%20Skini%20Node.pdf)
* [Tutorials on Skini programmings](https://github.com/BertrandHedelin/Skini/blob/main/doc/Tuto%20Skini.pdf)
* [jsdoc development documentation](https://github.com/BertrandHedelin/Skini/blob/main/jsdoc/index.html)
