Contact
Independent product 2026 / iOS + keyboard extension / vibe coded
TalkCos Talk + Cosplay

Product design / vibe coding / interaction / visual direction

Language has a tone.

I designed and vibe coded TalkCos end to end: an iOS product that lets people write what they mean, shape how it sounds, and send it into the conversation.

TalkCos purple cat-mask app icon and logo
01 TalkCos / a playful identity for expressive communication.

Overview

A communication tool with a point of view.

TalkCos started from a simple observation: people do not only choose what to say, they choose the feeling behind it.

I shaped and built the product through one continuous vibe coding loop: plan the behavior, code the flow, test it in the iPhone simulator, then refine the interaction. The experience connects three actions—type with a purpose-built keyboard, tune the tone without losing the original words, and send the result with a chosen voice.

Role
Product design, vibe coding, UX, visual system
Surface
iOS app and custom keyboard
Focus
Tone, translation, voice sending
Build
End-to-end vibe coding

Product planning

I planned expression around the conversation.

I planned TalkCos around one constraint: expression had to happen inside the conversation, not in a separate editor. The product therefore starts with the message already being written and adds only the choices needed before it is sent.

The concept of “sending as another self” became three independent controls—tone, translation, and voice. I translated that system directly into a working iOS build, using each simulator pass to decide what to simplify next.

  1. 01
    ComposeWrite in the current chat.
  2. 02
    SuggestSurface words or expressive options.
  3. 03
    PreviewCompare without replacing the draft.
  4. 04
    ConfirmWrite the chosen result back to chat.
TalkCos concept showing tone, translation, and voice as different ways to send a message
Concept One message, multiple ways to express who is speaking.

Design journey

From a keyboard utility to an expressive send ritual.

I worked in a continuous design–build–test loop. Each vibe coding iteration moved the product closer to the moment of sending and reduced the distance between intention, expression, and action.

  1. 01

    Frame the promise

    Start with one recognizable moment: a person wants to say something, but the plain text does not carry the intended mood.

  2. 02

    Separate the decisions

    Make “how should this sound?” and “which voice should send it?” two deliberate choices instead of one opaque AI action.

  3. 03

    Bring the system into the keyboard

    Move tone, translation, phrases, clipboard, and undo into the writing surface so the user does not have to leave the conversation to shape a message.

  4. 04

    Design the handoff

    Turn voice sending into a previewable sequence that ends where the message began: back in the host chat app.

Innovation logic

The innovation is in the separation.

01

How you say it

말투 changes the tone of the words. Suggestions stay grounded in the original message, and nothing is rewritten into the host app before the user chooses it.

02

What you sound like

변성 is a separate decision. A character can shape the delivery without silently changing the message itself.

03

When you commit

Preview and countdown create a small moment of consent before audio is played out loud and recorded into Kakao.

Innovative interaction

Small moments protect authorship.

Draft isolation

Suggestions wait for a decision.

Tone candidates live in a draft layer first. The original text remains intact until the user taps to write the chosen version back.

Single-step undo

Every expressive move stays reversible.

The last original message is kept close at hand, so trying a new tone never feels like giving up control of the words.

Preview → handoff

The final action is staged, not hidden.

Choose a voice, preview it, start the countdown, then return to Kakao for the long-press recording step. The boundary between TalkCos and the chat app stays legible.

Korean input planning

Prediction without stealing the sentence.

I treated Korean input as a layered decision surface, not a single autocomplete bar. The system first respects the Hangul syllable being composed, then offers help at progressively broader levels.

I planned candidate order around the immediate sentence, recent use, and personal frequency. Suggestions remain visible but passive: they enter the chat only after selection, and the previous text stays available for undo.

  1. 01
    Composing HangulKeep the current syllable block stable while the user is still typing.
  2. 02
    Complete this wordOffer likely endings for the word already in progress.
  3. 03
    Predict the next wordUse the surrounding sentence to shorten the next decision.
  4. 04
    Recall personal languageBring back frequent phrases and saved wording when it is relevant.
TalkCos Korean keyboard planning poster showing double consonants, word prediction, next-word suggestions, and frequent phrases
01 / KeyboardMake the keyboard the product surface.

Korean composition, prediction, phrases, and expressive tools stay in one place.

TalkCos tone feature showing multiple rewrites of one Korean sentence
02 / ToneOffer alternatives, not an automatic rewrite.

The original sentence remains visible until one tone candidate is selected.

TalkCos translation feature translating English input into Korean inside the chat keyboard
03 / TranslateTranslate, check, then write back.

The target language and translated draft stay visible before returning to chat.

Innovative functions

Warmth comes from the edges.

01

Custom keyboard surface. Presets, tone, voice, speech input, translation, phrases, recent clipboard, and undo are available at the point of writing.

02

Character-led home. The current character is the hero; the larger persona library stays one level deeper so the first decision remains clear.

03

Local-first utility. The recent clipboard keeps up to 20 items on-device, giving the feature utility without turning a private writing history into a cloud feed.

Design contribution

I owned the product framing, information architecture, interaction flows, visual language, and end-to-end vibe coding of the working iOS build. Designing and building in one loop let every product decision be tested as behavior, not only presented as a mockup.