./README.md in rack-scaffold-0.0.3 vs ./README.md in rack-scaffold-0.1.0
- old
+ new
@@ -1,9 +1,9 @@
# Rack::Scaffold
**Automatically generate RESTful CRUD services**
-> This project generalizes the webservice auto-generation functionality of [Rack::CoreData](https://github.com/mattt/rack-core-data) with a plugin architecture that can adapt to any data model format. It is currently being actively developed for inclusion in the next release of [Helios](https://github.com/helios-framework/helios)
+> This project generalizes the webservice auto-generation functionality of [Rack::CoreData](https://github.com/mattt/rack-core-data) with a plugin architecture that can adapt to any data model format. It is currently used in the latest release of [Helios](https://github.com/helios-framework/helios)
### Supported Data Models
- [Core Data Model](https://github.com/mattt/core_data/) (`.xcdatamodeld`)
- [Sequel](https://github.com/jeremyevans/sequel)
@@ -11,14 +11,15 @@
## Usage
### Gemfile
-```Ruby
+```ruby
source :rubygems
gem 'rack-scaffold', require: 'rack/scaffold'
+
gem 'sequel'
gem 'core_data'
gem 'unicorn'
gem 'pg'
@@ -33,9 +34,19 @@
DB = Sequel.connect(ENV['DATABASE_URL'])
run Rack::Scaffold model: './Example.xcdatamodeld', only: [:create, :read]
```
+
+## Available Actions
+
+By default, `Rack::Scaffold` will enable all of the actions described below. Actions can be whitelisted or blacklisted by passing either the `only` or `except` options, respectively.
+
+- `create` (`POST /resources`): Creates a new resource with the fields in a `www-form-urlencoded` or `application/json` encoded HTTP request body.
+- `read` (`GET /resources` & `GET /resources/123`): Reads a collection of resources or an individual resource at the specified URI. Supports pagination by passing either `page` & `per_page` or `limit` & `offset` parameters.
+- `update` (`PUT` OR `PATCH /resources/123`): Updates the specified resource with the fields in a `www-form-urlencoded` or `application/json` encoded HTTP request body.
+- `delete` (`DELETE /resources/123`): Deletes the specified resource.
+- `susbscribe` (`SUBSCRIBE` or `GET /resources` with `Accept: text/event-stream`): Subscribes to create, update, and delete actions performed, streaming corresponding JSON Patch diffs. You can read more about the Rocket technique for streaming REST resources at http://rocket.github.io.
## Examples
An example web API using a Core Data model can be found the `/example` directory.