bezelga / bulldoggy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Bulldoggy

Build Status Code Climate

A to-do list app inspired by Uncle Bob's Clean Architecture.

The idea of is to have a concrete implementation of the architecture and use various deliveries mechanisms and storages that will act as plugins to the core app.

Implementations of the delivery mechanisms are welcome and will be listed here:

Web as the delivery mechanism:

CLI (command line interface) as the delivery mechanism:

Installation

Add this line to your application's Gemfile:

gem 'bulldoggy', '~> 0.0.1.alpha'

And then execute:

$ bundle

Or install it yourself as:

$ gem install bulldoggy --pre

Usage

Adding tasks:

task = Bulldoggy.add_task('go to the cinema')

Checking tasks:

Bulldoggy.check_task(task.id)

Unchecking tasks:

Bulldoggy.uncheck_task(task.id)

Removing tasks:

Bulldoggy.remove(task.id)

Fetching tasks:

Bulldoggy.fetch

Usage with Rails:

Connecting entities to ActiveRecord models

Inside your Rails app, create an initializer and register your repository adapters to make it work with Rails AR models.

config/initializers/bulldoggy.rb:

Bulldoggy::Repository.register :task, TasksRespositoryAdapter.new

TODO: add repository adapter example

About

License:MIT License


Languages

Language:Ruby 100.0%