/bookopolis

Book tracking app built with React.

Primary LanguageJavaScript

Bookopolis

Book tracking app built with React.

Live demo

You can use test@example.com and password 123456 to look around or just create your own account.

Getting Started

In order to setup and work on this project on your own, you will need to:

  1. Clone this project:
    git clone https://github.com/GDimitroff/bookopolis.git

  2. Once you have cloned this project, you can install the required dependencies by using:
    npm install

  3. A live demo of the project can be started by using:
    npm start

  4. Distribution files can be produced using:
    npm run build

Features

  • Landing login/register page.
  • Dynamically loaded book and profile(home) page.
  • Ability to toggle between GridView and List View.
  • Filtering books by grade.
  • Sorting books by name(asc, desc), popularity and the most read.
  • Ability to add/remove books to your own profile.
  • Ability to like/unlike books.
  • Tracking your overall progress.
  • Fully responsive.

Outcome

  • Deepened knowledge of using useEffect hook.
  • Deepened knowledge of using useCallback hook.
  • Learned how to work with multiple contexts and reducers.
  • Used react-router.
  • Used Firebase services for authentication and backend.
  • Protected routes.
  • Used global CSS styles in combination with styled components.
  • Used react-icons.
  • Used Framer Motion for animations and transitions.
  • Used react-toastify for notifications.
  • Tried to keep file structure as clean as possible.
  • Deepened knowledge of using third party libraries.
  • Learned a lot about Mobile-First design philosophy.
  • Overall, I have improved my React knowledge A LOT! šŸ§ 

Screenshots