Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/maxpatiiuk/goodreads-stats
Goodreads extension that adds data export capability and displays extensive analytics about your reading habits
https://github.com/maxpatiiuk/goodreads-stats
books goodreads react search stats
Last synced: 21 days ago
JSON representation
Goodreads extension that adds data export capability and displays extensive analytics about your reading habits
- Host: GitHub
- URL: https://github.com/maxpatiiuk/goodreads-stats
- Owner: maxpatiiuk
- License: mit
- Created: 2023-04-19T18:14:19.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-12-03T22:10:36.000Z (about 1 year ago)
- Last Synced: 2024-10-31T09:12:23.448Z (2 months ago)
- Topics: books, goodreads, react, search, stats
- Language: TypeScript
- Homepage: https://chromewebstore.google.com/detail/goodreads-stats/hdpkeldenopncgodhpjdlpngmnaijpjf
- Size: 5.31 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Goodreads Plus
[A browser extension for Goodreads](https://chrome.google.com/webstore/detail/goodreads-stats/hdpkeldenopncgodhpjdlpngmnaijpjf) that adds data export capability and
displays extensive analytics about your reading habits.[Add to Chrome](https://chrome.google.com/webstore/detail/goodreads-stats/hdpkeldenopncgodhpjdlpngmnaijpjf)
[Video Demo](https://www.youtube.com/watch?v=f3w99Y45668)
[Report a bug/feature request](https://github.com/maxpatiiuk/goodreads-stats/issues/new/choose)
Also, check out
my [Calendar Plus](https://chrome.google.com/webstore/detail/calendar-plus/kgbbebdcmdgkbopcffmpgkgcmcoomhmh)
extension for Google Calendar power users.## Features
- Export entire library
- Compare reading rates between years
- Show insights about your favorite books
- Search your entire book libraryCan compare reading rate between the years
[![](./docs/img/year-by-year.jpg)](https://www.youtube.com/watch?v=f3w99Y45668)Can see how long it took to read each book
[![](./docs/img/single-year.jpg)](https://www.youtube.com/watch?v=f3w99Y45668)Can get an extensive breakdown and insights
[![](./docs/img/analytics.jpg)](https://www.youtube.com/watch?v=f3w99Y45668)Can search and filter your entire library
[![](./docs/img/search-and-sort.jpg)](https://www.youtube.com/watch?v=f3w99Y45668)Can download entire library or a single shelf
[![](./docs/img/download.jpg)](https://www.youtube.com/watch?v=f3w99Y45668)## Installation
Pre-requisites:
```
Node.js 18
Npm 8
```(Run all commands from the /src directory)
Install dependencies:```sh
npm install
```## Running
Build the front-end for production:
```sh
npm run build
```## Development
Start the watcher script which would rebuild the code on any changes:
```sh
npm run watch
```Load unpacked extension into Chrome by [following the
instructions](https://webkul.com/blog/how-to-install-the-unpacked-extension-in-chrome/).Note, on any code change, you will have to press the `Reload Extension` button
in the top left corner of Google Calendar in order to see the newest changes.## React DevTools
You may have noticed that despite our app being built with React,
React DevTools browser extension does not work for debugging it.Instead, a standalone React DevTools (an Electron app) needs to be
used. [Installation
Instructions](https://github.com/facebook/react/tree/main/packages/react-devtools#installation),Note, this will only work for when WebPack is run in development mode
as we disabled react DevTools integration in production to reduce
bundle size.## Testing
Unit tests are powered by Jest. Static Typechecking is powered by TypeScript.
You can run both like this:
```sh
npm test
```or:
```sh
npm t
```Alternatively, you can start Jest in watch mode:
```
npm run unitTests:watch
```## Generating Docs
```
cd src
npx typedoc --out docs src
```