Timeflux is an hour reporting tool built around a normal workflow for a consultant company.
Users register worked hours on activities. For each month they also need to confirm that they are finished registering hours. Registrations on the vacation activity are publicly visible to all users in the vacation view.
Admins manage the activities a user can register on. Activities belong to a project, and projects belong to a customer. At the end of a month admins can view an overview over users to check that all registrations for the month are complete. They can then move on to the billing report where invoices are generated.
For users:
- Simple hour registration
- Month overview
- Public vacation overview
For admins:
- Billing, user, companies and project reports
- Simple and advanced search
- Tagging of activities (for grouping purposes)
- Easy management of project assignments
- Easy management of project activities by templates
On Ubuntu linux:
- Install git: sudo apt-get install git-core
- Install ruby: sudo apt-get install ruby-full build-essential
- Install Rubygems
- Download latest version of rubygems from rubyforge (http://rubyforge.org/frs/?group_id=126)
- Decompress into suitable directory and, in same directory, execute command: ruby setup.rb
- Create softlink: sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
- Verify installation: gem -v
- Install sqlite3 as your development database: sudo apt-get install sqlite3 libsqlite3-dev
- Install rails++: sudo gem install rails rake sqlite3-ruby prawn
- Clone the code from GitHub
- Install required dependencies (cd to TimeFlux root-directory): sudo rake gems:install
- Install test dependencies: sudo rake gems:install RAILS_ENV=test
Before testing Timeflux you need to:
- Load initial data: rake db:setup
- Start the server: ruby script/server
- Go to url http://localhost:3000
The seeded data contains two users:
- user=admin, password=admin
- user=user, password=user