A tool to nurture hack ideas into projects and then collaborate on them. It's used during SUSEs hackweek, a week where SUSE engineers can experiment without limits and get their opportunity to innovate, collaborate across teams, and learn.
- Admins can add hackweeks
- Users create ideas for a hackweek
- Users can like and comment on ideas
- Users can join ideas turning them into projects
- Users can supplement projects with files, links, agenda items and "needs"
- Users can supplement themselves with "haves"
- Ideas/Projects "needs" are matched to Users "haves"
- Admins can rate project results
Sphinx (searchd) must be installed. No need to configure and launch it separately, everything will be taken care of with
- Fork this repository
- Configure the rails app
cp config/database.yml.example config/database.yml cp config/application.yml.example config/application.yml cp config/secrets.yml.example config/secrets.yml
- Install the ruby gem bundle
- Create the database
- Create Sphinx configuration, start the search daemon and index existing DB contents
rake ts:regenerate ts:index
- Run the rails server
To make this more convenient for you, we have a rake task that executes the above steps:
bundle exec rake dev:bootstrap
Also, consider developing using Vagrant, documented below.
- Design mockups of the rails app are in the design directory.
- The project list for HackWeek9 is in the Wiki.
- There are some tools in the tool directory.
- Data of past hackweeks is in the archive directory.
- The source of the old webpage is in the gh-pages branch.
Development with Vagrant
As our project involves somewhat complicated setup (MySQL and Shpinx search) even for development environment, we've created Vagrantfile to get you up and running.
- Install Virtualbox (can be found in your OS package manager or here).
- Download and install the latest vagrant.
- Install vagrant-exec plugin:
vagrant plugin install vagrant-exec.
- Start Vagrant box:
vagrant up. It will set up and start an OpenSUSE 13.2 VirtualBox VM in the background. VM will have an autosynced folder
/vagrantwith your code, and can always be shut down with
vagrant haltand removed with
- Remote connection to the Vagrant box is available with
vagrant ssh, one can run single-shot remote commands like
vagrant exec rake db:migrate(will be run in the context of
/vagrantfolder; no need to additionaly state
- Launch the application:
vagrant exec rails s. It should be accessible at http://localhost:3000, as usual.