We are asked to look at a lot of courtyards, usually behind terraced houses, usually shaded, usually paved in something the owners inherited and dislike. The same handful of moves work almost every time.
Paint the walls before you do anything else
A warm off-white on three walls will do more for a dark courtyard than any amount of planting. It bounces what light there is back into the space and gives the planting something to read against. It is also the cheapest thing on the list by a wide margin.
Avoid brilliant white, which goes grey and cold, and avoid dark grey, which is currently fashionable and makes a small shaded space feel like a well.
One large plant beats nine small ones
A single multi-stem tree or a tree fern gives a courtyard a canopy, a shadow and a sense of height. Nine pots of bedding around the edge give it a fringe. In a small space the vertical dimension is the one you have got, so use it.
Light it from low down
Uplighting through foliage onto a pale wall turns a courtyard into a room after dark, which is when most people are home to look at it. Two or three low-output fittings on a dusk timer are enough. Bright downlights from the house wall flatten everything and are the most common mistake we are asked to undo.
Be realistic about lawn
Grass needs about four hours of direct sun to hold on. Below that it thins, moss takes over, and you spend every spring trying to rescue it. In a shaded courtyard, paving with generous planted edges is the answer, and it will look better in February too.