6.0.0-git
2024-04-20

Diff for Project/Groo between 5 and 6

+ About Groo



Groo is written in PHP 5.1 with Horde 3.1. 



The code can be found in the Horde CVS: http://cvs.horde.org/incubator/groo/



You can see Groo running here: http://wanderingbooks.org



++ HIgh-level use cases



At a minimum, Groo should allow a user to:



* catalog her books, by typing ISBNs or scanning barcodes

* invite friends who will have access to her books

* ask to borrow a book

* approve lending of a book



After the basics are done, we also want our user to be able to:

* search, tag, comment, recommend and rate books in her collective catalog

* get e-mail remembering to return a book, or to ask for a book which is overdue

* arrange the exchange of books, either setting up meetings or scheduling drops



++ Basic entities



The main entities in the Groo system are **Users**, **Books** and **Items**. Users are basically managed and stored by the Horde infrastructure.



+++ Books x Items



What we call a Book in Groo is not a physical object, but rather a certain edition of a work, such as "PHP in a Nutshell, ISBN: 0596100671". An Item is a particular physical instance or exemplar of a Book, such as my own copy of "PHP in a Nutshell". Eventually Items will also refer to DVDs, LPs, CDs.



So Groo has a public database of Books, and private collections of Items, which are the user's book collections. The collections are implemented as Horde shares.