Currently, we have a functioning iOS app for Online Food Ordering, one business facing app and another app facing users/consumers who will use it to place online orders.
- There are some design issues in the mobile app. Currently, all the business logic, presentation logic, and data structure models are embedded into the mobile app and it uses Google Firebase REST APIs to store, retrieve and process data, causing the app to have a tight dependency on Firebase platform.
- Currently, there is no webapp for restaurants to maintain their listing in the business app which would be easier for that purpose.
- Currently, there is no Android app. Also it would be easier to maintain the code base for both Android and iOS platforms if the mobile app had been developed using React Native framework. Eventually, it would make sense to move to a portable and flexible framework like React Native considering the reduced maintenance overhead and build time.
Following is the roadmap and requirements;
Work on double or multiple business opening feature.
Work on refactoring the overall system design and architecture to decouple business logic from presentation logic. Evaluate the usage of Firebase and explore alternative options. This task does not involve any code changes but will purely focus on the design aspect of the system.
Use the system design defined and documented at the end of the above task to develop the mobile app using React Native framework which will get compiled and published for both Android and iOS platforms.
Use the screen designs already developed by UI/UX designer (psd files) when developing the app using React Native framework.
- Develop a webapp targeting restaurants owners to manage their listing on the system since it would be easier to update content on a web interface using a notebook.