Skip to content

abrormukimov/abrormukimov.github.io

Repository files navigation

R Lib

Contributors Forks Stargazers Issues


Microverse Logo

R Lib Application

This project is part of the Microverse curriculum in JavaScript course!
Explore the docs »
View Live
Report Bug Request Feature

This is a small Library application where the user can add or remove books, edit their author, title, number of pages and toggle a 'Have Read' switch


Application Screen Shot

the homepage


Table of Contents

About The Project

The project uses two main classes, Library and Book.
The Library class holds an array of Books, manages the additions and deletions of Books, provides information about the total number of Books and the number of Books being read, supplies new IDs for new Books, and stores its data in localStorage.
The Book class holds information about a Book, which is the author, the title, the number of pages, and a status denoting if the book has been read.
The application's interface is a single view showing a scrolling table of all Books in the storage, a button at the top-right to add new books, a home button at the top-left (usefull when all books are deleted, to re-initialise the library) and an instruction note at the footer to inform the user how to add new Books.
Each Book entry in the table shows the Book's data and a trash button to delete the relevant book.

The main control of the application is performed in main.js file.
The Library and Book classes are implemented in library.js file.
The rendering of elements is supported by the bookPanelElements.js file.
Two shorthand commands for creating and accessing elements are used and are held in syntax.js file.
An initial population is performed when the Library is empty of Books by data held in seed.js.


Application Instructions

  • Initially, the Library is filled with some data held in the seed.js file

  • The user can click the add button at the top-right and an entry of the new book is added at the bottom of the table prompting to enter its first field - the author's name

  • Then, by clicking each of the rest of the fields can edit its title and number of pages and declare if the book has been read

  • A trash button is available to remove each book after confirmation

  • Since the persistence of data is achieved using the localStorage, all the data inserted or edited are available only on the computer and the particular browser which have been used.

  • Text fields can not be left blank.


Live Version

View Live


System Requierments

  • JavaScript Enabled

Development

  • Clone the project
  https://github.com/ioanniskousis/Librarian.git
  
  Use VSCode and Live Server to show index.html

Built With

This project was built using these technologies.

  • JavaScript (ES6)
  • HTML5
  • CSS3
  • Git - GitHub
  • ESLint
  • Stylelint
  • Stickler

Contributors

👤 ​

Ioannis Kousis


Acknowledgements

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published