Team Power CoderspresentShelfControl
ShelfControl Demo Video
Your library in your pocket
We came up with the idea for ShelfControl because some of us have too many books and we now have no idea what we have. The most basic idea was to have a way of adding, storing and retrieving data easily for all the books you own. We then considered a friend component to the app where people could find other book lovers and talk about books etc.
The user is able to sign up or login to our react native app through an authentication process using Firebase Auth. The user must then verify their email address to be able to access the app. On login the user will be taken to the Home Screen showing a list of all their existing catalogues and a button to add a new catalogue. They can add books on the catalogue page using three methods: barcode scanner, search through Google API or manually add. All added catalogues and books are added to the Firebase cloud database and managed in realtime. The user can delete books and catalogues by holding down on the card and clicking delete. If the user clicks on a book card a page with more information is given. The user can go to their account page and edit the username, profile picture, privacy setting and email address. On the friend page the user can see friends and will have the option to chat, accept or decline friendship or see pending depending on whether both users have accepted the friendship request. On the chat function users can talk in realtime. This was done using the firebase cloud database. Users can search for new public friends and add them as friends. These users will then appear on the chat function with pending until the other user has accepted.
The Team
Elle Crawshaw
Aude Nguyen Duc
Jordan Hill
Ahmad Sardhaee
Arran Ugargol
Technologies
We used: Firebase, React Native, Expo
We knew from our spiking RATS phase that these would work well together and we were making a mobile application. All three offer additional libraries which we knew would be useful for extended features that we could use in the future. Expo allowed us to easily develop the app for both android and iOS platforms and made it easy to check and test in real time that the app was behaving as expected.
Challenges Faced
All the tech stack was new to us so there was a steep learning curve over the 2 weeks and we had to change the messaging app tech and there was a lot of trial and error til we found what worked.