99 lines
3.8 KiB
Markdown
99 lines
3.8 KiB
Markdown
# 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`
|
|
1. Active the environment: `source mosaicode/bin/activate`
|
|
1. Install PyGObject: `python -m pip install PyGObject`
|
|
1. 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`
|
|
1. Run the tool: `mosaicode`
|
|
1. 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
|
|
```
|
|
|
|
## Related pages
|
|
|
|
ALICE. Lab: [https://alice.ufsj.edu.br/](https://alice.ufsj.edu.br/)
|