I was able to create it using Inertia and using router.reload() when needed to get each form step data. I used form.post to post each step to validate and a service to track each steps progress.
router.reload()