Skip to content

snwilson1234/indulge

Repository files navigation

indulge

A mobile dating app style experience to recommend you new restaurants and food experiences in your area.

Video Demo

Click the image below to watch the full demo on Youtube!

Indulge Video Demo

Overview

This app was made for the Interface Design Methodology class at the University of Pittsburgh. In this class, we learned the fundamentals of user interface and user experience design and put those lessons to the test during the development of our applications, which was the focus of our semester. Over the course of the semester, we designed, implemented, and tested our app and designs. We followed a fast-paced, iterative design and testing process where we had multiple rounds of user testing and feedback sessions. This directly mirrors how app design, testing, and development works in for-profit, commercial environments.

To create this application, we were taught the Model View Viewmodel (MVVM) architectural pattern, and implemented it with Dart and the Flutter framework. Coming into the semester, nobody in our group had used these tools/technologies before, so we had to learn over the course of our development as the semester went on.

Inspiration/Idea

All of us being very big foodies, our group decided to make an app that quickly recommends you to new food in your current area. We wanted to make it a simple and interactive experience, while remaining focused on the key user tasks we defined early on, which were:

  1. Finding new restaurants
  2. Maintaining lists of restaurants
  3. Reviewing restaurants

Our unique selling point here is that we wanted to make it a sort of dating-app style experience where you can "match" with certain restaurants based on your preferences. We like pitching it as sort of a “Tinder for food” experience, because many people then immediately have some idea of what the app is going to look like and how it functions in their head, leading to a smoother onboarding process for new users.

Design/Development Process

Following the structure of the course, our design and devlopment process was broken up into 5 main sections over the course of the semester.

All documents we created for these phases can be found in the design_docs folder of the project.

1. Project Ideation

This was essentially our brainstorming step, in which we spent a week or two coming up with an application idea that we all would be excited to work on. We then set goals for the application and identified target users. Finally, we analyzed other existing applications that provide similar features to their end users to figure out how to best approach our designs, as well as how to set ourselves apart.

We also had a feedback session with consultant users to figure out what parts of our idea might need to be strengthened/changed.

2. Project Pitch and Specification of MVP

In class, we gave a presentation/pitch for the vision of indulge, as well as formalized our Minimum Viable Product (MVP) that we would be able to ship in beta by the end of the semester. During this phase we also created multiple user personas to embody our target users and design the applciation around, as well as created storyboards and wireframes to visualize the flow, features, and functionality of our application.

3. Software Architecture

In this phase, we fully thought out and designed the architecture of our app and how the different subsections of it would communicate. Again, we were tasked with using the MVVM architectural pattern, so that is how we divided up the app. We made a full software architecture diagram to visualize how all the moving pieces of our application would need to interact.

4. Alpha Preview Prototype

At this phase, we had implemented at least 2/3 of the key tasks specified in our MVP and had a testing session with consultant users to gether feedback before the final sprint towards a beta prototype.

5. Beta Prototype

This was the culmination of the semester. At this point, we had taken all the feedback from our consultant user sessions and made the changes we found necessary to maintain an elite user experience in our beta prototype. We then presented our beta prototype to the class, got even more user feedback, and did a final project write-up about how the development went over the course of the semester.

Using indulge

Since indulge is still in prototype, we still have fake data being used in the project. As such, there is not much else you can do besides what is already shown in the demo. If you haven't watched that yet, go watch it. However, if you would like to still use the application yourself, you can! Follow the instructions in the README_TA.md file to do this.

Tools/Technology Used

  • Dart
  • Flutter
  • Figma
  • SQLite

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •