Plibrary
Plibrary is an lightweight book-tracking web application which uses localStorage to preserve data
Install / Use
/learn @0xabdulkhaliq/PlibraryREADME
Installation
Note
For those that would like to run the application and/or edit its source code on their local computer, follow the steps below:
- Clone the repository with
git clone https://github.com/0xabdulkhalid/plibraryor download it as a.zipfile and extract it. - Navigate to where the repository is saved on your local machine and open up its
index.htmlfile on your preferred web browser.
Usage
- To add a book to your library, click on the "Add Book" button in order to open up a modal
- Fill up the form within such, inputting data related to the book that you'd like to track
- After clicking save, you should then see the book appear in your library.
- Then you can mark it as read or unread, and to delete from book-tracking.
Preview
| Desktop | | :-------------: | | <img src='./assets/designs/desktop.png' alt='desktop preview'> |
| Tablet | Mobile |
| :-----: | :-----: |
| <img src='./assets/designs/tablet.png' width='580px' alt='tablet preview'> |
|
Outcome
- Used HTML5 semantic elements for better accessability and readability
- Saves user's books in local storage which helps to retrive after refresh
- Comes with lightweight User Interface with friendly User Experience
- Site was built responsive via Mobile first workflow
- Cross tested on Firefox and Chromium based browsers
What I learned
- Usage of checkbox's :checked property to achieve form's pop-out without javascript need
- Effectively utilized the usage of ES6's classes which helps to write less lines of code (instead of Prototyping in Js)
- Quick hack of static declaration for class's methods to call it without initialization of object
- Utilization of localStorage mechanism of Web Storage
- A lot of minor things
Built With
Tools Used
Contributing
Feel free to submit an issue should a bug be found using the application. One is also welcome to make a pull request should they seek to make a major change or introduce a new feature.
<br>License
- MIT License
- Copyright © 2023 - 0xabdulkhalid
Contact
<div align=center> <a href="https://www.0xabdulkhalid.ml"> <img src="https://img.shields.io/badge/website-414751?style=for-the-badge&logo=About.me&logoColor=CDC2BC" alt="Website"> </a> <a href="https://linkedin.com/in/0xabdulkhalid" target="_blank"> <img src="https://img.shields.io/badge/linkedin-%2300acee.svg?color=405DE6&style=for-the-badge&logo=linkedin&logoColor=white" alt=Linkedin> </a> </div> <br>Related Skills
node-connect
351.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
110.6kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
351.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
351.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
