We present to you the article Nwose Lotanna, which was published on blog.bitsrc.io. There you can find a selection of the best frameworks and information useful for beginners as well as for experienced professionals.
In this article, we will rely on the State of JS data and findings, as well as the insights shared by JetBrains in its Annual Statement of Developers Ecosystem report.
Why State of JS?
Part 1: Frontend Development Frameworks
This is the component age, and not only in the frontEnd. Here we will look at the most in-demand frontend development frameworks in the order of most relevant determined by factors like happiness, show of interest in, ease of use and reach. Looking forward, looks like this is just the beginning.
With the rise of tools like Bit which let you easily share and reuse components to build new applications faster, composing them together and syncing them across projects, component-based frameworks are definitely the future.
You can create a new react application by using create-react-app toolchain, this is the most popular one out yet. To get started, run these in the project folder terminal:
npm create-react-app my-app
Vue js, created by Evan you and 234+ community lovers with more than 121,000 ⭐️ on GitHub is a very progressive framework for building user interfaces. It consists of an approachable core library that focuses on the view layer only, and an ecosystem of supporting libraries that helps you tackle complexity in large Single-Page Applications.
You can see from the chart that Vue has totally closed the marketing gap this year and almost every developer must have heard about vue. In my opinion, this was made possible through the great investment Evan and the team made in organising and being at meetups and conferences since 2017. However, there is also an obvious knowledge gap and more learning resources should be made on vue js by 2019 to cater for that. To get started building a vue app, Install view with npm like thus:
npm install vue
Google’s Angular with almost 44,000 ⭐️ on github is a platform that makes it easy to build applications with the web. Angular combines declarative templates, dependency injection, end to end tooling, and integrated best practices to solve development challenges. Angular empowers developers to build applications that live on the web, mobile, or the desktop. It has the most useful cli tool for beginners to easily get started, there is even a GUI client called console.
From the chart, you can notice a drastic change compared to the other two frameworks above, this is due to the use of biased data by way of framing survey questions eliminating angular js, which is also a kind of standalone framework different from angular. So we would not go into review the visualisation here. To install the CLI using npm, open a terminal/console window and enter the following command:
npm install -g @angular/cli
npm install — save redux
Facebook’s GraphQL with over 10,000 ⭐️ on github is a query language for APIs and a runtime for fulfilling those queries with your existing data. It provides a complete and understandable description of the data in your API, giving clients the power to ask for exactly what they need and nothing more, making it easier to evolve APIs over time, and enabling powerful developer tools.
There is obviously a big opportuniy for creating graphQL resources to cater for a lot of people who are intrested in learning it in 2019. Also, according to the chart we see the big gap of brand awareness covered almost completely in 2018. To install GraphQL, use npm:
npm install graphql
The Apollo GraphQL platform is an implementation of GraphQL that helps you manage data from the cloud to your UI. It’s incrementally adoptable and can be layered over your existing services, including REST APIs and databases. Apollo includes two open-source libraries for the client and server, in addition to developer tooling that provides everything you need to run a graph API in production with confidence.
We see a massive awareness improvement on the brand in the chart above and an even bigger room to cover. Also, almost everyone that used Apollo would really use it again. Tutorials and more resources of apollo and graphQL integration would really help for more success in 2019. To install, use npm:
// installing the preset package
npm install apollo-boost graphql-tag graphql --save
// installing each piece independently
npm install apollo-client apollo-cache-inmemory apollo-link-http graphql-tag graphql --save
Part 3: Backend Frameworks
Not so much happened in this space, but express still reigns supreme and no other backend framework has been able to capture developer satisfaction like express.
With over 41,000 ⭐️ on github, Express is a fast, unopinionated, minimalist web framework for node.
npm install express — save
Although enough data to visualise growth over the years was not available, Next has had a good year of adoption and is the most in-demand backend framework after express.
npm install --save next react react-dom
Over the past year, koa’s popularity grew although the satisfaction rate seem to be kind of stagnant as express still owns the space, but considering the level of satisfaction of the rest of the backend frameworks like meteor we can say koa is doing really well and there is plenty room for improvement.
Koa with over 24,000 ⭐️ on github is a new web framework designed by the same team behind Express, built to be a smaller, more expressive, and more robust foundation for web applications and APIs. By leveraging async functions, Koa allows you to ditch callbacks and greatly increase error-handling. Koa does not bundle any middleware within its core, and it provides an elegant suite of methods that make writing servers fast and enjoyable. To install, use npm:
npm install koa