mosaicode/README.md

3.8 KiB

Mosaicode

A Visual Programming Environment and source code generator for specific domains, focusing on Digital Art.

Getting Started

Getting a copy of the project up and running on your local machine. Supported Platform: GNU/Linux.

git clone https://git.alice.ufsj.edu.br/fls/mosaicode.git

Prerequisites / Dependencies

sudo apt install \
                    build-essential \
                    cmake \
                    gcc \
                    gir1.2-gtksource-3.0 \
                    gir1.2-gtk-3.0 \
                    gir1.2-goocanvas-2.0 \
                    libcairo2-dev \
                    libgirepository1.0-dev \
                    libgirepository-2.0-dev \
                    libgoocanvas-2.0-9 \
                    libgoocanvas-2.0-dev \
                    pkg-config \
                    python3 \
                    python3-cairo \
                    python3-dev \
                    python3-gi \
                    python3-gi-dev \
                    python3-gi-cairo \
                    python3-pip \
                    python3-setuptools \
                    python3-venv

Installation

Steps to install the Mosaicode in a virtual environment or in the operational system directory.

Virtual Environment / Isolated from system directories

Setting the virtual environment:

  1. Create the environment: python3 -m venv mosaicode
  2. Active the environment: source mosaicode/bin/activate
  3. Install PyGObject: python -m pip install PyGObject
  4. Install Mosaicode: python setup.py install

More details in the Python 3 Virtual Environments and Packages documentation: https://docs.python.org/3/tutorial/venv.html

Running mosaicode

  1. Active the environment: source mosaicode/bin/activate
  2. Run the tool: mosaicode
  3. Deactivate the environment: deactivate

Useful Makefile Commands

  • make help - Show all available commands
  • make check_deps - Check if dependencies are properly installed
  • make run - Run Mosaicode in development mode
  • make run_installed - Run installed Mosaicode
  • make test_normal - Run tests
  • make clean - Clean build files

Mosaicode Extensions

Some extensions that you can install to add visual programming languages with resources from areas of computing which allow the development of tools to support Digital Art in a simple and practical way: dragging and connecting blocks:

Technology Domain Extension repository Operating
Javascript / Web Audio API Computer Music https://git.alice.ufsj.edu.br/fls/mosaicode-javascript-webaudio Yes
C / OpenCV Computer vision https://github.com/Alice-ArtsLab/mosaicode-c-opencv No
C / Opengl Computer graphics https://github.com/Alice-ArtsLab/mosaicode-c-opengl No
Javascript / Canvas Graphics on a web https://github.com/Alice-ArtsLab/mosaicode-javascript-canvas No
C / Linux-Joystick USB Controller https://github.com/Alice-ArtsLab/mosaicode-c-joystick No
C / Gtk GUI https://github.com/Alice-ArtsLab/mosaicode-c-gtk No
C / Portaudio Computer Music https://github.com/Alice-ArtsLab/mosaicode-c-sound No

To install a Extension:

mkdir ~/mosaicode
mkdir ~/mosaicode/extensions/
cd  ~/mosaicode/extensions/
git clone https://git.alice.ufsj.edu.br/fls/mosaicode-javascript-webaudio.git

ALICE. Lab: https://alice.ufsj.edu.br/