The With Fire & Sword module system can be downloaded from a link on this page
https://www.taleworlds.com/en/Games/FireAndSword/Download
Use this guide to set up python and the module system https://forums.taleworlds.com/index.php/topic,240255.0.html
To get a basic understanding of how the code works and is structured, go through this M&B module system documentation in order https://forums.taleworlds.com/index.php/board,12.0.html
Look at these links before making a campaign map https://forums.taleworlds.com/index.php/topic,162501.0.html https://forums.taleworlds.com/index.php/topic,367905.0.html
With Fire & Sword has one annoying difference from M&B and Warband. If you change a troop name in module_troops.py or a weapon name in module_items.py it doesn’t appear in game because names are taken from the translation CSV files as opposed to the module system. Personally, I would recommend deleting all the files in your mod’s languages folder so you only have to make changes in the module system. However, this will mean game dialogue will be mainly English, but with some Russian until you track down and translate the Russian bits in your module system. If you are only changing troop names for example you could just delete the ../languages/en/troops.csv file without introducing Russian dialogue, but eventually it is a problem that needs to be tackled.
Other useful information can be found here https://forums.taleworlds.com/index.php/board,171.0.html
With Fire and Sword runs on older Warband engine, so use its header_operations.py file to check what commands it can handle when using Warband OSPs etc.
Good luck. If you run into problems, you can always post and questions in the Q&A thread https://forums.taleworlds.com/index.php/topic,6575.27480.html