I think there's a tutorial on the wiki.
But a quick rundown on what you need:
A .ship file
A .variant file
An entry in ship_data.csv
An entry in wing_data.csv
To make the ship and variant file you can use Ship and Weapon Editor, to edit the .csv's I suggest doing it yourself and familiarizing yourself with them, you can open them in Excel instead of notepad to make it MUCH easier to look at and edit.
To get them to spawn in the markets you need to add them to a BP by adding the name of a BP to their tags in wing_data.csv, and/or add their ID directly to a .faction file under "knownFighters", similar to how you'd get normal ships to spawn in markets.
I'm pretty sure the wiki has some breakdowns of the ship_data- and wing_data- .csv's if you need them.