Yes I have. Adding a single can be done fairly easily. If you download the the .py files I linked, read through the cards and you can get an idea of how the coding architecture works. 1) create a .py script (and place it in a cards folder per the other posts instructions) to map out the card behavior. 2) go to the custom_card.json file to tell the game engine where to look for the .py script, a picture for the card, card type, name, etc.
(if you're just adding a custom card to an existing hero deck) 3) add all of the information from step 2 to the cards.json instead
4) add the card ID to the deck file of whichever hero/deck you want to add it to