Staying organized and using best practices with Figma for the high fidelity prototype.
Sorry if this section is long filled with too much jargon, but I just love figma and prototyping!
I approached the whole prototyping process with atomic design in mind. I started by taking the brand’s colors and creating squares of color that I then combined with layer masks to create all the various components I was going to use. Those components were comprised of various levels of depth. The first layer was icons and small graphics; I drew or created every icon in the app within figma using the pen and shape tools. Then the next layer was comprised of those icons and boxes to make things like buttons and menus. Lastly, those buttons and menus were combined with each other to make the biggest components such as the headers, footers, and restaurant sliders. Almost every component also had variants that made it easy to change things on the fly. I designed it this way so that small changes to the initial components would be reflected throughout the app. This allowed us to redesign things with minimal effort as we get feedback. Since it was a group project, the atomic design also made it easier for groupmates to follow along as they looked over the designs.
Lastly, I created a few animations that helped make the prototype feel more real. The one I’m most proud of was the map loading animation which involved loading a page with a wide, zoomed out map. The map would then scale up to emulate zooming in. The image of the map was then replaced with an unscaled screenshot of the area that kept everything at the same aspect ratio, but made all the text smaller than the zoomed in version of the map. Lastly, the corresponding map icons would load in depending on what filters you activated.
The map feature is fully clickable and robust. It is capable of applying a Mexican food filter, multiple friend filters, or no filters, which just makes it project your list on the map. It is fully navigable between a list view and a map view. It preserves which filters you have active and displays each page accordingly.
Enough description! Here is a video of the app in action with the corresponding tasks to the side: