Such a loaded question.
The thing developing web apps is to find a need for the app, research what is already out there, find the most popular app and improve on it. Add features or content that was missed on the initial development. I have written quite a few small apps for industry that assist in web design and development and found that the best apps are simple. Don't make them over complicated, keep in mind that most apps are run on small devices, many developers miss that.
They design and develop on a desktop and forget just how small things appear on the mobile devices that will view the app.
The time it takes will depend on the app, your knowledge of the topic, the knowledge you have of the platform, and of course how good you are with the development language and tools that are available for that language. I found that as I developed the apps I was working on each app became a little more complex and was developed a little faster based on my comfort level with the tools I was using.
One thing I cannot over stress. Test, Test, Test before you deploy. The worst thing that can happen to a developer is to develop a popular tool and have it full of bugs. That is the quickest way to kill a promising business. I have fixed many apps for people that deployed too soon, sold a good number of apps, and once it got out that the app was not working as intended they could not overcome the negatives that were associated with the app. Even after everything was corrected.
You will always have small bugs that may slip through, but be on top of them and do everything you can to take care of the people that purchased the app with the bug. Sometimes that may mean a FREE updates and upgrades for a while, a small price to pay to keep your users happy.