Contributing to ideascube

Would you like to make the ideascube project better? Welcome! This document will try to provide guidelines about what and how you can help.

Contact and resources

If you have any question, problem or idea, feel free to get in touch with project's maintainers:

  • Chat using #ideascube channel on Freenode. If you are not familiar with IRC, you can try this simple online chat application: just click "Start" then chat!

  • Ask questions, report issues or propose ideas as tickets.

Here are online resources you may find useful to contribute to the project:

How can I give a hand?

  • Join the brainstorming: report or comment issues; join the IRC channel
  • Review merge requests
  • Take an issue and code :)
  • What about a sprint?

Install ideascube for development

Setup system

Project's typical development environment requires:

On a Debian-based system, you may use:

sudo apt-get install python3-pip python-virtualenv virtualenvwrapper python3-dev libjpeg-dev libxml2-dev libxslt1-dev zlib1g-dev build-essential autoconf automake libtool libdbus-glib-1-dev git
sudo apt-get build-dep python3-dbus

Download the source code

Get project's source code from project's code repository (you may use your own fork):

git clone git@framagit.org:ideascube/ideascube.git
cd ideascube/

Setup project

Create a virtualenv (we name it ideascube here but the name is up to you):

mkvirtualenv ideascube

Install python dependencies:

make develop

Run the initial database migration::

make migrate

To populate the database with some initial dummy data, you can run the command::

make dummydata

Check and run!

Run the server:

python3 manage.py runserver

Check it works:

firefox http://localhost:8000

Done!