Happy birthday in French is typically written as "joyeux anniversaire," which literally means "joyous birthday." "Bon anniversaire" is another way to wish someone a happy birthday, with "bon" meaning "good."
In the French-speaking areas of Canada, "bonne fête" is a prevalent birthday greeting. "Bonne fête" literally means "good party or holiday," but it is more of a generic term that is also used for other festive occasions. In French, "anniversaire," the word for birthday, is a masculine noun, which is why the masculine form of "bon" is used with it. "Fête," the word for party or holiday, is a feminine noun and takes the feminine form "bonne."