RESTng: A framework for writing RESTful applications.

[ library, web ] [ Propose Tags ]

RESTng is still experimental and incomplete, but many implemented features may be of interest, including: grids for presentation, hierarchical URLs automatic handling, ORM generates tables from haskell records.


[Skip to Readme]
Versions 0.1
Dependencies base (<4), HDBC (<2.0.0), HDBC-postgresql (<2.0.0), mtl, old-time, parsec, redHandlers, xhtml, yuiGrid (==0.1) [details]
License LicenseRef-OtherLicense
Author RedNucleus (see AUTHORS)
Maintainer none
Category Web
Uploaded by SergioUrinovsky at Fri May 15 14:15:16 UTC 2009
Distributions NixOS:0.1
Downloads 592 total (11 in the last 30 days)
Rating (no votes yet) [estimated by rule of succession]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-10-25 [all 9 reports]
Hackage Matrix CI

Modules

  • RESTng
    • RESTng.Resources
    • RESTng.RqHandlers
    • RESTng.System

Downloads

Maintainer's Corner

For package maintainers and hackage trustees


Readme for RESTng-0.1

[back to package description]
RESTng: A framework for writing RESTful applications

It is experimental, incomplete and we are currently not actively developing it.
Anyway, there are several interesting features so we have decided to release them to share the ideas.


Features include:


Yahoo Grids:
The presentation uses the yuiGrid (grids defined by layout hints rendered with the yahoo grids).


Annotations: 
A resource can be annotated so that related information can be shown. The presentation of a resource to html is done by multiple annotations, each one possibly in different boxes with different layout hints.


Associations: 
Resource collections "has many" associations can be defined allowing:

  - Lookup functions in the Model for associated resources
  - Some annotations are available to be used like childComponent or parentComponent to list children resources or show the parent in separate boxes.
  - Hierarchical URLs are automatically handled in the control part. i.e.: 
          GET http://site/book/3/chapter/1    (get the chapter 1 of book with id 3)
          GET http://site/book/3/chapter/new  (get a form for filling data for the new chapter for book with id 3)
          POST http://site/book/3/chapter/new (create a new chapter for the book with id 3)
          and so on for updates, list and delete actions

  - Polymorphic associations are supported (i.e.: comment associated to books and also associated to authors).

ORM:
The ORM generates tables in the DB from the Haskell record type. Existing tables and attributes are kept and missing attributes are added.

Other features supported: 
  - Tags
  - Ratings
  - Comments
  - Users and login
  - CMS-like form fields validations.


Please send comments or questions to:
 - Tomas Nielsen <tanielsen@gmail.com>
 - Sergio Urinovsky <sergio.urinovsky@gmail.com>