Skip to content

woniyoon/praja_delivery

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

praja_delivery

logo

An iOS App for Grocery Shopping

main

Introduction

  • This is an iOS app created as a team project in the school. My team decided to develop a grocery shopping application using Swift in Xcode. Nobody had any experience in terms of iOS development. We've spent approximately 5 months including brainstorming, making a wireframe, UI/UX design and coding. My team consisted of the followings in alphabetical order :

    Bruno : Project manager

    Diego : Backend (Stripe)

    Jaewon(me) : Backend

    Kento : Tech Lead

    Mai : Designer

Tools We Used

  • Trello to manage the project
  • Slack to communicate, share some tips, update with a progress and chit-chat :)
  • Google SpreadSheet to visualize data structure, which is more appropriate for NoSQL DB. We also updated our master data through script

Frameworks We Used

  • Swinject for Dependency Injection
  • RxSwift for Reactive Programming

Database We Used

  • Realm DB as a mobile DB
  • Firebase(Cloud FireStore) for a Serverless App

Payment Library

  • Stripe

Architecture We Used

  • MVVM

More About My Tasks

jaewon design

  • I contributed to make a wireframe as well as design even though my design wasn't fully adopted. I used Sketch.
  • I did a research about using multiple Storyboards to avoid having many conflicts and applied it to our project.
  • I worked on Home/SignIn/Account/Checkout screens.
  • I tried to use RxDatasources to implement UICollectionView using RxSwift, which was one of the most challenging tasks.
  • I made an effort to define data structure and dabbled in google apps script.
  • I devoted myself to help the others whenever they need.
  • I sometimes led a daily meeting when our project manager was absent.

How it looks like?

home

  • This is the first screen of the application, you can scroll up and down, check items and see the detail of an item. We decided to use Tabbar so that a user can easily check its order history and its account.

category

  • It leads you to Category list by tapping on the button on the top left side on Home screen. This gif shows the transition from Category list to Product Detail page.

login

  • We used Firebase Authentication API, with which user can sign up, sign in and reset a password. This gif describes the progress of sign-in and account page.

makeorder

  • This gif illustrates adding products, editing the amount, choosing an address from the registered ones, and making a payment through Stripe.

After The Project

  • From the beginning of the project I had been excited to work on this project since it'd be my first team project ever. In fact, our team had a lot of difficulties from A to Z, it was obviously challenging enough to make all of us frustrated. Each of us was so new to Swift and Xcode, on top of that, we decided to use MVVM architecture and RxSwift together, which later turned out it was so difficult to find some references or material introducing both of them. (Also it was really hard to use Stripe) However, we never gave it up and never stopped googling and experimenting, finally we were able to finish it!
  • I truly admit that the 6 months of work were tough and the project itself is not perfectly flawlessly. But I have a big affection for this project. Through this project I've learned how an app development proceeds and how a team should work beside coding skill itself. I couldn't make it without my teammates, who bore with my lack of knowledge and were always only one call away to help one another.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published