This chapter marks the beginning of step-by-step development of a complete and useful Rails application. If you are familiar with the Web development market, you know that most of the hottest applications being developed today feature some sort of social aspect. The option for users to provide content and interact with other users is a key component of what is usually referred to as a Web 2.0 application. The application you can write by following along in this chapter fits in nicely with the Web 2.0 paradigm.
This application will allow groups to create an online catalog of books. Using the application, users can add books, share book reviews, share book ratings, and organize the books using tags. Book Shelf, as I've named this application, could be used by a user group, a community group, a school, a local library, a workplace, or just about any group of people that have some interest in books.
You will develop Book Shelf using an iterative process in which you will design a feature and then code that feature. This process is repeated until all of the required features of the application have been implemented. In this chapter, you will put in place the basic framework of the application and implement a user model with authentication so that a user is able to log in to and out of the application. The development continues in the next two chapters.
I strongly encourage you to follow along with the development of the application ...