Inks used to be more elaborate: balancing visual effects and everyday use

Inks is a private journaling app I built around writing letters. I put quite a bit of work into the paper, envelopes, and opening animations. I wanted opening a letter to feel a little different from opening a note.

One early animation took a rather roundabout approach.

When you opened a finished letter, the paper would fold, slide into an envelope, and get sealed inside. You would then tap the envelope to open it, pull out the paper, and unfold it to read. So before you could read something you’d already written, the app would put it away and ask you to take it out again.

On its own, the sequence felt complete. It was close to the sense of ritual I’d wanted. But for someone who just wanted to open a letter and read it, the sequence felt too slow.

There was a skip button. But if reading a letter means tapping Skip every time, the animation is still adding a step.

The animation had taken a lot of work, but changing it was worth it. Spending a long time building something wasn’t a reason to make people wait for it every time they opened a letter.

So I removed the first half. Opening a letter now starts with the envelope already sealed. You can turn it around, tap to open it, and watch the paper slide out and unfold—or skip straight to reading. You still get to open the letter. You just don’t have to watch it being packed away first.

I made a similar mistake with the first writing experience.

Originally, tapping Write for the first time wouldn’t let you start immediately. You had to touch and hold it to enter the full writing flow: choose your paper, write, then go through the pauses, envelope, and effects. Only after finishing and sealing one letter would a simple tap on Write take you straight to the editor.

I wanted people to experience those details, so I put the complete flow into their first time writing a letter.

But someone might simply have a few things they wanted to write down. Meanwhile, I had a whole sequence lined up to introduce my features.

I removed that requirement too. Now, tapping Write lets you start writing. If you’d rather choose your paper first and work on the envelope and effects afterward, you can touch and hold Write to take that route. Either way, you end up with a complete letter. Choose whichever suits you at the time.

After these two changes, I started looking beyond how an effect looks in a demonstration. When will someone encounter it, and how often? Watching a full animation occasionally feels different from waiting through it every day just to read a few sentences. Especially when someone has a thought they want to write down, I’d rather let them start writing.

A Skip button doesn’t necessarily settle the question. It gives people a choice, but if they have to tap it every time, it’s still another step. Does the effect need to appear every time? Could it be shorter? Or could it be something people open when they want to spend a little more time?

That doesn’t mean removing every effect. A brief transition can help people see what just happened, and the paper, envelopes, and opening sequence can be part of the pleasure of using the app. For me, finding a balance means adjusting when those details appear and how much time they take. Everyday writing and reading should be straightforward, while someone who wants to decorate a letter can still take their time with it.

Making these changes hasn’t made me care less about the envelopes or the ritual. I still like the paper folding, the opening sequence, and being able to revisit how a letter was written. I’ll keep working on them. I’m just more careful about where they fit now: there when you want them, without getting in the way when you simply want to write or read.

Why keep the writing process as well as the finished words? I explore that in When you reread your journal, will you remember changing “definitely” to “maybe”?.

Website analytics settings

Necessary storage remembers your privacy choice. Optional analytics are enabled only when you allow them.

Choose an analytics setting