Skip to content
An event calendar for nerds, geeks & hackers
Ruby HTML CSS CoffeeScript JavaScript ApacheConf
Latest commit daf4ecd @moonglum moonglum Merge pull request #604 from hacken-in/586-add-codeclimate-config
Add Codeclimate config file (refs #586)
Failed to load latest commit information.
app Add haml+i18n for password reset (fixes #486)
bin enabled spring in binstubs
config Mention the ruhrgebiet on the homepage
db Add current db/schema.rb
lib Cast event_ids to String to make them compatible PostgreSQL
log Reset project
public Allow Robots to crawl again (fixes #390)
script Rework README and bootstrap directly into a running machine
spec Cast event_ids to String to make them compatible PostgreSQL
vagrant Update puppet-hackenin to 1.0.5
vendor added prism as syntax highlighter #359
.codeclimate.yml Add Codeclimate config file (refs #586)
.gitignore Ignore vendor/ruby again (where did that come from?!)
.powrc Pow told me I should do that
.rspec Machen wir mal den ersten Schritt in Richtung RSpec
.ruby-version Upgrade to latest Puppet module
.travis.yml Upgrade to latest Puppet module Update Code of Conduct to Contributor Covenant 1.1.0 Make more present for new contributors (#438)
Cloudfile Merge pull request #454 from hacken-in/452-migrate-cronjobs
Gemfile Bump Twitter Client version to 5.6.0 (refs #542)
Gemfile.lock Bump Twitter Client version to 5.6.0 (refs #542)
Gemfile.vagrant Tiny bootstrap helper to get new users started with #394
Guardfile Revert "Removed Guard, because it is broken #322"
LICENSE Added my name to the License File Rework README and bootstrap directly into a running machine
Rakefile Vlad raus, Capistrano rein, Step 1
Vagrantfile Stop! Hammertime! First commit


Travis Build Status Codeship Build Status Code Climate Code Climate CodeCoverage Pickable Stories

This is the code of, an event calendar for geeks in and around Cologne, Berlin and Munich. If you want to help us in extending the calendar to your city, please contact us in our Google Group.

If you find a bug, please report it on our tracker. We discuss features and problems in our Google Group. If you want to contribute to, have a look at our Kanban Board at Just pick a card from the Pick One column and start hacking. This is our current activity level:

Throughput Graph

Scope of

When you want to add an event to please check with the following guidelines:

  • Currently we only feature events in Ruhr area, Berlin and Munich plus BIG events in Europe
  • The following topics are allowed:
    • Programming (in any language)
    • Nerd-Culture (like Star Wars, Ponies, Gaming, Comics...)
    • Software Development Methods and Software Engineering
    • Electronics and Robots
    • Networking

Getting Started

If you want to work on you have two options:

  1. Use our Vagrant VM.

    The best method if you haven't tried Rails before and don't want to install PostgreSQL on your computer.

  2. Start locally with Pow

    If you already have Pow and a local PostgreSQL installation, you are good to go. Just skip to the section Using Pow.

Using the Vagrant VM can also be started in a virtual machine with Vagrant. This might be the perfect fit if you cannot or don't want to install PostgreSQL or MySQL on your computer. To get started with Vagrant, install the latest version of Vagrant and VirtualBox, and check out your fork of the project (see Getting Started).

Once your checkout is ready, type the following command into your terminal and our friendly setup assistant should take over from there on:

$ script/bootstrap

Once it is done, point your browser to hacken.local. All the files you change in your local folder are synced to the virtual machines, so you can work on right away. :wrench:

If you use filesystem encryption, you might receive an error similar to mount.nfs: mount to NFS server '.../' failed: timed out, giving up. In this case, edit the Vagrantfile and uncomment the line:

config.vm.synced_folder ".", "/opt/", type: 'rsync', rsync__args: ['-a']

Afterwards local code can to be re-synced to the VM via $ vagrant rsync-auto which you can run in the background.


If you run into any problems: Don't be afraid to tell us on Twitter or open a ticket.

Using Pow

  1. Fork the Project
  2. Check out your fork
  3. cd into the directory, install the bundler gem and run bundle install
  4. Now create a database configuration: cp config/database.yml_example config/database.yml
    • The example configuration requires PostgreSQL including a database and a user
    • More information on the database configuration
  5. Now run rake db:migrate db:seed to setup your database. You will now have an admin user admin@hacken.local with the password hacken_admin
  6. To run your application locally you can now use rails server
  7. Now visit http://localhost:3000 in your web browser and you are ready to go!


You can reach us on lots of ways. The most preferred one would be either to open an issue here or to use our Google Group. If you want to drink from the firehose (and see a lot of GIFs) join us in our Slack room. Just ping us on Twitter or send an email to and we will add you.


If you are in the project directory, you can start Guard with guard. This will offer you the following comfortable features:

  • Pow: Pow will get restarted automatically when necessary.
  • Bundler: Bundler will run, when the Gemfile changes server running
  • Specs: If you make changes to a spec or an application file, the according spec will be run and you will get feedback.

Testing is developed in a test-driven way using RSpec and FactoryGirl. If you want to contribute to the project always add tests for your added functionality. If you find a bug it would be really helpful if you add a regression test that displays this misbehavior. Even better: Fix it afterwards :wink:

About Contributing

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

See for details

Something went wrong with that request. Please try again.