Davy Greenwind
Just some guy
Adventures in Rokugan 5e has a Shinobi class. Focuses on stealth and gadgets. It's pretty neat
My initial thought too was make it a subclass, but honestly having it as a background is probably the better way to go. Then depending on the ninja's specialty you can use various classes - Rogue (infiltration and assassination), Fighter (highwaymen, ambushers), Ranger (sniper assassin), Sorcerer (mystical ninja abilities), Monk (unarmed assassin) and so on. Could do an entire Ninja campaign that way and still have class variety.I'm going to be boring and say Ninja should be a background, with proficiency in Acrobatics, Stealth, the clan secret language/hand signals, and either Poisoners kit or Disguise kit. Maybe each clan could offer a different feat? Alert, Lucky and Skilled all fit, and Magic initiate goes a long way with minor illusion.
Between various monk and rogue subclasses I think the mechanical fantasy is actually pretty well covered. The assassin covered the murder ninja and the thief's fast hands covers the smokebomb tossing ninja that climbs around.
The background also allows for wizard ninjas, fighter ninjas, etc without making a subclass for each class.
Can you make at least 4 subclasses for Ninja? If not, I'd say it should be a subclass and Shadow Monk covers this niche very well.The Shadow Monk covers 90%+ of the pop-culture ninja themes quite well. Stealthy, shadow teleporting, surprise attacks, nerve cluster poke disables, martial weapon use (monk dedicated weapon), wall-running, etc. The only thing it doesn't really provide is the ability to do disguises or poison, but most pop-culture ninjas prefer to wear ski masks and black gis instead of looking like "just another peasant in the field when the samurai walk past."

(Dungeons & Dragons)
Rulebook featuring "high magic" options, including a host of new spells.