I was inspired by companies like Uber that took daily services to a more personal level. Not only did they make it easier for us to get access to these services, but they also allow us to get involved in the services themselves. Becoming an uber driver, for example, is a very accessible way to make some extra money. I thought it was about time to extend this functionality to everyone's favorite service: food delivery.
What it does
After you sign into your app using a username and password to authenticate your account, you will be taken to a map screen. Using your current location, the app creates a list of restaurants near you. You can either place an order to be delivered to you from one of these restaurants, or choose to deliver someone else's order. To place an order, you simply select the restaurant you want to order from and select the menu items you would like. Each order includes a delivery fee which is paid to the deliverer, resulting in a fast, accessible way to get food delivered and a low commitment source of some extra income.
How I built it
I used redis to create a database to store information about restaurants and customers. To make this information accessible by multiple devices, I used linode cloud servers to host our redis database. With a database created to store information, my partner and I needed a user interface to interact with this data: an iPhone app. We built an app in swift that could access the redis database through the linode server.
Challenges I ran into
Initially, we didn't know how to store the information in a way that would be easily populated and able to be accessed across multiple devices. We also had some issues with our iOS app with generating some of the elements of the app, such as the menu table.
Accomplishments that I'm proud of
I am proud that I managed to create an app that could use location services to get current location, as well as interact with data that was not directly stored in the phone's memory. Another achievement is using iOS elements for other functionalities, like using a TableView to present information in multiple columns.
What I learned
I learned how to use a cloud server to access data, as well as how to create a database and manipulate data within it, even when it was on the cloud server. Additionally, I learned how to install and use pods as packages for use with swift code, which allowed me to get greater functionality in this iOS app than other iOS apps I have worked on.
What's next for Bite in a Bit
Next steps for Bite in a Bit would be implementing the delivery side within the app. We are currently able to handle orders in the cloud database, but as of yet do not have a screen to accept/get these orders within the app.