March 12, 2018

How do you make apps look polished with no design background?

Hi, I am currently building two apps, one Electron app , and another web app. Functionality wise, they do what they are supposed to do, but they don't look polished enough. I know there are websites that look ugly but do just well (craigslist, reddit, in my opinion).

I am curious how Indie hackers with no design background make their websites decent looking. (Yes, I tried Bootstrap but the result wasn't satisfactory.)

If hiring a graphic designer is recommended, where did you find yours and how much did you have to pay? Thanks!


  1. 12

    Check this

    https://twitter.com/i/moments/880688233641848832

    and this

    https://www.goodui.org/

    Tell me if you find those useful!

    1. 2

      @Janva Thanks, nice links! (especially the Twitter Moment)

  2. 6

    I don’t know how ethical this is, but I pretty much find an open source template or something on sketchappresources and copy it, designers have a great sense for colors, typography, and the like, every time I try to do something on my own, it never quite gets there

    1. 2

      My approach was slightly different: I went to major websites and learned by copying their fundamentals. I never use that in my final designs, but it was the best way for me to learn.

      What's the correct size for a button? How big is the text on a button? What's the difference in color from default to mouseover state?

      Go to Facebook, Twitter, Intercom, Slack, etc. and recreate little elements in your own Sketch artboard. Do this a little bit every day and the progress is staggering!

  3. 5

    Maybe the design fundamentals course from Laura Elizabeth can help you. I recently bought it but didn't found time to start it yet.

    https://designacademy.io/design-fundamentals/

    1. 1

      Has anyone on here done this? Would be nice to hear from a past student.

    2. 1

      Thank you. for sharing. Since you are not recommending hiring a designer as the first option,

      do you mind elaborating on why you think it's better to " do it yourself" ?

      1. 1

        Personally I like design but currently I’m not really talented at it, so I hope to improve my skills with the course from Laura.

        And therefore I want to try it myself. But if design is not your think I would say hiring an designer would be a good choice.

  4. 4

    I'm going to be really honest and I apologize in advance if you don't approve that:

    What I used to do (and you might say it's unethical) is find a well polished website, open my chrome inspector tool and copy...

    That's it. I'd suggest you get design specs for all your visual components from multiple websites. This way, you'll end up with a nice looking hybrid that does not look like an exact clone.

    Don't waste too much time and resources when you don't have any clue about what is good design. Be pragmatic, copy things that have already been proven and tested : land-book.com

  5. 3

    I find the blog (and newsletter) of Erik D. Kennedy very useful to learn some design/UI basics: https://learnui.design/blog/

    Especially interesting blog posts:

    1. 1

      Thank you. for sharing. So sounds like you decided to go the route of wearing the designer hat yourself (rather than hiring a designer) ? Do you mind sharing the reasoning behind that decision?

      1. 2

        In my opinion there are two separated 'tracks': UI design and visual design.

        I believe UI design is (for the most part) applying a set of rules, like colors, layout, grouping, alignment and fonts. With some tips/articles, it's possible to improve your design on your own.

        Then you have visual design, which requires more creativity. Think about animations, logo design, brand identity, etc. For those tasks I would definitely hire a designer.

      2. 2

        I've found that good designers are really expensive and not suitable for an early level project. Ok designers that are affordable generally have a super long wait time. And with the rest you will almost never end up with much better of a end result than just using templates or a framework and doing it yourself.

    2. 1

      Than you for the help

  6. 2

    I'm a Product Designer – my advice is to use the latest version of Bootstrap, and then don't write any CSS – just tweak variables. Tweak brand colours and typography. Copy them from somewhere you like. You're not going to build something best-in-class, but it'll be clean, solid and subtly distinctive.

  7. 2

    For my food site, I hired the main developer for bourbon.io he was not cheap but he produced exactly what I wanted.

    If you want to minimize cost, I would recommend finding a template in a framework you have a familiarity with. If you are not great at searching, you can actually hire someone on fiverr to do this for you. I did this once and asked for 2-3 options and specified the constraints I needed.

    If you have a framework that has enough components your comfortable using, I would recommend a few medium articles

    https://medium.com/@erikdkennedy/7-rules-for-creating-gorgeous-ui-part-2-430de537ba96

    https://medium.com/@jsaito/how-to-design-words-63d6965051e9

  8. 2

    I find a getting a 2nd pair of eyes to look at the product and extensive testing is a good way to refactor the design to make an aesthetically pleasing website. In terms of polish, always remember you should be shipping things you're slightly embarrassed to see in the wild. As long as you're solving a pain-point for your customers and they aren't complaining, it's okay to have a less than perfect website or app until you have $$$ to hire a professional designer. Focus on shipping something that solves a problem and is painless to use, polishing can come later.

  9. 2

    What you need is a UI Framework. I'm not sure what you're trying to build, but you'll be far ahead of the game if you take a design system that someone else built and create your app interfaces from that.

    Ideally, you want one purpose-built visual UI framework that has plenty of examples for how the individual components work together to create coherent views.

    http://photonkit.com/

    https://xel-toolkit.org/

    http://reactdesktop.js.org/

    https://github.com/atom/atom-ui

    https://webix.com/demos/

  10. 2

    As Kyle suggested, if you're comfortable, share your projects and you can get advice on what makes good design.

    If you want to instead invest time in upskilling yourself, I'd recommend playing around with existing websites. Find ones you like and think about what makes them so good. You'd surprised at how many websites actually share common styles and layouts. Just look at all of the Stripe looking websites out there (I'm definitely guilty of that with mine :P).

    There are also a few easy wins that will help you stand out nowadays:

    • colours: flat is best and you can find nice palettes at flatuicolors.com.

    • layout: make use of spaces and rounded edges. NomadList does this nicely.

    • fonts: sans serif is still in now, particularly bolder fonts. You won't go wrong with something default like Helvetica, but stand out with Roboto or Open Sans (Google Fonts have you covered).

    • content: believe it or not but the text on your page can be as important as how the site looks. Large blocks of incoherent text will ruin any good design. Go for simple and short sentences with plenty of breaks/padding in sections.

    • lastly, images! Good design makes use of crisp imagery, although you don't have to. Don't forget a shadow effect though ;)

    Good luck and do share if you want specific feedback!

  11. 2

    I started off with no design background and the first few apps I made were really ugly, even with Bootstrap.

    If you're technically skilled, my advice would be to build more. If your skills are mainly in a back end language such as PHP or Python, try learning more front end technologies. This will enable you to get the UX closer and closer to the vision of your ideal product. Having more things to build will push you to apply new design principles and make app design easier on subsequent projects.

    I'm not sure if this is repeatable or if it's just my nerdiness, but the thing that worked for me was cultivating a genuine interest in product design and UX. This is what got me into learning more front-end stuff and putting more focus on design and UX in my apps.

  12. 2

    Post what you're working with and let us help you.

  13. 2

    I have been wondering about that myself. Good question!

  14. 1

    In my opinion, the best thing to do for non-designers is to follow a few simple rules:

    • use fewer fonts and fewer font size variations

    • use fewer colors

    • use more whitespace (a lot more)

    • use soft shadows instead of hard shadows

  15. 1

    https://designacademy.io

    Learned about this free email course on design for developers from Startup for the Rest of Us podcast, episode 371.

  16. 1

    A) framework

    B) keep the design simple. The more stuff there is, the more can go wrong

  17. 1

    "Polish" is the result of a lot of subtle things done right. Here are some small wins that can help get you started:

    1. When users can interact with something, give it a subtle hover effect with a transition attached. Here's a simple example of a button that does this: https://codepen.io/zvphy/pen/VXeyqV

    2. Use the system font stack if you want apps to feel native (https://css-tricks.com/snippets/css/system-font-stack/). If you're building a website, it might be worth investing in a Typekit subscription to use Proxima Nova.

    3. If your app uses a light background and your fonts look clunky, incorporate antialiasing. This smooths the text. https://devhints.io/css-antialias

    4. Keep spacing and sizing consistent among all elements of your app. I think it's easiest to use rem, which is the font-size property of the HTML element. I explained it in Tip #5 here: https://zeph.co/cleaner-css

    5. For Electron, incorporate "Showing window gracefully" from their docs: https://github.com/electron/electron/blob/master/docs/api/browser-window.md#showing-window-gracefully

    6. Look at Dribbble app redesigns for inspiration. Notice how simple a lot of the designs are: https://dribbble.com/search?q=app+redesign

    7. Give websites a max-width, like how Indie Hackers and Nomad List don't stretch from edge-to-edge. You can do this with something like: body { max-width: 1200px; margin: auto; }

    And you are always welcome to post your designs and ask for feedback. :)

    1. 1

      Please don't mess with the antialiasing. It causes more problems than it solves when you change it from the default.

      1. 1

        I've seen problems with antialiasing on dark backgrounds, but never anywhere else. Could you give a specific scenario where it causes a problem?

  18. 1

    Thank you all who provided your input in such a short time. I am truly impressed by how vibrant and supportive this community is. Looking forward to building great relationships here!

  19. 1

    Thanks for the input guys.

    It's post like this, that remind me why I love indiehackers.

  20. -1

    This comment has been voted down. Click to show.

  21. -4

    This comment has been voted down. Click to show.