I am a python developer and have few ideas for a saas web application. I understand the basics of html, css, javascript, but confused about what front end-frame work to learn. I can manage the backend with Flask/ Django. How should I get started?
How dynamic does your webapp need to be? Can it do it's main function and provide value with back-end rendered HTML? If yes (or mostly yes) building that way will be much faster to test your idea. Some AJAX can be used as necessary.<p>If you do need (or simply want) to use a front-end framework, I would pick Vue.js as it's designed to be 'gradual' and so has a smoother learning curve. I suggest using single file compoonents (.vue extension) with properties and events and go without a central shared state.<p>Historically, React has been more popular and has a bigger job market. e.g. I use React at work and Vue for personal projects. I can't comment much on Angular other than the 1.x/2.x+ split isn't great for googling answers and many Anguar apps I've used are slow.<p>"Focus on product" as @maxxxxx puts it is the best advice. Work backwards from a goal. E.g. I want to release a product with x,y minimal features by z date on Product Hunt. Try to get others' hand on your app to get feedback and drive development based on usage/needs.
Pick a popular one, stick with it and focus on the product. They are all good enough to get you going. Finding customers is much more difficult than dealing with the technology.
I'd recommend just using plain JavaScript. There's a great blog article by Githubs engineering team about how they removed Jquery from their front-end and now rely just on vanilla JavaScript: <a href="https://githubengineering.com/removing-jquery-from-github-frontend/" rel="nofollow">https://githubengineering.com/removing-jquery-from-github-fr...</a><p>Also, don't be afraid of embracing multi page app versus going for a single page app (they're largely overrated).<p>For front end CSS design framework, I'd recommend something like Bulma. Very easy, modern and CSS-only. You can learn it all in less than an hour.
If you're familiar with Django, just go for it. The documentation is really nice and it is batteries included: admin panel, authentication, permissions and more. All this free stuff will let you focus on your app instead of what is around it.<p>For the frontend, it depends on your goals. If you need a quick prototype, just use the Django templating engine and ship something quick. If you want to learn, choose a popular frontend framework and stick to it. They are all pretty good. Check their API / ecosystems and pick the one you like :)
Use Django. Check out the major frontend frameworks (React, Vue, or Angular) and pick the one that looks good to you. From there, you should be able to find tutorials on how to hook up that framework with Django.