Hello Said, I'm also using IPFS for the same purpose as you are. But I'm still working on the part of saving my IPFS generated hash on to the ethereum contract and is down with an error of
Uncaught (in promise) Error: invalid address
I think its because of me trying to save the hash as type bytes in the contract. It would be really helpful if you could shed some light on how you achieved it?