Skip to content

tian2992/shoebot

 
 

Repository files navigation

Shoebot

Shoebot is a Python graphics robot: It takes a Python script as input, which describes a drawing process, and outputs a graphic in a common open standard format (SVG, PDF, PostScript, or PNG). It works through simple text files, and scripts can describe their own GUIs for controlling variables interactively. It can also be used as a Python module, a plugin for Python-scriptable tools such as Inkscape, and run from the command line.

Shoebot is a port/rewrite of Nodebox 1. It was also inspired by DrawBot and Shoes. Thus, "Shoebot".

Build Status

Installation

Shoebot runs on Python 2.7, which is most probably what you already have installed. To get better performance, you can run it using PyPy, which is experimental.

Dependencies

You need a few software packages on your system before installing Shoebot. There is a small handy script that will take care of this for you:

cd install
./install_dependencies.sh

Installing Shoebot

The quickest way to get Shoebot up and running is to install it system-wide:

sudo python setup.py install

Local installation is also possible using virtualenv.

Virtualenvwrapper

If you're using the handy virtualenvwrapper, these are the necessary commands:

mkvirtualenv shoebot
pip install -r requirements.txt
python setup.py install

To use Shoebot in the future, remember to activate the environment first.

workon shoebot

In case you have PyPy installed, make sure to point to it when creating the virtualenv. Instead of the first command in the previous example, do:

mkvirtualenv shoebot -p `which pypy`

Plain virtualenv

If you don't use virtualenvwrapper, run these commands after installing the dependencies.

virtualenv shoebot-env
source shoebot-env/bin/activate
pip install -r requirements.txt
python setup.py install

To use shoebot in the future, remember to activate the environment first.

source shoebot-env/bin/activate

Like in the Virtualenvwrapper instructions, to take advantage of PyPy you need to create the Virtualenv pointing to it.

virtualenv shoebot-env -p `which pypy`

Usage

See the Getting started docs page.

Documentation

You can find the current docs at ReadTheDocs.

The Nodebox tutorials are an excellent intro to the language and its core concepts. Shoebot is a rewrite of Nodebox 1, so the original Nodebox documentation is required reading.

The Shoebot documentation has quite a lot more information on what you can do with Shoebot. Take a look at the wiki for a set of hacks and advanced uses such as:

  • import Shoebot as a Python module
  • use the included socketserver to have other programs control a Shoebot script
  • generate images via CGI scripts

Getting help

Installation can sometimes be tricky, to help use work out whats up paste the output of the following commands into a ticket on github

python setup.py diagnose
python setup.py test

This will help us diagnose common issues more quickly.

Links

License

Copyright (C) 2007-2016 The Shoebot authors (Stuart Axon, Dave Crossland, Francesco Fantoni, Ricardo Lafuente, Sebastian Oliva) Originally developed by Ricardo Lafuente with the support of the Piet Zwart Institute, Rotterdam.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

About

Coding vector graphics with Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 98.0%
  • C 1.7%
  • Other 0.3%