Cells — Live coding environment

Hi everyone. I want to introduce you my new project Cells. It’s a live and creative coding environment, which allows you to mix different programming languages. It also makes your project organized and live coding sessions convenient, providing multiple tracks per language and cells — code snippets, which you can run, edit, move etc. Here is the list of supported languages:

  • Clojure
  • Common Lisp (SBCL)
  • Haskell
  • Lua
  • Node.js
  • Overtone
  • Python
  • Ruby
  • Scheme (Chez)
  • SuperCollider
  • Swift
  • TidalCycles

Also you can configure your own languages, but it’s more like a feature for developers. It’s free and open source. I hope you’ll find it useful.


5 Likes

What are the system requirements on mac? I downloaded and installed the package, but it doesn’t launch. I’m on macOS High Sierra.

I tested and packaged it under Catalina. It’s a packaging issue. You can try to run it from source for now. Wider platform support (including Windows) will be introduced with the next release, when I’ll rewrite it in Rust.

any plans for a windows build?

Yes, the next release will support Windows. For now it should work from source there.

Hello @alestsurko, Cells looks very promising!

However, it would be nice to have some info to get started. To install, it’s easy:

  1. download and install python
  2. download and install poetry: curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python
  3. download source code from the last release
  4. extract the zip and enter the source code dir:
    1. poetry install
    2. poetry run cells -d

Now, what should I do? For instance, I’m used to python, but what libraries can I use? And what about Ruby or JavaScript? Can you show some examples to get started?

Also, is it possible to run the cells in offline mode? What do you mean when you say “DAW” in the readme? Can we record audio?

Sorry for so many questions, maybe we can set up a little FAQ or Tutorial page…

Hi! Thanks :slightly_smiling_face:

For Ubuntu, Debian and macOS you don’t need to install Python and Poetry. Just download compiled binaries.

Cells is just an editor. That means you need a specific language to be installed and configured in your system. For example, if you want to use JavaScript you need node.js, for SuperCollider you need, well, SuperCollider and configure it so that it’s discoverable in the PATH variable, etc. Just like with any editor. It’s more about how you structure your document. You have columns of different languages and rows of snippets (small code pieces). You can configure a column to execute some setup script, for example, to import some libraries or to define and initialize some synths. Then you can add those snippets and run them individually or a whole row of snippets at a time.

Firstly, it’s an editor. But whether it’s a DAW, a sequencer, an effect/processor and so on is really depends on how you use it — that what I mean in the readme.

You’ll find more info in this post: https://www.reddit.com/r/programming/comments/egbqsv/cells_a_new_kind_of_editor_for_live_coding/

Contributions especially documentation-related are very welcome, because, unfortunately, I don’t have much time for this project now.