So an important part of making a theme is understanding what you want. The best thing to do to start is come up with a mockup. It doesn't have to be pretty, or even look close to what you want. The point is to come up with something so when you start coding it out that you have an idea of what you want it to look like.
Some example questions to use when creating your mockup:
- Where do I want my banner or logo?
- Where do I want my user information and login?
- Where should my navigation be?
- Do I want a grid layout or a traditional forum layout?
- Do I want a sidebar?
- Am I going to include an embed? (cBox, widgetbot, titan) If so, where do I want it to show?
- Am I going to plan for mobile? If so, where should I put everything on a tablet, on a phone?
- Do I want big avatars with mini-profiles or just simple avatars with minimal mini-profiles?
These are basic questions. You should certainly write down your wants/needs when you are starting this process and then develop from there because you'll find as you design they may change a little as you go but also you'll be able to weed out the things you want because "they are a trend" and what you need "because they are important to your users/potential users". It's really important to know the difference there. I can't count how many times a site has a header box with half the information filled out because it's considered "trendy" but they have no idea what to put in those boxes.
Once you've started to figure out the answers to your questions you should make a mockup. Whether this is in paint, hand drawn on a piece of paper or made in a pro program like Adobe XD, is totally up to you but this is where you get a general idea for your site and you'll start to create the theme based off of.
Now that you have this, you're likely ready to move on to the coding phase.