Tasks we solve with the help of Node JS

Tasks we solve with the help of Node JS

In brief

  • 01
    Kind of tool

    Node JS platform for web development based on Java Script

  • 02
    Where we use it

    VPN app for a large entertainment service

  • 03
    Tasks we solved with this technology

    Configured the process of payment acceptance

    Created a mechanism for collecting statistics

    Reduced server load

  • 04
    Results for client

    50,000 downloads of the app on Google Play in the first three months

    6+ platforms on which the app works

    Fast, 6-month application development period

Project: VPN app for a large entertainment service

Our client is the largest content provider in Canada. One of its projects is an entertainment service: more than 40 million published videos and 350 thousand users online every day.

Users of the service from some countries had problems with access: they could not watch content due to blocking. OrbitSoft solved this problem. We developed a VPN-app for six different platforms, which resulted in a substantial increase in the number of customers for the service. Read more about the development process in this case study.

The app is localized in more than 30 languages, available for users from many different countries.

Why we chose Node JS for development

We got involved in the development process after a previous contractor had failed. The program was slow, the payment system wasn’t working correctly, and there were numerous repeated fragments and bugs. At our planning stage, we made decisions regarding which technologies to keep and which to replace.

We decided to keep Node JS for the following reasons:

  • Asynchrony combined with an event-driven approach. It’s convenient to program interactive applications that depend on user actions.
  • The large library of Java Script components simplifies development. The libraries are constantly evolving, and new ones are being created regularly.
  • More than 500,000 Node opensource solutions/packages allow you to create any kind of functionality.
  • V8 engine. Compiler allows you not to lose speed in developing large applications.

What tasks we solve with Node JS

We use Node JS for the server part of the app: the tool allows the app to perform multiple tasks simultaneously and not to hang. Rich library of components and open-source solutions provides an opportunity to modify the application functionality to the business tasks.

We set up payment acceptance in the app. To use the app, the user connects a subscription. Payment is deducted every month after the 7-day free period.

The logic of accepting payment was unfortunate in the app — before choosing a tariff, the user had to create an account. This put a lot of people off: users didn’t want to enter personal information before the y knew the cost of service.

To make the app more accessible to customers, we changed the payment logic — you can now subscribe to the app without creating an account. This made the app more accessible to customers.

You can now subscribe to the app without creating an accoun

Set up the collection of statistics. Our client analyzes the behavior of its users: which videos are popular, which are not, the age of users viewing the content, how often they view content, and so on. Analyzing this behavior allows the company to constantly improve the service for their customers, thereby increasing revenue.

We set up statistics collection, and report creation, using Node JS.

The client can set any parameters they need and generate a report.

Protect data from fraudulent attack. Any programming tool has its own vulnerabilities, and hackers and fraudsters can use them to steal user data, content, or development data. We took Node JS vulnerabilities into account when creating the application. As a result, data and code are safe.

This is part of the code for setting up the server and using the server software.

Results of working with Node JS

The app was launched in the App Store in August 2020. We released the updated and corrected version just six months later, in January 2021. With all the modifications and improvements, the project took about 10 months.

The application can be installed on 6 different platforms: iOS, MacOS, Android, Android TV, Fire OS, and Windows.

It has been downloaded and installed over 250,000 times.

Technical block

Windows: All versions starting from Windows 7

  • Integrated development environment: Microsoft Visual Studio 2019
  • Design development: Microsoft Expression Blend
  • Programming language: C#
  • Windows Presentation Foundation (WPF)
  • NET Framework 4.7.2
  • WiX toolset to create an installer

iOS

  • Programming language: Swift
  • iPhone, iPad
  • Minimum version iOS: 12.0
  • Libraries: Firebase (Analytics, Messaging, DynamicLinks), Google IDFA Support, Facebook SDK, Lottie, Toast-Swift, PlainPing
  • Build system: CocoaPods

macOS

  • Programming language: Swift
  • macOS
  • Minimum version macOS: 10.14
  • Libraries: Lottie, Toasts, PlainPing, SRTabBarController (with changes), CustomSegue, CustomButton, FLOPageViewController
  • Build system CocoaPods, Swift Package

Android

  • API level 21+
  • Android, Android TV, Fire OS
  • Phones, tablets, TV
  • Programming language: Kotlin
  • Patterns used: MVVM
  • Libraries: Firebase (Cloud Messaging, Analytic, Crashlytics), Google Play Billing Library, Leanback, AndroidX, Lottie

Frontend

  • React.js
  • Vue.js
  • WordPress

Backend

  • Node.js
  • TypeScript
  • NoSQL (MongoDB)

Libraries

  • Express.js;
  • moment.js;
  • Mongoose.js;
  • jsonwebtoken.js.

Whatever your needs, we can help!

Tell us what problems you’re facing with your business. We look forward to hearing from you.

Получите ответ по смс

Ваше сообщение успешно отправлено!
Представьтесь пожалуйста
Укажите номер, на который придет ответ
Нажимая на кнопку, вы даете согласие
на обработку персональных данных.