Other apps exist that estimate how long it takes to read a book, but they make the calculation based on an assumption that the average reading speed is 300 WPM. However, since reading speed can vary a lot depending on what you’re reading, it makes more sense to calculate it based on an average of individual responses rather than assuming a base speed of 300 WPM.
What it does
This application prototype stores a database of books along with the time it took each reader to finish them. A user can look up a book's average reading time (which is literally the average of all responses for a given book), add their own time to the database, or add a book if it is not currently in the database. Although we were not able to fully implement a lot of these features, the basic prototype is still there.
How we built it
Challenges we ran into
One of the biggest challenges was finding a way to link all of our pages together, given that we all had limited experience using React.js. Another challenge was we were all just learning React for the first time so it was challenging to find a way to create what we wanted while also finding out the method to accomplish it using React. Trying to use different environments for this project, such as VSCode and WebStorm, was also a challenge. We ran into issues with getting initially set-up, with trying to push and pull correctly, and merging with branches without losing all our work.
Accomplishments that we're proud of
It was a lot of fun (with some struggles) learning to use React.js, which offers so many possibilities. We are very proud of how we worked as a team, we were always understanding of each other, listened to each other’s ideas and everyone was willing to help if anyone ran into technical issues or was not sure how to do something. We were all very patient with each other and were always on the same page, which made the experience very fun.
What we learned
This was our first time using React and for some of us our first hackathon/first time using Git! We learned to use React Components, Bootstrap, Routers (well mainly Arjun, god bless his soul). All of these concepts combined, we were able to create a web application with multiple pages, each offering different functionality. We also learned how to manage a single project with multiple authors via GitHub by pushing onto our own branches, and merging everyone’s work in the end.
What's next for Average Reader
After nwHacks, there are ways we can improve our Average Reader App to include more functionality on the backend.