Inspiration
As a college student especially at Cal, where secondhand apparel and items are popular, I've frequented thrift stores and public markets for clothes and looked through Facebook marketplace for new furniture whenever I moved between apartments. I wanted to create something that would allow Cal students to buy and sell items at a reasonable price all in one place. BearHub does just that — it allows students to sell their old items and resources instead throwing them out, and has the trust of buying from/selling to another Cal student.
What it does
Main View The main view is the marketplace where students post their item listings. Each item falls under a specific category, and each category is collapsible so your main feed doesn't get to cluttered. It also consists of a balance specific to the user, which dictates how much the user can spend and whether they can buy an item at a listed price. Each item has a buy and save option, which gets recorded in the user's profile.
Content View After clicking on an item listing from the main view, the app takes the user to the content view, which states the specific information about that item, including the item name, price, and description. The content view also reveals the seller of the item and their information, including their name and description.
Profile View The profile view shows the profile of the user and includes their basic information, contact information, and a record of saved/ordered items.
How I built it
I first created a low-fidelity prototype of the app in Figma. Then, I used Swift to program the iOS app.
Challenges we ran into
One of the obstacles I had was to connect the different frontend view pages together. Originally, I thought to create a whole new view page for each item on the marketplace, but that would be too exhaustive. I figured out a way to make one view page that took in variables regarding a item Object and return a unique view page for said item.
Accomplishments that we're proud of
I'm proud of how I was able to connect the different frontend pages together and how I succeeded in setting the purchase limits with each updated balance. I also thought the like button animation was really cool! Overall, I'm really happy to have been able to create something from scratch about a topic that interests me.
What we learned
I got more comfortable with programming in Swift and using Xcode, especially with working the frontend.
What's next for BearHub
I would like to improve on my backend experience and find a way to incorporate a log-in page, buyer-seller chat function, and uploadable files (for the user profile picture, but this can go on to creating the seller's view of the app).