This is the code that powers hackerunion.org. It is built on top of petri, an open source project developed at HuffPost Labs. The backend uses the python django framework, and the front end is built using the Zurb Foundation framework.
- Scss / sass - Install sass,
gem install sass
- virtualenv -
pip install virtualenv
- mysql - only used on production, but you need it to install the
python-mysqldependency. To install on osx do a
brew install mysqlTo install on Ubuntu apt-get install libmysqlclient-dev
- sqlite - the database used locally. probably is already installed
Setting up the Database
DJANGO_LOCAL=True ./manage.py syncdb --noinput (no need to create a superuser, one will be created for you. see the Test User section.).
- Create a virtualenv in your git directory (don't worry, it will be ignored on checkins) --
- Install all the requirements (ensure
envis active by running "env/bin/activate") --
pip install -r var/etc/requirements.txt
- [optional] Run the celery tasks:
DJANGO_LOCAL=True ./manage.py celeryd -v 2 -B -E -l INFO(this should run in a separate terminal from the server)
- Run the server in local mode --
DJANGO_LOCAL=True python manage.py runserver
- Visit http://localhost:8000/
Custom CSS Watching
cd hackerunion.org/static bundle install # only need to do this once bundle exec compass watch
Style changes should be made to the file
We automatically create a test user with superuser abilities.
All pull requests are welcome, no matter the size. For push access make a few awesome pull requests, or contact one of the maintainers listed below.
Currently, all development occurs via the hackerunion/website fork of the huffpostlabs/petri project. Both of these projects are open source under the GPL.
This is temporary! We're working this way as Petri is currently coupled to the Hacker Union use case.
Once we've isolated the two, we'll properly divide efforts: Hacker Union-specific updates will go here, and system-wide updates will go to Petri.
This seemed to make the most sense as Hacker Union is an instance of Petri (much like any organization's deployment of Petri ought to be -- though we hope to have a non-source configuration mechanism down the road).
This project is licensed under GNU GENERAL PUBLIC LICENSE VERSION 3. See the file LICENSE.md for a copy of the license.