Creating a Library Website

Events happening in the community are now at Drupal community events on www.drupal.org.
K4khan's picture

Hello All

We have been planning to create an extensive online library. I have been looking around in drupal for a couple of days and came across some modules and examples. But still I am wondering if there are specific modules that should be used!

I would like to elaborate our case as follows:
We aim not only to make a catalog of books [with all its specifications, Book Title, Author, Genre, Pages, Publishing Year, Edition, Publisher, Keywords] but also completing it with biographies of authors, book reviews and discussions.
1: Storing Books in Categories. Books will not only be stored in categories but also the ability to read books via a a reader [scribd or other viewers that works well with Drupal].
2: Linking the book[s] reviews and other articles related to book[s].
3: When you click on the name of a author, you will get a list [layout can be different] of his complete work and a short description of his biography [when you click on more you will get his complete biography].
4: When you click on the publisher, you will a get a list of books published by that specific publisher [of course limited to the books present in the website].
5: When you click on a genre [novel, history etc] you will get a complete list [the layout can be different] of books related to history.
6: There will be blocks where newly published books and most read books will be presented.
7: Books will be made available to download.

Any suggestion or advice is welcome.

I am looking forward to your help.
Seen

Comments

> 1: Storing Books in

dakke's picture

> 1: Storing Books in Categories. Books will not only be stored in categories but also the ability to read books via a a reader [scribd or other viewers that works well with Drupal].

I would either use custom controlled list or use taxonomy for that matter, use CCK to add those fields. Use the field to filter the books using views.

> 2: Linking the book[s] reviews and other articles related to book[s].

This can be done using the common 'node reference' field (extending the CCK core). Again, use views to show the 'related items'. You'll have to go with arguments to get the 'related items' list.
>

3: When you click on the name of a author, you will get a list [layout can be different] of his complete work and a short description of his biography [when you click on more you will get his complete biography].

Same as above, use author reference or node reference (depending on your content types). We achieved this on the following website (Dutch literature journal):
http://gierik-nvt.be/node/477
>

4: When you click on the publisher, you will a get a list of books published by that specific publisher [of course limited to the books present in the website].

Again, use a CCK field to filter, use arguments (cck value from URL) to show only those of a specific publisher. I would again recommend to create a content type for 'Publisher' and reference the publisher in the CCK field of the book.
>

5: When you click on a genre [novel, history etc] you will get a complete list [the layout can be different] of books related to history.

Same solution as categories, for genres is in fact some kind of category.
>

6: There will be blocks where newly published books and most read books will be presented.

That will be the easiest, using views and restrict items to max 10, filter most read (check the views options) or latest publised/modfied/...
>

7: Books will be made available to download.

Depending on what format, but simply add a file field to the content type 'book'.

In summary:
- make extensive use of node reference
- make use of CCK fields
- use the module 'Views' along with arguments (this might be somewhat complex/bewildering at first, but extremely powerful)
- split all up in content types (certainly books, publishers and authors). From what I gather, this seems to be reasonably easy. Not too much bells and whistles to get it done.

On a side note, I would definitely make use of standards such as MarcXML or other metadata standards, for it will make your life easier when exporting or creating RSS for whatever third party/institution out there.

Check OpenPublish as a test case. Maybe there are other packages, yet I have no clue which ones. I guess you could find library specific ones as well. But do check the community and the activity in these packages before.
There are also others soft packages out there that are 'tailored' towards libraries, however, I have no information on their usage, code base or even features. Be warry with those rather specific packages, for they often do not excel in speed, updates or flexibility.

Scalability and speed wise you could for Boost (http://drupal.org/project/boost), but you might as well optimize your views as such. But scalability and speed is not only slightly more complex, it also depends on your host.

Anyway, good luck and let me know if you need more help on the subject.

Cheers,

D

Libraries

Group organizers

Group categories

Resources

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: