Final Major Project — Final Touches
To get my application ready for presenting for the summative I wanted to smooth off any rough edges, ensure that any button that is pressed does something even if they actual function isn’t active, there should at least be a placeholder message, make sure that the application cannot be broken by a user and that it looks visually appealing. After deciding to move the prompt when a user isn’t logged in and they’re try to view the menu to the point where they are trying to order for UX pruposes I realised I had some isses with the application, depending on the order of page presses sometimes the user can be presented with a blank page. There were additional bugs of this type:
- Bad maths — application couldn’t add up correctly with a current order if the user has products of multiple quantities, this required rewriting the way the app deals with the quanity.
- The registration page couldn’t be accessed from some pages due to the animation that had been placed on it, I needed to add some animation in places and hide the not logged in pages in other areas.
- The marker which marks your location on the map is a circle not a marker meaning it doesn’t scale if you zoom, I changed it to a circle marker but also had to investigate how to add styling in the leaflet documentation, turns out you can’t add it whilst creating it you need to apply a style set to it.
- The retailer app had buttons which did nothing like adding shop details I decided to comment these out as they would be a useful feature but simply not doable for the deadline.
- If a shop doesn’t have a menu or shop image it causes the console to log an error and a user can pull up a blank menu, I changed the way that the markers are created so that on the user clicking them an if function displays no menu available if there isn’t one.
- Retailer application doesn’t know what to do if a shop doesn’t have a header image, e.g. it’s a new shop I had to create an if functin the place an instruction image in instead to tell the user to upload one and to not break the styling.
- The order page of the retailer application is whats displayed by default but looks very bare if thre is no current orders, I decided to implement a placeholder no orders image just like on the consumer application to let the user know this.
- The retail app had no log out button and didn’t kjnow how to handle a log out, fixing this was simple as it was implemented in the same way as the consumer app.
- The font used in a lot of areas of the application is disjointed, some arial, some helvetica etc, I changed all to use helvetica or operating system default (roboto if being used on an android phone), text outline in some areas of the app was garish because of the way that CSS text outlines always center on the text, in order to change this I had to rethink the styling and go for a more plain white font in the menu system and change the background colour of the menu containers and opacity of overlays to ensure it stood out.
- All of the buttons in the retailer application needed changing in the retail application to match the consumer app.
- Removed the past orders button in the retailer application as this function isn’t going to be available with the first iteration of the application.
- Added alerts where a retailer trys to print or edit and order to let them know that no printer is connected and that the order isn’t available for editing.
- Fixed some positioning elements which made the application hard to interact with when using a smartphone keyboard.
The only part that now needs to be done is final testing and adding data to the database to show the variety of shops on there.
The application is no ready to be deomnstrated as a concept and shopuld work smoothly in all aspects which it can currently do, I feel I set myself a difficult task in trying the achieve this application however I think i also went far past the Minimum viable product that it could have been. In the future I would love to continue to work on this application to integrate the payment system, loyalty system, firebase 3.X and past orders. If I got to this point I feel that I could began beta testing with selected shop partner and a small public release which could lead to a Proper Coffee becoming a legitimate business.