HackWeek
A tool to nurture hack ideas into projects and then collaborate on them. It's used during SUSE's hackweek, a week where SUSE employees can experiment without limits and get their opportunity to innovate, collaborate across teams, and learn.
Features
- 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
Requirements
Sphinx (searchd) and MariaDB must be installed and running.
No need to configure and launch Sphinx separately, everything will be taken care of with rake ts:regenerate
.
Hack it
You can run the development environment with foreman start -p 3000
.
As our project involves somewhat complicated setup (MySQL and Sphinx search)
for a development environment, we have created a Docker Compose setup to
get you up and running.
- Since we mount the hackweek repository into our container, we need to map
your local user id to the one of the container user. Otherwise files created
inside the container might not be writeable. If your user id (
id -u
) is something else than1000
, then copy thedocker-compose.override.yml
file and set your user id number in the variableCONTAINER_USERID
.cp docker-compose.override.yml.example docker-compose.override.yml vi docker-compose.override.yml
- Set up the development environment:
docker-compose run --rm hackweek bundle exec rake dev:bootstrap
- Start the development environment:
docker-compose up --build
- Access the application as usual:
xdg-open http://0.0.0.0:3000
- Start hacking
-
Test your changes
docker-compose exec hackweek rspec
- Send pull request
-
$UCCE$ $
"Remote" connection to the container is available with docker-compose exec hackweek /bin/bash
. You
can run single-shot remote commands like docker-compose exec hackweek rake db:migrate
.
Resources
- Design mockups of the Rails app are in the design directory.
- There are some tools in the tool directory.
- Data of past hackweeks is in the archive directory.