Inspiration
As CS majors, we constantly are looking at screens, so we all find joy in unplugging and reading a nice book. However, we usually run into two issues. One, we buy a book, read it once, and then the book languishes on our bookshelf, forming clutter. Two, we want to read books that our friends and peers have read, but that information is not easily accessible. Being able to trade books with nearby students at UCLA with common interests is an ideal way to declutter and find new books to make the most of our downtime!
What it does
After creating an account, users can add a list of books they own and are ready to trade with others, entering the book title, author, and condition. Then, the user can also browse a list of books nearby, which also shows the number of available copies of the book. Upon clicking on a book, the user can see another list of the users that own the book with the corresponding condition of each copy. There is a chat button for each other user with the wanted book, so that the user can contact the other user to meet up and trade books if they are interested.
How we built it
Initially, our team hopped onto Figma to design the different screens that our app would contain and also decide what features would be needed to complete our MVP, the tech stack, database schemas, etc. Then, our team built the mobile app using React Native as the frontend and Firestore as the database.
Challenges we ran into
We are all fairly new to React Native, which was simultaneously the basis of all our challenges and the source of all the fun. For the frontend, we had trouble implementing our custom styling and making sure it flows throughout the app. With regards to the backend, most of our issues revolved around connecting Firebase to React Native. We ended up doing a lot of nested asynchronous calls to our database. Dealing with asynchronous programming and the react lifecycle was our largest issue, and while we spent quite some time trying to debug it, this challenge was also one of the most rewarding experiences of this hackathon.
Accomplishments that we're proud of
Given our limited experience and time, we are all very proud to have a completed, working app with a fully functional frontend and backend. We are very proud to say that none of our data is hardcoded.
What we learned
Some of us had our first experience with React Native, and some of us had our first experience with Firebase. Overall, it was a great learning experience for everyone on the team, as we were able to strengthen our technical skills, as well as help each other gain new experience in frameworks and technologies that we have never used before.
What's next for Book Beans
In the future, we would implement more security around our login page as well as finish implementing the chat feature, which we planned on creating but didn’t finish in time. To fully bring the app to its full potential, we’ll eventually implement a “Trade Confirmation” feature that allows students to confirm they are trading books. This will update the user database accordingly. Additionally, our business model could potentially expand to create a secure shipping facility for people to send their books to in order to swap with other people.

Log in or sign up for Devpost to join the conversation.