FlashFire is the most advanced on-device firmware flasher available for rooted Android devices. It can flash full firmware packages from various manufacturers, as well as apply over-the-air (OTA) and ZIP updates - all while maintaining root, and without using a custom recovery. It also offers full device backup and restore functionalities in several formats. Relevant files can be stored on internal storage, SD cards, USB connected storage, or can even be streamed directly to and from your computer using USB or Wi-Fi.
FlashFire is the spiritual successor to the Mobile ODIN app, which was a similar solution (using completely different methods under the hood) exclusively for Samsung devices on older Android versions.
FlashFire is an extremely powerful application, it should be used with caution. Data loss, soft-bricks, and even hard-bricks are possible if used incorrectly. Unless you are an expert user, consult FlashFire's website and the XDA discussion thread before doing anything potentially destructive.
Note: currently all functionality is unlocked without purchasing Pro. This may change in the future!