We wanted to provide a solution for users to search for books, and curate their own collection of books, complete with their thoughts and reviews on each book, to make reading books more rewarding.
- Login and Signup with email.
- Search for books in Google Books' extensive library.
- Add books to your own collection.
- Record your reading progress for each book.
- Annotate your thoughts for each book.
- React Native
- Firebase (for authentication and user book collection)
- Google Books API
- Unit Testing: during every stage of development, all components were tested individually before pushing to Github.
- System Testing: after a working prototype was ready, we tested the whole app in its entirety to ensure all moving parts interact well with each other.
- Fuzz Testing: any functionality that involves taking in input was tested with invalid inputs to test error handling .
You used to be an avid reader as a kid, but now, staring at a page for more than 5 minutes feels like a chore. There are just better, more gratifying things to do with your very limited time now, like social media, Netflix, and anime. But what if there was a way to fuel an intrinsic need to finish that one novel you could never get through? What if this was the book that reignites your long-lost love for reading?
Losing interest in reading is far too common as we enter adulthood. We miss out on the numerous psychological benefits of reading, as well as its sheer joy. While many of us want to start reading again, we simply lack the drive to begin. Research shows that friends can play a major role in making us go to the gym more often (even when it feels like a chore, just like reading). Be it through inspiration or competitiveness, we want to make a platform for everyone to start reading together.
Aim
We want to make a reading tracker where users can enjoy reading with others, share book reviews and thoughts, and feel rewarded for it.
User Stories
Users can also start a book from the database(possibly using Google Books API) or input their own custom titles and record their progress in terms of number of pages. Users can record and save their annotations and thoughts at different pages. Users can add other users and track their progress (eg. daily number of pages read, All-time number of titles read, number of pages for a particular title/series) in comparison with others. Users can write book reviews, discuss fan theories etc. in forums or on their personal profile. They can also leave ratings out of 5 for the titles they have finished from them to keep track Badges/Points/Achievements for reading more/giving more reviews and for different levels of reading achievement (eg. First book read with over 500 pages, Over 200 titles read, Over 100 posts made on forums) People can keep track of the books they have read and a map of the different genres and books they have read can be generated for reference. Recommendations based on genres you’ve read before and user ratings. Users can share their progress and reviews on other platforms like Instagram, Twitter and Telegram.
Features and Timeline
The Book Journal will allow Users to save their titles and annotations for books, as well as their reviews and ratings.
A Profile Page will share a common database with the Book Journal. It provides the User with an overview of their progress and achievements.
Features to be completed by the mid of July:
-
Book Journal Allow users to save their annotations and custom titles Retrieve and display titles and associated annotations Calculate and display collective user rating of titles
-
Profile Page Retrieve and display current title and progress Retrieve and display total number of titles read Display user information like username and profile picture
Features to be completed by the end of July:
-
Achievements system Reward users with badges for crossing reading milestones, engaging in posts etc.
-
Generate user’s map of titles and genres as pie-charts for them to view and share. Generate a pie-chart for to capture data visually Enable cross-platform sharing of progress via custom images or text Display recommendations based on top genres and top user ratings
-
Profile Page Retrieve and display user’s friends’ profiles Display side-by-side comparison with user’s friends’ progress
Tech Stack
- CSS/Javascript
- Python
- Firebase
- React.js
- Google books API/NLB Catalogue API