How Can a Programmer Design a Website? (That is actually good)
Tags: html, design, webdev
Published: 2021-07-19 14:01:57

As a web developer, the #1 topic I've been struggling with is designing. I managed to master HTML\CSS, React.js, Node.js, TypeScript, Java and Spring Boot but something about my websites always felt wrong.

As I began working on my big project called Partydeck, this issue became a real struggle.

This is the homepage I had designed last March. It looks clean, the theme is clear, and it's easy to understand what the user is expected to do. Yet, something is missing.

![The Old Website](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9u23bqftca7yvksbtl35.png)

This is the homepage I am currently designing. You can see it is in a whole new level, containing colorful interfaces and is able to keep the user's eyes hooked for a longer time. 

![The New Website](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hq8a0zy6fgg4v1w3w8fe.png)

## What to do?

Here are some of the tips I found the most inspiring and that have helped me the most. Do you have any other good tips? Let me know in the comments!

### Use a designing software

The reason this is so important is because it's much more easy to experiment and see what works best when you design your website in an external software before actually programming it.

You don't have to master Photoshop or be the best Adobe user on the planet, just have the minimal understanding of the software of your choice.

My personal preference is **Figma**, because... it's made of React.js, which I absolutely love.

A great example of the usage of Figma for designing websites can be found in this video:

{% youtube iHXB34ZsjHQ %}

### Get Inspired

If you design a To-Do app, get to Todoist, Any.do or any other website with a purpose close to yours and get inspired by their design.

In my case, my website is similar to Quizlet and Kahoot, so I visited their websites many times to get inspired.

### Don't be afraid to use colors

The only website I have ever seen with an almost 100% monochromatic UI is Instagram, and the reason it looks good is because the posts are the ones who keep the user's eyes hooked. Unless you design a social media application, use a color theme.

I don't want you to pick an exact shade, but a color from a pre-made theme such as the Material color theme.

Once you have a color theme, here's what you do:
- What is your **primary** color? Use it for ~60% of your interface. In my case - the Tailwind.css indigo.
- The secondary color should be similar to the primary, but a bit lighter or darker. You can use different shades of the same color to spice things up.
- What are your **accent** colors? Picking one is interesting, but in the context of my application I thought I should pick more. Use it in unexpected locations.

A great usage of color themes can be found in the [Quizlet](quizlet.com) website

## About Me And My Project

Last October, My friend gave me an excellent app idea. I decided to develop it and gained tond of experience regarding app development, project management and product design. I'm planning on posting a lot about this topic later on.

Check out my project - 

{% github itays123/partydeck %}