https://github.com/hyperoslo/tasuku
Tasks for Ruby on Rails
https://github.com/hyperoslo/tasuku
Last synced: about 1 year ago
JSON representation
Tasks for Ruby on Rails
- Host: GitHub
- URL: https://github.com/hyperoslo/tasuku
- Owner: hyperoslo
- License: other
- Created: 2014-03-15T16:51:12.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2016-11-08T14:28:23.000Z (over 9 years ago)
- Last Synced: 2025-04-15T13:27:11.955Z (about 1 year ago)
- Language: Ruby
- Homepage: http://opensource.hyper.no/tasuku/
- Size: 5.72 MB
- Stars: 9
- Watchers: 12
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: MIT-LICENSE.md
Awesome Lists containing this project
README

[](https://rubygems.org/gems/tasuku)
[](https://travis-ci.org/hyperoslo/tasuku)
[](https://gemnasium.com/hyperoslo/tasuku)
[](https://codeclimate.com/github/hyperoslo/tasuku)
[](https://coveralls.io/r/hyperoslo/tasuku)
Tasuku is a framework for building tasks in Ruby on Rails. It ships with an array of tasks
ranging from reading articles to sharing photos. You can make your own tasks, too,
and we'd love for you to contribute if you do.
## Usage
Really it's up to you. Tasuku just supplies a [set of models](https://github.com/hyperoslo/tasuku/tree/master/app/models/tasuku/taskables)
that may be completed in various ways and you can go about doing that however you like. We sometimes organize
tasks in a `Course` model. Other times we use [Feeder](https://github.com/hyperoslo/feeder) to mix them
with other interesting things.

## Installation
Add this line to your application's Gemfile:
gem 'tasuku'
And then execute:
$ bundle
Install the gem:
$ rails generate tasuku:install
Run the migrations:
$ rake db:migrate
Then you can change the default configurations:
```ruby
# config/routes.rb
Rails.application.routes.draw do
mount Tasuku::Engine, at: '/tasks'
end
```
And finally the method to use in deriving the model instance that
solving tasks will attributed to. Typically this is a user of some kind,
but it could also be a group of users.
If you're using [Devise](https://github.com/plataformatec/devise) for authentication,
for example, you might have a method `current_user` that returns the right instance
of your `User` model:
```ruby
# config/initializers/tasuku.rb
Tasuku.configure do |config|
config.author = :current_user
end
```
### Views
Tasuku ships with views, but you can copy them to customize things to your liking:
```
$ rails generate tasuku:views
```
Tasuku defaults to using your application's layout, so you'll need to prefix your own route
helpers with `main_app` so Ruby on Rails knows where to look.
## Contributing
1. Fork it
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create new Pull Request
Note: Remember to create the test database under `spec/dummy`, using `bundle exec rake db:setup RAILS_ENV=test`
## Credits
Hyper made this. We're a digital communications agency with a passion for good code,
and if you're using this library we probably want to hire you.
## License
Tasuku is available under the MIT license. See the LICENSE file for more info.