Skip to content

Bookreads is social media and it's all about books. This is a place to find your next book to read. Any user can create books, review books, create posts, rate books, comment on posts and be an author.

License

Notifications You must be signed in to change notification settings

ZahariCheyrekov/bookreads

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

Bookreads

You can visit the project from here: https://bookreads-eaeec.web.app

Project Idea

The project idea was inspired by Goodreads.

Table of Contents

About this project

Bookreads is social media and it's all about books. This is a place to find your next book to read. Any user can create books, review books, create posts, rate books, comment on posts and be an author.

How to run the app on your computer

  1. You can download the project ZIP file or you can clone the repository directly.
  2. Open the project with IDE/Code Editor.
  3. Open terminal with Ctrl + J.
  4. Navigate to bookreads folder with cd bookreads.
  5. Then navigate to client folder with cd client.
  6. Type npm i to install all modules that are listed on package.json file and their dependencies.
  7. Type npm start to run the project in the browser. It will start on http://localhost:3000, but you can change it to another if necessary. Type y to do it.
  8. Explore Bookreads.
  9. Meet your next book and share what you think with other users.

Features

  • Authentication

    • Login

      • log in with existing account
    • Register

      • create new account
  • Book

    • User

      • browse books
      • search books by title
      • search books by genre
      • view books
      • create new book
      • rate book
      • edit book (creator)
      • delete book (creator)
    • Guest

      • browse books
      • search books by title
      • search books by genre
      • view books
  • Review

    • User

      • browse book reviews
      • create review
      • comment on review
      • like review
      • edit review (creator)
      • delete review (creator)
    • Guest

      • browse book reviews
  • Post

    • Author

      • view post
      • read post
      • create post
      • delete post
      • comment on post
    • User

      • view post
      • read post
      • like post
      • comment on post
  • Like

    • browse post likes
    • search user by like of a post
  • Search

    • search post
    • search book by title
    • search book by genre
  • Profile

    • Author

      • view publications
      • comment on publications
      • edit profile picture
      • delete publication/s
    • User

      • view user publications
      • like user publications
      • comment on user publications
      • read user post review
      • find user book rating

Future Features

  • Connections

    • Followers

      • follow user
      • unfollow user
      • block user
      • unblock user
    • Following

      • see who follows use
      • remove user from followers
      • block user
      • unblock user
  • Chat

    • send message to Bookreads user
  • Discussions

    • start discussion
    • invite users to discussion
  • Giveaway

    • create book giveaway
    • enter giveaway
    • invite to giveaway

Project Structure

  • Client

    • api - for all of the project api requests
    • assets - for project assets
    • components - all of the components used in multiple places
    • constants - all of the project constant variables
    • contexts - all of the project contexts
    • features - all of the project features (authentication, books, genres and profile)
    • hooks - all of the custom hooks
    • layouts - for every partial code used by many components
    • lib - for 3rd party libraries and their configuration files
    • pages - for all of the application pages that does not store complicated logic
    • services - for each application service and its requests
    • utils - that contains functions used in multiple files
    • validation - stores validation functions
  • Server

    • config - configuring the application
    • constants - all of the project constant variables
    • controllers - folder, where we can separate the route and the controller function
    • models - stores database schemas
    • routes - contains various application routes

Tools

Application Pictures

Desktop

bookreads-home-guest

bookreads-signin

bookreads-signup

bookreads-home-user

bookreads-book-details-review

bookreads-book-details-more

bookreads-profile

bookreads-shelves

bookreads-genres

Mobile

bookreads-mobile-home-guest

bookreads-mobile-signin

bookreads-mobile-signup

bookreads-mobile-home-user

bookreads-book-details

bookreads-profile

bookreads-profile-shelves

bookreads-genres

bookreads-sidenav

bookreads-genres-search

About

Bookreads is social media and it's all about books. This is a place to find your next book to read. Any user can create books, review books, create posts, rate books, comment on posts and be an author.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published