In no particular order:
He loves you and you love him: You have a natural and unforced affection for each other. You enjoy each other’s company. You feel happy that he wants you as much as you want him. On a normal day, you find it a pleasure to please him, and vice versa. For some people, this requires a physical attractiveness; for others, that is not so important.
He has the maturity to keep loving you even when he doesn’t feel like it: chooses to habitually act in a loving way, doesn’t use love as something he gives or withdraws to control or manipulate you or to express anger or negative emotions.
He has integrity. You can trust him to tell the truth, to keep your agreed-upon confidences, to be where he says he will be, to do what he says he’ll do, and to own up and make amends (such as he can) when he fails.
He has communications skills–he knows how to complain or disagree with you and with others without making personal attacks, being negative, bottling it all up and denying anything is wrong, and so on. He knows how to let others know when their communication methods are not working, too. He is neither a pushover nor a bully when it comes to working out differences with others.
You share priorities and both value the things you both think are most important. From this, you respect his opinions even when they do not agree with yours, because they are based on principles that you also believe in.
He is responsible. He routinely acts in accordance with your shared highest priorities, whether that means living within your means, delaying gratification, doing the work necessary to support yourselves, and so on.
These things imply that he’s not enslaved to something that would ruin his character, whether that is alcohol or work or self-gratification. It implies a certain level of self-mastery. It implies an emotional bond that will elicit the best from each of you for each other and for those you care about. On the other hand, it implies that while he has a certain number of faults, those are in areas that you are willing to live with. To a certain degree, it helps if your tolerance and his faults are complementary, and vice versa. If you don’t find being screamed at a particularly negative way to communicate for instance, the two of you might work out your differences in ways that make others think you are going to split up, but that don’t turn a hair on the two of you, because you don’t take volume that seriously.
It is very important, though, to not let the haze of rampant affection let you lie to yourself about whether or not a prospective spouse has faults that you really ought to deem non-negotiable. That is where it pays to consider whether he or she gets along with your friends and family, and if they don’t, why they don’t. (That depends a great deal on what kind of relationship you have with your family and why you chose your friends! If you chose your friends for bad reasons, then a good choice for a spouse is probably not going to like them. If you chose your friends wisely and your prospective spouse unwisely, it will show up in a relationship with friends that they will let you know in one way or other is not working.)