Earlier there is not decentralized platform where user can store, upload and share access to different users. As it is decentralized it is more secure and transparent.
Challenges I ran into are mostly in interacting smart contract from frontend. I mainly got transactions error and as documentation changes very fast which make it difficult to solve as solutions from stack overflow are from older versions.
But documentation itself helped to solve the problem
Discussion