How to choose the right javascript framework and how to get started?


its my first post on stack so I'm excited for each answer.

I have a really big problem in choosing the right javascript framework. Just some personal information, I know the basics of javaScript, I can write jQuery and of course I know HTML5 and CSS3. But I want to jump into server side applications, as many others too, I guess. I'm reading since months in the web about all the different frameworks but it's just so complicated to decide for one.

Some days ago I started to try angularJs, but for some reason I didn't really understand it, as it goes deeper, because I don't really understand the documentation and as far as I searched, there are not much videocasts out there. I can learn much better with videos.

Then I switched to meteor.js but their documentation is even more complicated and there are also not much videos out there. While reading about meteor I headed over to node.js, because it was said, its easier understandable if I understand node.js. But until I understand node.js there is much time lost. I know I have to learn it, but I just want to start with a client side framework which easily connects then with node.js.

My basic intention for now is, just to start with a real basic todo app, just for myself to learn it and maybe add more and more features later. Some day I want to go on and try another app and another etc. It's a long way. But I can't choose a framework for it. I want something, which is pretty open to different use cases, wether its a small or a big app. Just in case for the future. But mostly when I'm reading about a framework, they also say something about commonJS, underscore.js etc. and it just confuses me, because I always think I have to learn all that stuff.

So what's the best way to start? Should I just go back to Angular and try it further? Should I just try to write it on my own and look into the docs when I need something, or should I read the complete doc first? Same for meteor. And I also have backbone always in my mind, if its maybe a better one. This area is so overwhelming to start, so what's your experience? How did you start and whats the best way? I dont want to loose more time for senseless reading with no decision.

Thank you so much for your help.

By : chillmao


I was confused too when I started AngularJS (not that I am an expert now) but after a while you'll get it, and about videos i found these links and those helped me a lot:

Hope this help.

I am putting node.js through its paces right now, without using any of the frameworks. I am ignoring the frameworks right now because I want to working out what I can and cannot do wiith just node.js So far, I have gotten node.js to respond with a hello statement, a JSON statement, the contents of a text file including a rendered HTML file, next on the list is a record from a Mongodb database. I also broke an HTML page into a header file, a body file and a footer file and I used promises from the q.js library to render the whole file HTML page as a single unit. Out of necessity, I am rendering all HTML pages as dynamic but I am researching into rendering static pages.

I also implemented node.js with SSL the day before yesterday, I worked out how to export node.js to heroku and I need to implement redirection from http to https.

Once I am comfortably if not thoroughly - "thoroughly" might be overkill - familiar with node.js without the frameworks, I'll be adding frameworks such as express.js and one at a time and see what I can do with each of them separately. I believe that this one-framework-at-a-time onion layer approach is the surest and least time-consuming way of mastering node.js with a reasonable level of confidence. And the approach is realistic in its doability because we are talking about only three or four frameworks.

I am surprised that you never explored bootstrap.js at the front end - at this point, I can do bootstrap.js in my sleep - and that you never looked into AJAX calls, which allow asynchronous communication with the back end.

This video can help you solving your question :)
By: admin