What is the Total.js Platform?
Tags: node, javascript, webdev, opensource
Published: 2023-01-30 15:12:54

The Total.js Platform is a collection of __Node.js server-side__ and __JavaScript client-side libraries__ targeted for __web__, __intranet__, __IoT__ and __hybrid mobile apps development__. The platform contains tools and apps for developers or IT companies. __The main programming language is JavaScript on both sides__. Developers can write apps quickly and easily in Notepad without any special tools or programs.

Libraries, components, and icons are all open-source under the __MIT license__. This means you can use them for commercial and non-commercial purposes without any restrictions or fees whatsoever. Total.js Platform is one of the most complex Node.js/JavaScript platforms in the world, according to us.


[![Total.js Logo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/kwzlnqemis84r0hu5j4y.jpg)](https://www.totaljs.com)

## Server-side

Our main server-side technology is the [Node.js Platform](https://nodejs.org/en/). We have written a framework called Total.js that uses Node.js. The framework allows you to create quickly and easily REST services, web apps, intranet apps, IoT data processing, etc. It works on Linux, Unix and Windows operating systems with low hardware requirements (you can run Total.js on e.g. RPI). The Total.js server-side framework supports most NPM dependencies and can be used with any database, such as PostgreSQL, MongoDB, MySQL, SQL Server, Redis, CouchDB, RethinkDB, etc.

This framework uses an MVC architecture and its primary goal was to provide everything necessary for web development. It contains a lot of helpful parts like HTTP server with full support of Web Socket, Server-Sent events, SMTP implementation, LDAP search, View Engine, NoSQL embedded database, Schemas, real-time merging and minification of static content (JS + CSS + HTML) and a ton of utilities. __The framework does not depend on third-party dependencies, but it does not prevent you from using them.__

> __Read me:__<br>The Total.js framework can be used with any client-side technology, including Vue, React, Ember, jQuery, etc.

- Size around 1.3 MB
- Basic memory usage is 8 MB
- Without third-party dependencies

## Client-side

Also, the Total.js Platform contains a client-side library called the Total.js UI library (previously jComponent). The main goal of the library is to create reusable UI components and single-page apps with long-term support. The library has implemented [the Web components architecture](https://developer.mozilla.org/en-US/docs/Web/Web_Components). It offers a lot of functionality like creating reusable UI components, routing, AJAX operations, localization, a template engine, versioning and a ton of helpers. You can write web or mobile hybrid apps without third-party dependencies. Our library includes high-quality open-source [Font Icons with more than 400 icons](https://componentator.com/icons/).

[![More than 400 icons](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/9f7ru99kntws8aj4x30p.jpg)](https://blog.totaljs.com/posts/1554872001ei71b/)

More than [300 reusable UI components](https://componentator.com/) have been prepared under the MIT license. You can browse all __Web components__ with real-time preview on <https://componentator.com>.

> __Read me:__<br>The Total.js UI library can be used with any backend technology like .NET, Java, PHP, Python, RoR, etc.

- `.js` libary 85 kB (gzipped)
- `.css` library 22 kB (gzipped)

[![UI Web Components](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8mp0s0khlkz88l6hhufs.jpg)](https://componentator.com/)

---

## Total.js Apps

A number of [useful open-source Total.js](https://www.totaljs.com/apps/) apps have been developed by us. The apps are written entirely in Total.js. The most used apps are:

### Total.js Flow

[Total.js Flow](https://www.totaljs.com/flow/) is a visual programming interface for low-code development accessible through a web browser. It's a strong alternative to **Node-RED** with many great features.

- [Flow website](https://www.totaljs.com/flow/)

![Total.js Flow](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/fg0deuv7d6s22pf9qbpv.jpg)

{% embed https://www.youtube.com/watch?v=7hfh3fWuoKg %}

### Total.js OpenPlatform

It's a portal-based solution that can be used as an intranet solution for small and medium companies or teams. OpenPlatform is a small app fully optimized for integrating third-party apps written in any technology.

- [OpenPlatform website](https://www.totaljs.com/openplatform/)

![Total.js OpenPlatform](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3qjfksfic7pq2w06k3rk.gif)

__Other apps:__
- [Total.js Code](https://www.totaljs.com/code/)
- [Total.js CMS](https://www.totaljs.com/cms/)
- [Total.js SuperAdmin](https://www.totaljs.com/superadmin/)
- Total.js TotalDB (coming soon)
- Total.js UI Builder (coming soon)
- Total.js HelpDesk (coming soon)

__Tools:__
- [Total.js OpenSync](https://www.totaljs.com/opensync/)
- [Total.js OpenMail](https://www.totaljs.com/openmail/)
- [Total.js OpenFiles](https://www.totaljs.com/openfiles/)
- [Total.js OpenAuth](https://www.totaljs.com/openauth/)
- [Total.js OpenLogger](https://www.totaljs.com/openlogger/)

## How do we make money?

It is very difficult to find funding for creating rich and open-source content. Primary funding is from support services and we help to code/develop solutions built on the Total.js Platform around the world. Then we have cloud services, stable partners and additionally, we are developing the Total.js Enterprise service that will give developers access to more open-source premium content like components for the Flow, UI Builder, CMS templates, etc.

__Working on the Total.js Platform for 10 years__, we evolved from a one-man show to an internal team of nine people.

- [__Make the Total.js Platform better, support it!__](https://www.totaljs.com/support/)
- [Have any questions? Contact us](https://www.totaljs.com/contact/)
- [Join Total.js Telegram](https://t.me/totaljs)