I bootstrapped my book highlighting app to 60k users. AMA!

Hi! 👋

My name is Damir (@stuhecdamir), and I'm a senior iOS engineer and founder of Highlighted — an iOS app that enables you to make powerful book highlights and remember more of what you read.

Highlighted was born to "scratch my own itch" but has since grown to 60k loyal users. The app is free, but I'll soon release a set of "pro" features that will require a paid upgrade as a subscription or one-time payment.

Highlighted is built entirely with SwiftUI, which continues to impress me with how fast it enables us to prototype and iterate on features. It allowed me to spend more time focusing on UX and learning from user's feedback, the two things I love the most about creating.

The thing I'm most proud of about Highlighted is the fact that it offers one thing (making great book highlights) and does it very well — but don't just take my word for it, ask Kevin Kelly. 😉

AMA about the app, my creation processes, principles, indie tips, or anything else that comes to mind! ✌️

  1. 1

    Congrats ! I have used the app and it is great.
    What is the process behind getting “apple app of the week” badge?

  2. 1

    Great work! The app is really cool. How come you are yet to monetise it? Was growing it first a part of your strategy or did it just sort of happen?

    1. 2

      Great question. There are two reasons for this:

      1. I have a full-time job that enables me to build a free app in my spare time.
      2. My strategy from the very beginning was to get as many people as I can to use the app and learn from their needs and experiences with the app.

      The core of the app will remain free, forever. In two years of careful listening to the feedback and understanding my users' needs, I gained a great understanding of how to elevate the core experience by offering advanced features which will be a paid upgrade.

  3. 1

    Congrats Damir! I’ve been a long time user of Highlighted and have been really impressed with the level of polish. Getting KK to use your app really is something!

    Any particular reason you chose to go with a custom server side backend instead of something like CloudKit? I’m wondering the same with Leap Habits. And how’s Vapor? I’m really curious about Swift on the server, but I’ve been hesitant to jump in.

    1. 1

      Thanks, @benedict! I appreciate your kind words.

      The main reason I went with a custom server-side is that I haven't worked with CloudKit before while I had with Vapor for the last 4 years. Also, having your own server-side gives you much greater flexibility down the road in terms of platform dependency and just general evolution of the product.

      I love Vapor. Version 4 is very stable and a joy to work with. The best part about it is its community, always ready to help when you get stuck. Would definitely recommend it.

  4. 1

    Impressive milestone, congratulations.

    I have a couple of questions.

    1. How long did it take to get to this milestone?
    2. What kind of actions did you take to get your first customers?

    Keep crushing it man! 🎉 Followed you on Twitter

    1. 1

      Thanks, @miguel!

      1. It took around 20 months. Slow but very focused and healthy growth.
      2. I was the very first customer, so that was easy. 😆 After that, I shared it with some of my colleagues at work who I knew read books and would share thoughtful feedback. Once the app hit the App Store, users started coming in naturally.
      1. 1

        Once on the App Store, did you just work ASO? Did you post/blog about the app anywhere else?

        1. 1

          That's correct. I try to follow the general ASO advice and focus on clear messaging and screenshots, as well as using relevant keywords.

          I did not post/blog about the app anywhere, however, I did reach out to App Store promotion team which resulted in a few App Store features since.

          Also, people tend to speak about products they find useful and enjoy using, and I was fortunate enough that people shared the app from the very early days.

  5. 1

    Hi Damir! How do you decide which features to add and which ones to hold off? One of my favorite things about Highlighted is how simple it is, and I’m curious what things got cut in the process.

    1. 1

      Great question, @jordibruin. As creators, we are wired to have a constant flow of ideas for products and their features. I'll be first to admit that it's often very hard to step back and resist the temptation to add.

      My secret to keeping things simple is time. Most ideas sound great in the beginning while living in our imaginative minds.

      Here's my initial approach to ideas:

      1. Acknowledge it.
      2. Think about it.
      3. Write it down (Trello).
      4. Stop thinking about it.

      Over time, one of the following happens:
      a) I never hear about it again (myself or users) and it never gets implemented.
      b) I keep stumbling upon it or start getting requests for it from users.

      While a) might hurt a little, it's a crucial part of the creation process.

      b) is where stuff happens. Whenever I hear about the idea (email or Twitter), I add that person to the list of "Interested" people in Trello, for that idea. Then, I try to have a deep conversation about the idea with that person, to truly understand the motivation behind it.

      More often than not, those conversations reveal something completely different about the product, often removing the need for that idea in the first place. Those conversations and revelations are the gold I'm digging for.

      Once a particular idea has "marinated" long enough (could be months), gained enough interest from others (for me that's 20+ of "Interested" people), and I feel like it stands on firm grounds that I fully understand, only then I start spending time thinking about how would I actually do it.

      Even in this final "execution" phase, I often discard ideas if I find they will require too much work, will be hard to maintain, or if they steer away from the core product idea too much.

      Once I know how I'll implement the idea, I tend to work on it for a long time. Having gained the confidence and knowledge from the process above, I have plenty of motivation to perfect every part of it and make something I'm proud of.

      I should note that there are definitely times when we do need to move fast and just trust our gut, but those are generally exceptions in my case.

  6. 1

    I'm curious where do you store the data/what is your backend stack?

    And do you use any services like CI, error monitoring, analytics that you recommned?

    1. 1

      I've built my own server in Swift, using the Vapor framework. The database is PostgreSQL, and everything is hosted and running on Heroku. Really happy with this setup so far!

      The only CI process I have at the moment is TestFlight Beta deployment using Fastlane. That's about it. Once I'm happy with where the Beta is, I just use its last build to submit to the App Store.

      Regarding monitoring and analytics, I don't have anything custom set up yet, besides basic Xcode and App Store Connect reports, of course. For obvious reasons, I'm against including big 3rd-party SDKs into my app but I'll definitely add some privacy-first analytics soon.

      I have a healthy income of user's feedback that gives me the big picture but it would be great to have more insight into "micro-events" such as screen views, button taps, etc., to learn which parts of the app are being used and how often.

  7. 1

    Great to see those stats Damir. I'm a user and fan of your app.

    How did you get your first users?

    Also what are the best channels for you, currently, to capture new users?

    1. 1

      Glad to hear you like the app, @diogo!

      I was my first real user, so in the first few months, I just built what I needed. Slowly, other users started using the app, coming primarily through the App Store browsing.

      These days, building in open and sharing my progress on Twitter, word-of-mouth, and App Store promotions are the biggest channels for acquiring new users.

Trending on Indie Hackers
I will promote your startup to 50K+ people 216 comments I made Session, a productivity timer that makes $5K/month in net profit, AMA! 43 comments 📈 We raised $500K pre-seed for our Reddit Marketing Tool 15 comments Steph Smith on making $130k w/ an ebook, creating a course in 20 days, and the latest trends 10 comments Feedback, please: does the landing page explain the product? 6 comments Replacing Substack? 5 comments