Product Design —


Kaleidoboard is a mobile app that connects friends and friends of friends based on common interests and common bucket list activities.


There are times when we bookmark a cool restaurant or discover a new hiking trail, we wish for someone to go with us; there are times when we  feel a little down, we wish for a friend to chat with. Despite the hundreds and thousands of friends and followers we have on social media, these innocent needs are not always met. 

Observing this need, I decided to design an app that help users find friends and companionship.

+ Overview

Problem: a need for companionship

People appear to have trouble finding friends 1) for spontaneous hangouts and 2) for participating in planned events/activities.

+ User market research

User interview: research questions

• To validate the problem people have in finding and making plans with friends

• To determine the satisfaction of the existing methods

• To identify user goals.

Methodology & target audience

Conduct user interview with 12 participants, all of whom are working millennials (age 22-35) relatively savvy with popular social applications.

Findings & insights

I realized that there is less need for spontaneous hangouts than I expected. People find satisfaction through chatting with close friends online or over the phone when feeling bored or lonely.

On the other hand, people hope to find more friends who are similar to do things together. Everyone has a list of things they want to do, hobbies they enjoy, and is always on the lookout for more friends to do these things with.

A common theme that arose is the value of “mutual friends”. There is an inherent level of trust and willingness to meet if it’s a new connection directly linked to an existing one. 

With these findings, I decided to focus my research on the pain points users face in planning activities with friends based on shared interests.

I’ve only hung out with her a couple times but we are planning on going to Peru together because she’s a backpacker too.

I feel like the only way you can meet people that you trust to plan things around is mutual friends. Because there is someone that’s holding them accountable, someone that’s vouching for them.

“I keep a Google spreadsheet where I put together all the events (usually designer/tech ones) and share with about 30 or so people. It’s much easier to reach out to people once I know this group of people is interested in something.” 

User goal

Based on the findings from the user interview, I have identified the user goal to be


To find friends with similar interests to participate in a personalized list of activities together


• Build a product that encourages users to list their activities of interests: the places they want to

go and things they want to do

• The product aims to extend the current behavior of introduction of mutual friends to participate in activities by making the process more seamless

+ Competitive landscape

Competitive analysis: validation that the user goal is not yet met

There are apps that focus on spontaneous hangouts allow users to indicate availability, but most do not allow users to indicate specific activities of interest. 

In terms of apps that connect people of similar interests, almost all focuses upon the idea of meeting new people in the local community. What is missing is the possibility of finding friends of shared interests in the existing network as well as the ability to curate the list of to-do activities.

Additionally, I looked into apps that let users list their interests or bucket list items. In this space, very few takes the social aspect into consideration, and very few of these have a robust user experience or well-designed interface.


+ Designing the product


I've aggregated the personalities interviewed into two Personas that I will be focusing my design around. They have very different personalities and will use the product to achieve the user goal in different ways.


User flow

Feature prioritization: 2x2 matrix

Defining the MVP



Dashboard of to-do activities

Invite friends to activities

Insert activity details

Messaging & groupchat

Feed of other people’s interests/activities

User profile


Curated event suggestions

Add multiple images to interests/activities

Match friends of common interests

Share location


Introduction of friends based on common interests

Connect to FB events


Connect to Yelp’s bookmarks

Automatically determine availability from calendar

Insert scheduling details and rules 

Features that constitute the MVP are selected around allowing users to invite friends to activities they’re interested in. As the app will be heavily dependent upon User Generated Content from inputting activities, it is important to optimize the experience of adding activities to the dashboard (i.e. the idea of a bucket list in order to focus on personal growth).


Others features such as using calendar to optimize based on availability are less expected by users but can provide a greater impact at a later stage. Additionally, features to link platforms such as FB events and Yelp may require business partnership and additional technical requirements.


+ Wireframing & prototyping

Key screens

The Information Architecture (IA) dictates four main screens: Home (Dashboard), Friends' Feed, Explore, and Messaging. Here I've sketched out a draft for the key screens, adding the Activity Details screen.


Activity Details


Friends' Activities

Usability testing & high fidelity wireframes

I've continued to refine the flow of the experience through usability testing and user feedbacks. The design evolved from the process of designing and annotating high fidelity wireframes.

The word "surface" is confusing.

Shapes are confusing; want to be able to add in multiple images

Users assume they'd be able to designate where each activity goes on the board

Users could not differentiate the UI between adding a "surface/board" vs adding "specific activities"

Key flow 1: populate board with bucket list activities

Usability testing example:

Key flow 2: edit event & invite friends

Annotation example:

1. Name of the activity board, aka “surface”; users can customize the name (e.g. Outdoors, Food, My Favorites, etc.)

2. Add a new surface

3. Add a new activity for a particular surface.

4. Icon for dashboard, symbolizing “bookmarked list” of to-do activities5. Can tap or swipe to access other surfaces


*Tap on Leavenworth to enter the Activity Details page —>

1. After the activity has been inserted, this is the “Activity Details” page, accessible from the Dashboard

2. User prompted to invite friends to the activity

3. Once friends are invited to this activity, user can tap on the messaging icon to start the group chat directly from the activities page (The list of chat can also be accessed from the main navigation bar)

4. Can add in activity details


*Tap on the pencil icon to enter the Edit Activity Details page —>

1. User can edit/rename the activity at any time

2. User can specify if they wish to set the activity as public/private or if friends can edit for each activity; default settings encourages openness and allow friends to join and invite friends

*Tap to save edits made on the Edit Activity Details page —>

1. Friends’ icons are added to the page after the invite. The icons will remain black and white until the friend has accepted the invitation

Refinement of prototype & high fidelity mockups


Activity Details

Friends' Activities


Visual design styles

With every major screen, I went through the funnel process of exploring a variety of visual styles and then narrowing down to the most functional yet unique and visually appealing.

*Note, this concept is still a work in process, piece by piece transforming it into reality!