After years of accumulating old textbooks, we decided enough was enough. We knew that there was a better textbook buying/selling experience out there and we wanted to create it.

What it does

OGBooks allows sellers to painlessly post their books in our Facebook group to sell to users of our iOS application. Sellers can even just post a photo of their book and a price tag, and our book-finding algorithm will do the rest!

Buyers simply sign in to our iOS app and search for the books they want, based on things such as their current courses, the book's title, etc.

How we built it

To start, we built a back-end Facebook scraper using Facebook's Graph API, Node.js, and mysql. This scraper intelligently reads new information from the Facebook group and after parsing it, decides whether or not to fill in the book's remaining information with a computer vision search. After we gather all of the book's metadata, we then store it on our database, and expose our data through an easy to use API, which our front-end application makes use of.

Our front-end calls our API's routes in order to populate itself (the iOS app) with new book information, for the buyers to utilize. This piece of our application makes use of Swift and XCode.

Challenges we ran into

We ran into a lot of challenges, but enjoyed solving each and every one of them. The first challenge we ran into was figuring out how to expose Facebook's Graph API for easy use, and eventually was able to get all of the information from our group page's feed that we needed.

The next challenge we ran into was figuring out how to fill in empty book information, that would be a hassle for the user to enter, such as an ISBN number. To solve this, we developed an algorithm that uses Cloud Sight and Google Books to fill in this information.

Accomplishments that we're proud of

We are extremely proud of being able to gather almost all of a textbook's data with only a photo of its cover.

What we learned

We learned A LOT about Javascript server-side programming in Node.js, and ECMAScript 6 syntax, such as Promises.

The front-end team learned that there are many benefits of programmatically generating iOS views and though it takes a lot of time and care, once you get good at it it makes your workflow much more enjoyable.

What's next for OG Gator Books

Next we are going to clean up our code-base and make our application even easier to use for the user. We will do this by requiring even less information from the seller and intelligently filling it out to the best we possibly can. Additionally, we are going to implement an image verification system that can decide whether or not a user is submitting an image of a book, and if not, it would report an error and remove the post.

Share this project: