Inspiration

After browsing textbooks online and hearing friends complain about how expensive college textbooks are, I decided to create a platform dedicated specifically to buying/selling textbooks. Though textbook buy/sell groups exist on Facebook, they have several drawbacks, the most significant of which is that old posts get "buried" and ignored after many new other books are posted. Many college students do not have a lot of free time nor a lot of money -- my app will make searching for textbooks a lot faster.

What it does

Students first make an account, or log in through Facebook/Google. From there, they can either buy textbooks, or browse textbook listings from other users near them. When posting their own listings, they will need to input the title, author, edition, condition, and price of the book, along with a photo of the book and their own contact information. If buyers see a book they're interested in, they can contact the seller. Money is not exchanged through the app, so the prices are negotiable.

How I built it

The entire project is coded in Swift using the Xcode IDE. I used Firebase Database/Storage API to store all user data, and UserDefaults to keep users logged in after they close the app. I organized the Firebase tree so that users can only see listings from other users with the same zipcode. All photos are stored online and later retrieved from Firebase.

Challenges I ran into

At first, I had no idea where or how to start. I also wanted to implement a private messaging feature but later scrapped the idea in favor of a more convenient option, where sellers can just post their most convenient form of contact in the "Contact info" field.

Accomplishments that I'm proud of

It was very challenging to get the Search Bar to work -- at first my app kept crashing! But at the end, after going through many online tutorials and consulting StackOverflow, it was fully functional. I also like the fact that users can only see listings from the same zip code as them.

What I learned

My app became a lot less daunting after I wrote out a plan and broke down each part thoroughly. I learned that I should break steps down first instead of trying to tackle the whole project at once. I also learned how invaluable Google and StackOverflow are.

What's next for UBookIt

  • Implementing a private messaging feature
  • A better flagging/reporting system
  • Use Google Maps to view other users near you
  • Allow users to request book price changes

Built With

Share this project:

Updates