Schwenger / House-Of-Tweets

GNU General Public License v3.0
0 stars 1 forks source link

House of Tweets

House of Tweets is an art/computer science project that took place at the Saarland University.

We do not want to bother anyone with unnecessarily many words, so feel free to play around with our project and leave feedback if you like. Make sure, your sound is turned on!

main_page_overview

Note that the project has been put on ice, and instructions on how to revive it are in CONTINUE.md.

Install instructions:

For the tersest but also most platform-specific instructions, read the .travis.yml script.

Get all secrets

To be able to establish a connection to twitter, you need to provide information about your twitter account in the backend/credentials.py files. This is a short Python "module" that defines a map CREDENTIALS.

Refer to backend/credentials_TEMPLATE.py for an example and follow the format.

You can obtain the necessary values by creating a twitter app.

Get heavy

Large binary files are stored in a separate repository. To download the files run git submodule update --init .heavy.

This repository includes all sounds and images which have appropriate licensing such that they can be made public.

OS-dependent packages

In general, you'll need:

Linux

Some systems (Ubuntu and Debian, at least) install the node binary in a way that is incompatible with npm. To resolve this, do this on Ubuntu:

sudo ln -s /usr/bin/nodejs /usr/bin/node

Debian provides the package nodejs-legacy to do this. Note that npm is not available in all distributions.

Mac OS X

In case you have not installed homebrew yet, run

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

to install homebrew and brew install rabbitmq node python3 libav bsdutils to install the dependencies.

Windows

It wouldn't be Windows if there weren't a graphical installer for most of the required programs.

As it is windows, you most certainly have to restart your system, potentially several times during the installations.

Thankfully, you can avoid npm, coffee-script, and other JS-related steps, because Windows is just for running the final product.

OS-independent packages

FrontEnd-dependencies will be installed automatically by running make install_dependencies.

This will install the npm packages stompjs, browserify, coffee-script, coffeescript-concat, less and pip packages pika, pydub, tweepy, typing.

Note 1: In Ubuntu the pip3 package is simply called pip. Check with --version which Python version it is addressing and make sure it is Python 3.

Note 2: Under Debian, you may need to install the pip packages as sudo. Also, you may need to sudo pip3 install setuptools first.

Note 3: Under Windows you need to install the dependencies manually. Use the command line with administrator rights for pip. If you need to make frontend on Windows, use the GUI for npm. Both are shipped with the aforementioned installers.

Normal workflow:

Get RabbitMQ running:

Build the frontend:

Run the backend:

Run the tests:

Run the project / presentation:

Authors:

The application is developed and maintained by

Sounds are extracted from xeno-canto, thank you very much! Images can be extracted from wikipedia, for legal reasons, they are not included online.

The first version was additionally developed by

Troubleshooting:

In case there are any troubles developing on windows, we do not intend to fix it. The workflow is designed for Unix systems.

A fully built project will run on Windows, as well as Unix systems. However, the FrontEnd is designed for and only fully tested on Chrome for Windows 7 and Mac OS 10.10 or later.