## Inspiration

In today’s digital world, students arriving at college carry fewer belongings, knowing they can buy whatever they need, but buying new items all the time can be wasteful and expensive. They could borrow items or buy or get it free from someone local, but they don’t always have the time to meet in person to make the exchange.

Having lockers to facilitate this exchange is not a new concept, but how we use them is.

## What it does

Similar to Amazon Hub, we offer an IoT Smart Locker System that allows people to exchange items in a clean, secure, safe, and contactless way. Unlike what currently exists, we implemented 3 factor authentication to ensure that the right items go to their intended recipient.

Reservd allows people to find, rent, and unlock lockers at their convenience, without the hassle of a burdensome administrative process or without having to pre-determine the need or use and commit to a specific locker for a long period of time, we increase efficiencies and provide safe, clean, contactless pick-up options for recipients around the clock. And all you need is your phone to do all this.

## How we built it

We use React Native for the mobile interaction, Google Cloud Platform to facilitate triggered actions and object detection, and a lot of hardware to make the actual locker.

## Challenges we ran into

Time is the biggest challenge, and with spotty wifi, it slowed our progress further.

## Accomplishments that we're proud of

We made a working IoT smart locker!!!

## What we learned

With a background in React, we just picked React Native. For some of us, we had never worked with hardware, so we learned a lot about soldering and different tools needed to facilitate interactions. We also learned about designing endpoints.

## What's next for Reservd

Implementing blockchain for further security and on a campus or in a small community!
## Inspiration

While talking to Mitt from the CVS booth, he opened my eyes to a problem that I was previously unaware - counterfeits in the pharmaceutical industry. After a good amount of research, I learned that it was possible to make a solution during the hackathon. A friendly interface with a blockchain backend could track drugs immutably, and be able to track the item from factory to the consumer means safer prescription drugs for everyone.

## What it does

Using our app, users can scan the item, and use the provided passcode to make sure that item they have is legit. Using just the QR scanner on our app, it is very easy to verify the goods you bought, as well as the location the drugs were manufactured.

## How we built it

We started off wanting to ensure immutability for our users; after all, our whole platform is made for users to trust the items they scan. What came to our minds was using blockchain technology, which would allow us to ensure each and every item would remain immutable and publicly verifiable by any party. This way, users would know that the data we present is always true and legitimate. After building the blockchain technology with Node.js, we started working on the actual mobile platform. To create both iOS and Android versions simultaneously, we used AngularJS to create a shared codebase so we could easily adapt the app for both platforms. Although we didn't have any UI/UX experience, we tried to make the app as simple and user-friendly as possible. We incorporated Google Maps API to track and plot the location of where items are scanned to add that to our metadata and added native packages like QR code scanning and generation to make things easier for users to use. Although we weren't able to publish to the app stores, we tested our app using emulators to ensure all functionality worked as intended.

## Challenges we ran into

Our first challenge was learning how to build a blockchain ecosystem within a mobile app. Since the technology was somewhat foreign to us, we had to learn the in and outs of what "makes" a blockchain and how to ensure its immutability. After all, trust and security are our number one priorities and without them, our app was meaningless. In the end, we found a way to create this ecosystem and performed numerous unit tests to ensure it was up to industry standards. Another challenge we faced was getting the app to work in both iOS and Android environments. Since each platform had its set of "rules and standards", we had to make sure that our functions worked in both and that no errors were engendered from platform deviations.

## What's next for NativeChain

We hope to expand our target audience to secondhand commodities and the food industry. In today's society, markets such as eBay and Alibaba are flooded with counterfeit luxury goods such as clothing and apparel. When customers buy these goods from secondhand retailers on eBay, there's currently no way they can know for certain whether that item is legitimate as they claim; they solely rely on the seller's word. However, we hope to disrupt this and allow customers to immediately view where the item was manufactured and if it truly is from Gucci, rather than a counterfeit market in China. Another industry we hope to expand to is foods. People care about where the food they eat comes from, whether it's kosher and organic and non-GMO. Although the FDA regulates this to a certain extent, this data isn't easily accessible by customers. We want to provide a transparent and easy way to users to view the food they are eating by showing them data like where the honey was produced, where the cows were grown, and when their fruits were picked. Outbreaks such as the Chipotle Ecoli incident can be pinpointed as they can view where the incident started and to warn customers to not eat food coming from that area.
## 💫 Inspiration

Love online shopping, but tired of the deliveries arriving when you're not home? Or perhaps how you're continuously checking when you're package arrives, only to delay your plans out of worry? Lovers of Online shopping and E-commerce. We present to you, **pacs**.

## 😮 What **pacs** does

**pacs** is a unique storage solution with plans to open multiple facilities that have lockers of all shapes and sizes. Kind of like a community mailbox. As a shopper, you won’t have to put in your address. With our app, you’ll be able to see all your purchases using **pacs** in one convenient place where you can find your respective locker number and key code.

## 🔨 How we built it

We’re always trying to learn something new! For this app, we implemented an MVC (Model, View, Controller) application structure. For the view, we’ve decided to use React that communicates with a controller using Node.js and Express.js, which interacts with a model which is ProtoBuf for this web application. With this model, everything has been modularized and we’ve found it very easy to create endpoints and implement functionality with great ease.

## 😰 Challenges we ran into

* A major issue was to properly implement Protobuf particularly with an M1 Mac
* Some minor design challenges
* Furthermore, as the app scaled in the prototype, developing the front end React view was becoming increasingly heavier.

## 😤 Accomplishments that we're proud of

For each team member this was somewhat different! Rithik and Saqif researched and learned regarding protobuf and its syntax, so it was a wonderful learning experience. As for Shaiza she learned how to properly use ES6 and successfully parse data from JSON files! Despite the insane time crunch, we thoroughly enjoyed this experience.

## 🧠 What we learned

We learned…

* How to scale our idea for the prototype
* New tools and techniques
* How full-stack applications work
* An approach to modularize solutions

## 💙 What's next for **pacs**

Because there are so many moving parts in our application, there are several microservices that would require intercommunication. We would be working on the different microservices and ensuring that protobuf works efficiently between them. For example,
we may have an internal server that needs to fetch and store the utilization status of the many locker facilities. A location of 30 lockers may have 24 occupied and that information has to be relayed to the user. There may be other server applications that are dedicated for businesses like API testing
and communication which will also require microservices to generate unique IDs, access certain user information and more. We would be constructing these microservices and rigorously test the interactions. We would also migrate the services into the cloud. In addition, we can add important features such as Twilio, in order to incorporate SMS notifications, which we got to learn.