Technologio X - I choose you!

How to choose a front-end solution for your challenges?Before Ash Ketchum became an experienced Pokémon trainer, choosing the right one was not the easiest thing to do. Would Squirtle be able to handle fire and Charmander not succumb to the pressure of rocks? Should Pikachu always be the first choice?There has long been a joke in the front-end world that technologies that were current last week are obsolete in the current one. This is, of course, an exaggeration, but there is a grain of truth behind it.
The multitude of solutions really makes one's head spin. So what to do in a situation when we know what we want to create, but we are not sure which method will be the best to achieve the goal? With help comes the Frontend Pokedex - an overview of technologies ideally suited to a given design problem.
I need a lightweight and convenient to use information page....
Inthis type of project, it is important that the site works quickly and efficiently. 20 years ago, the best solution would have been to write it in pure HTML. Of course, maintaining such a project would be quite difficult and time-consuming. Fortunately, at this point we have solutions that offer us both the speed of "pure HTML" and the necessary functionality of developed frameworks. When creating such a project, it is worth paying special attention to two tools: Next.js and Gatsby. Both are based on a well-known library - React, but support rapid prototyping and deployment. In both you will find server-side view rendering (SSR) mechanisms, which incredibly speeds up the subsequent use of the site by users. These tools are additionally very developer-friendly, so project development using them should be quick and easy. It is also worth mentioning that using these solutions, our site will be search engine friendly and will easily cope with the requirements of our SEO specialists.
Who uses: Hulu, Nike, Playstation Network, Spotify, Airbnb, Braun
Developer availability: Very high. Basically, anyone who has had exposure to React can handle these tools.
I would like to effectively sell on the Internet....
Thereare plenty of integrated e-commerc solutions on the market. However, when we want our store application to run instantly, providing the best possible user experience, it is worth separating the core of the store from the tool responsible for displaying our products. In this aspect, the undisputed leader is Vue.js. Based on this library, the Vue Storefront platform provides an excellent user experience, combined with convenient development based on integrations with large, popular sales platforms like Magento, Shopware or Sylius. Because of SSR support, our store will work well with search engines. Vue also allows the creation of so-called progressive web applications (PWAs), so moving our store to mobile devices will be much simpler than building a separate native app for each mobile operating system.
Who uses: Netflix, Adobe, Grammarly, Alibaba
Developer availability: Medium, but growing at a rapid pace.
I have a structured and well-thought-out concept for an extensive application....
Becauseof its complexity, Angular is a natural choice. This framework, which has been actively developed for many years by Google, is a versatile solution with which we can quickly and securely design and execute even the largest applications. Popular and officially supported libraries will allow us to instantly connect to, for example, Firebase and take advantage of the authentication offered by Google, Facebook or Microsoft. In addition, a large library of extensible Material Design components, as well as clearly described rules and good practices, will make it easier for us to maintain the consistency of the entire application.
Who uses: Samsung, Deutsche Bank, BMW, Microsoft
Developer availability: Very high. Framework with established market position.
I would like to quickly prototype the idea and test it before implementing it....
Inthis case, the React application library would be a good choice. Created for internal use by Facebook engineers, it is still actively developed and maintained by this great social network. It will be perfect for rapid prototyping, and its great flexibility will allow you to choose optimal solutions. The whole ecosystem created around React will also allow in later stages of the project to turn it into a mature and powerful application, without having to change technology.
Who uses: Facebook, Instagram, Netflix, New York Times, Dropbox
Developer availability: Very high. The most popular frontend technology on the market at the moment.
I want to launch a mobile application...
Of course, we can write and run a dedicated native application created in one of the recommended languages (such as Swift or Kotlin) for each mobile platform. Or we can go another way and build a universal application - having a single code base, and run it on all popular platforms simultaneously. In this case, it is worth choosing one of the leading tools - React Native or Ionic. Both frameworks allow you to create advanced mobile applications without having to commit additional resources and resources to each platform. The biggest advantage of these solutions is a homogeneous and universal base, on the basis of which final applications are easily built. Both tools have extensive libraries of components and integrations, so taking advantage of access to the camera or other built-in features of our smartphones will not be a problem.
Who uses: Skype, Tesla, Airbnb, Uber Eats, Barclays, Electronic Arts, NASA
Developer availability: High. The frameworks are based on React and Angular - people with this kind of experience will handle them with ease.
I need a server application that...
Thismay come as a surprise to some, but there is nothing stopping us from creating a full-fledged server application using frontend technologies. With NestJS we can quickly build a system of any size or complexity. The framework is based on the popular Node.js server environment. It is a comprehensive solution with lots of modules available "in the box", allowing, among other things, to create microservices architecture, connect to popular databases, or create stand-alone applications. Modeled on Angular, the application architecture is transparent, and the extensive CLI (command-line interface) allows for instant creation of further modules and components.
Who uses: Roche, Adidas, Autodesk, Decathlon
Developer availability: Average. Those with experience in Angular combined with backend knowledge should have no problem working in this framework.
I need to get the backend up and running quickly for my application....
There, too, a tool based on Node.js comes to the rescue. Thanks to Strapi.io, in principle, in a few minutes we can launch a server with an administration tool that allows us to store and manage data. The plug-ins provided with the platform will allow us to instantly run email support, file uploads or manage permissions and roles. The simple architecture will also allow us to develop our system in the future, without investing a lot of money.
Who uses: IBM, Walmart, NASA
Developer availability: Medium. Just getting the platform up and running is very simple, but more knowledge is required to develop it.
Summary
Aswe can observe, the world of frontend is no longer as homogeneous as it once was. Before embarking on a particular project, it is worth taking a moment to consider whether the technology we want to use is really the right one. It's not worth succumbing to momentary trends, but neither should you cling to a solution you've been using "forever." When we get lost in the search for the right tool, the best idea is to enlist the help of an experienced team of specialists to help us make the best choice.