Skip to content

Kalzem/Turn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Turn - Your Turn

Introduction

Defining Success

The task given is to "create an innovative prototype that can reach 1M DAU". That alone is not enough to define success. We can create a nice and polished photo sharing app copied from an existing big player but with a new skin then leave the heavy work to marketing. But this doesn't sound like success.

Success implies retaining users and instinctively make them recommend the app.

The Problem

One common problem of social media is the fatigue problem. People crave engaging and interactive content, they also want real-time and authentic content. These needs create an opportunity for a challenge based app which, by design, drives engagement, virality and retention.

The Solution

Turn is a social photo sharing app that uses "challenges" to drive content.

Users can create challenges by giving an instruction and a deadline.

Then, they can compete by uploading their best photo submission. Only one photo can be submitted for a given challenge.

The community votes (by liking & commenting) to determine the best shots.

What is a challenge

A "challenge" can be anything from just displaying coffee art to having the rarest X-Men issue.

It can be location bound: "A cozy coffee spot in London". It can be time bound: "Today's best sunset". It can also be event bound: "Solo Valentine's Day".

For the sake of keeping the exercise simple, there won't be location not event concepts.

What it is NOT

Turn isn't an enabler to infamous and dangerous internet challenges (Tide Pod and such). Moreover, the photo-only aspect of Turn makes those challenges poorly thriving.

The App

Core Loop

  1. A new challenge is created, e.g. "Monday's Coffee Art", "The most unique book cover bought today", "The Least Ugly Beetle"...
  2. Users upload their best shot, only one for a given challenge. They can participate in several challenges.
  3. Users vote by liking and commenting others' photos. A Tinder-style system can be considered but I have decided to leave it out.
  4. When a challenge is over, a leaderboard is automatically created. However, because the experience must stay positive, we only display the top 1%, 5% and 10%. Nobody should "fail" a challenge.
  5. Winners can share their results and create a new challenge. Repeating the loop.

Notes on the Core Loop

  • In order to create new challenges, users will have to win previous challenges. This is to drive users to participate in more challenges, to be more active.
  • There needs to be an official Turn account that automatically starts challenges; easy challenges that can be appreciated by most users. This is mainly to kickstart the project.

Typical User

I believe the typical user to be Millenials & Gen Z, but if I had to choose between them, it would be Gen Z. The younger a person is, the more they will want to prove themselves.

I also believe that Gen Z will be creating more daring challenges while Millenials would have "cosier" challenges.

User Acquisition

  • Accessing the users' contacts should be the first step. Users would naturally want to challenge their friends first.
  • An incentive can be given to increase this first channel by offering more challenges to those who invite their friends.
  • Then usual marketing on TikTok, Instagram and so on.

Business

Brands

Just like Instagram or TikTok, brands have their place in Turn's ecosystem.

We can imagine a French airline suggesting to take a nice picture from the top of the Eiffel Tower or Nike asking for the funniest sneakers. It also works with celebrities such as Taylor Swift asking for the best concert shot from her fans.

Execution

Idea

Searching for users' common pain points, their recurring requests and cross-checking with several articles on different websites will show that there is an untapped challenge craze considering TikTok and Instagram trends.

Apps usually reach millions of DAU thanks to their built-in network effect where users want to share what they did / who they really are / what they can do with their friends and, even better, with strangers. Challenges fit the description perfectly.

Human psychology & gamification should be at the heart of any app that wants to be popular. Forming habits with recurring yet fresh activities will drive retention, hence the daily challenges.

Time Spent: ~3h

Shaping The Product

While looking for inspiration on popular social media and on Dribble, I have created a Figma with a few mockup screens. I have also decided to stay close to Instagram's UI for one specific reason: There is no learning to do. Odds are that the target users already know and understand the UI/UX of Instagram avoiding as much frictions as possible.

I did a few iterations and discarded some early results. I am sharing what I have kept (assets are located in the README_assets folder).

Global workspace

Feed

Profile & Challenges

Participating in a Challenge

Time Spent: ~4h

Development

Due to the short amount of time available to build the product, I have deliberately ignored several points:

  • Lack of a DB layer: Everything is RAM only. Initially I included a CoreData stack but removed it because of time...
  • Lack of a server layer: I kept it local only and didn't include a Firebase / CloudKit / Supabase layer. I considered swizzling / mimicking server calls, but time...
  • Lack of user management (login, account, profile...)
  • Built for iPhones, not iPads/Mac ARM (though, I have left the default destinations untouched).

What has been done:

  • The project was built with SwiftUI following a ViewModel architecture.
  • It uses some iOS 17-18 features such as the new @Observable
  • Frameworks used: Kingfisher (image caching), Pow (animation), MijickCamera (camera).
  • First screen: FeedView which is the main user's feed. You can "like" images.
  • Second screen: ChallengesView which lists ongoing challenges.
  • Third screen: SendPhotoView which opens up upon participating in a challenge. However, this screen is incomplete and will not proceed until the end ("submitting" a photo).

Time Spent: ~7h

Devil's Advocate

There is a common saying in the SaaS building world:

Ideas are cheap, execution is everything.

Having only 48 hours did drastically limit the execution 🙃.

Besides, a few important aspects were not developed in time: Leaderboards, reward system, messaging...

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages