A web app to collect and manage your books with Model-View-Controller (MVC) architecture.
- Add a book to your collection manually or through search
- Save to your Reading List, Books Read, Favorites or to My Library for books you own
- Edit book information
- Delete books from your shelf
- Session auth: create an account and sign in to manage your book collection
- JavaScript
- Node.js
- Express.js
- EJS (Embedded JavaScript)
- MongoDB + Mongoose
- Open Library API
- Book Search API
- Authors API
- Covers API for images
- Create a full-stack application using Node.js, Express, EJS, and MongoDB.
- The application will center around a resource or schema of your choosing with full Create, Read, Update, and Delete (CRUD) functionalities.
- Define how this data will be structured in a Mongoose Schema. You need to consider what properties your resource will have and what data types these properties will be.
Your completed application should have the following RESTful routes:
| HTTP Method | Route | Action | Description |
|---|---|---|---|
| GET | /plants | Index | Displays a list of all plants |
| GET | /plants/new | New | Shows a form to create a new plant |
| POST | /plants | Create | Creates a new plant |
| GET | /plants/:id | Show | Displays a specific plant by its ID |
| GET | /plants/:id/edit | Edit | Shows a form to edit an existing plant |
| PUT | /plants/:id | Update | Updates a specific plant by its ID |
| DELETE | /plants/:id | Destroy | Deletes a specific plant by its ID |