Skip to content

This project is a capstone based on the idea of taking notes on books after reading them. The goal is to create a web application that allows users to store information about the books they've read, including notes, ratings, and more. The project also integrates with public APIs to fetch book covers and other relevant data.

Notifications You must be signed in to change notification settings

Adesh-111/Book-notes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Book Notes - A CRUD Application

Overview

This project is a capstone based on the idea of taking notes on books after reading them. The goal is to create a web application that allows users to store information about the books they've read, including notes, ratings, and more. The project also integrates with public APIs to fetch book covers and other relevant data.

Objectives

  • Integrate public APIs into web projects.
  • Gain experience using Express/Node.js for server-side programming.
  • Demonstrate CRUD operations in a PostgreSQL Database to persist data.

Example Ideas

  • Use the Open Library Covers API to fetch book covers.
  • Create a PostgreSQL database to store book information.
  • Implement CRUD operations to manage book entries.
  • Display book information on a website similar to Derek Sivers' book page.
  • Allow users to sort book entries by rating and recency.

Requirements

  1. Database Persistance

    • Persist data using a PostgreSQL database.
    • Use CRUD methods to manipulate data in the database.
  2. Project Planning

    • Research API documentation and project features.
    • Create a database diagram to plan relationships.
    • Plan PostgreSQL schema.
  3. Project Setup

    • Set up a Node.js project using Express.js.
    • Include pg and EJS.
    • Create structured directory and file organization.
  4. API Integration

    • Implement GET endpoint to interact with chosen API.
    • Use Axios to send HTTP requests to the API.
  5. Data Presentation

    • Design user-friendly presentation of book data.
    • Use HTML, CSS, and EJS for templating.
    • Implement sorting functionality.
  6. Error Handling

    • Implement error handling for application and API requests.
  7. Documentation

    • Include comments throughout code.
    • Write README.md with project setup instructions.
  8. Code Sharing

    • Commit and push project to GitHub.
    • Include instructions for running the code in README.md.

OUTPUT IMAGES

image

image

image

image

image

Recommended Resources

Installation and Usage

How to Run

  1. Clone the repository to your local machine.
  2. Navigate to the project directory in your terminal.
  3. Run npm install to install dependencies.
  4. Start the server by running nodemon index.js.
  5. Open your web browser and navigate to http://localhost:3000 to access the application.

Author

Adesh D

About

This project is a capstone based on the idea of taking notes on books after reading them. The goal is to create a web application that allows users to store information about the books they've read, including notes, ratings, and more. The project also integrates with public APIs to fetch book covers and other relevant data.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published