Total.js para software empresarial de verdade

Construa mais depressa. Domine o stack.

Software empresarial sem camadas desnecessárias.

O Total.js combina um framework Node.js rápido, componentes UI prontos para produção e aplicações comprovadas para que as equipas construam dashboards, portais, produtos SaaS e ferramentas internas com menos código de ligação e mais controlo.

0dependências
300+Componentes UI
MITlicença
totaljs.es / software stack
Core do backend

Encaminhamento, actions, REST, WebSocket, schemas, ficheiros, views, e-mail e controlo em tempo de execução num só lugar.

jComponents

Inputs, datagrids, formulários, gráficos, dashboards, modais e interfaces prontas para produção.

# Framework server-side Node.js
$ npm install total5

# Total.js CLI
$ npm install total5 -g
$ total5
# traduzir, minificar, empacotar, extrair, editar
# proxyclient e servidor web local instantâneo
Node.js
NoSQL
WebSocket
API/REST
Actions
Comece com uma base sólida

Um stack que compreende, expande e controla

O Total.js mantém as peças importantes próximas: backend, UI, dados, comunicação em tempo real e lógica de negócio sem distribuir o seu produto por camadas desnecessárias.

Framework

Uma base Node.js sem dependências para APIs, sockets, painéis de administração, portais, aplicações internas e produtos de longo prazo.

  • Encaminhamento direto e ações limpas
  • Schemas, validação e acesso a dados
  • REST, WebSocket, e-mail, ficheiros e views

jComponents

Uma camada UI pensada para aplicações empresariais: componentes reais, binding simples e ecrãs prontos para funcionar sem stacks frontend pesados.

  • Formulários, datagrids, gráficos e dashboards
  • Bindings automáticos e views leves
  • Mais de 300 componentes para produção
Framework + jComponents

Um backend. Uma filosofia de UI.

Rotas, actions, schemas, views, bindings e componentes encaixam-se naturalmente. Menos código de ligação, menos decisões e um caminho mais limpo da ideia à produção.

Framework puro

total5 / node.js

Uma estrutura clara para lógica de negócio, APIs, sockets, jobs e processos reais sem ruído de framework.

framework.js
// Rotas, schemas, base de dados, e-mail, TMS, ficheiros, jobs e sockets
require('total5');

exports.install = function() {
	ROUTE('GET /', 'view');
	ROUTE('+API ? orders-query      --> Orders|query');
	ROUTE('+POST /api/orders/      --> Orders|create');
	ROUTE('SOCKET /live/ @json <2MB', live);
	ROUTE('FILE /invoice/{id}/', invoice);
	ON('service', counter => counter % 5 === 0 && ACTION('Orders|sync').callback(NOOP));
};

NEWACTION('Orders|query', {
	query: 'page:Number, q:String',
	action: function($) {
		DATA.find('orders')
			.search('email', $.query.q)
			.paginate($.query.page || 1, 20)
			.sort('dtcreated_desc')
			.callback($);
	}
});

NEWACTION('Orders|create', {
	input: '*email:Email,*total:Number,items:[Object]',
	output: 'id:String,email:Email,total:Number,dtcreated:Date',
	publish: true,
	action: function($, model) {
		model.dtcreated = new Date();
		DATA.insert('orders', model).callback(function(err, doc) {
			if (err)
				return $.invalid(err);

			MAIL(model.email, 'Encomenda recebida', 'mail/order', doc, NOOP);
			$.success(doc);
		});
	}
});

NEWACTION('Orders|sync', {
	action: function($) {
		// Jobs em segundo plano utilizam o mesmo pipeline de actions
		$.success();
	}
});

function live($) {
	$.autodestroy();
	SUBSCRIBE('Orders|create', order => $.send(order));
	$.on('message', (client, message) => ACTION('Orders|create', message, client).callback(response => client.send(response)));
}

function invoice($) {
	FILESTORAGE('orders').read($.params.id, $.callback);
}

Total.run();
Encaminhamento intuitivo
Actions reutilizáveis
WebSocket integrado
NoSQL e schemas
MVC e serverless
Escalável e simples

UI com jComponents

spa.min@20

Construa formulários, dashboards, tabelas e fluxos completos com componentes feitos para ecrãs de negócio reais.

ui.html
<!-- Biblioteca UI client-side com estado e componentes isolados -->
<script src="https://cdn.componentator.com/spa.min@20.js"></script>
<link rel="stylesheet" href="https://cdn.componentator.com/spa.min@20.css" />

<!-- UI multilingue pronta a usar: @(Orders), @(Save order), @(Customer) -->

<ui-plugin path="orders">
	<ui-component name="input" path="?.filter.q" config="placeholder:Pesquisar encomendas;autofill:1"></ui-component>

	<ui-component name="validate" path="?.form">
		<button class="exec" data-exec="?/save">Guardar encomenda</button>
	</ui-component>

	<ui-component name="datagrid" path="?.orders" config="margin:0;click:?/detail">
		<script type="text/plain">
		[
			{ name: 'email', text: 'Cliente', width: 220 },
			{ name: 'total', text: 'Total', align: 2, template: "{{ total | format(2) }}" },
			{ name: 'dtcreated', text: 'Criado', template: "{{ dtcreated | format('dd.MM.yyyy') }}" }
		]
		</script>
	</ui-component>

	<ui-component name="linechart" path="?.sales" config="height:180;type:curves"></ui-component>

	<ui-bind path="?.online" config="text:value + ' online'"></ui-bind>
	<ui-bind path="?.order" config="template">
		<script type="text/html">{{ value.email }} · {{ value.total | format(2) }}</script>
	</ui-bind>
</ui-plugin>

<script>
PLUGIN('orders', function(exports) {
	exports.reload = function() {
		exports.tapi('Orders|query', exports.model.filter, function(response) {
			exports.set('?.orders', response);
		});
	};

	exports.save = function() {
		SETTER('loading/show');
		exports.tapi('Orders|create ERROR @showloading', exports.model.form, function(response) {
			SETTER('loading/hide');
			PUSH('?.orders', response);
			exports.set('?.form', {});
			SETTER('message/success', 'Encomenda guardada');
		});
	};

	exports.websocket = function(message) {
		PUSH('?.orders', message);
		EMIT('orders/live', message);
	};
});
</script>
300+ componentes
Datagrids e formulários
Bindings automáticos
Dashboards e gráficos
UI pronta para o negócio
Páginas mais rápidas
Apps construídos com Total.js

Produtos reais, uma única base

Flow, OpenPlatform, CMS e outras aplicações Total.js não são demos. São produtos funcionais construídos com a mesma base que pode usar para a sua própria plataforma.

Flow

Automatização, integrações e processos de negócio ligados a APIs, serviços e IA.

OpenPlatform

Uma base de portal privado com identidade, aplicações, utilizadores e acesso controlado.

CMS

Gestão de conteúdo que pode funcionar de forma independente ou integrada numa solução empresarial maior.

Code

Editor de código web colaborativo para desenvolvimento em Total.js, a correr diretamente no seu próprio servidor para alterações mais rápidas e controlo total.

UI Builder

Construção visual de interfaces para dashboards, portais, formulários e ecrãs de negócio.

Todomator

Gestão de tarefas para equipas que precisam de prioridades claras, execução e foco operacional diário.

Enterprise

Tables

Um workspace PostgreSQL no-code para desenhar tabelas, ligar dados e gerir registos com vistas personalizadas.

Mais apps

Ferramentas construídas com a mesma filosofia: práticas, diretas e prontas para trabalho real.

Desempenho para produtos reais

Lance mais cedo.
Escale com confiança.

Uma base mais rápida significa ciclos de entrega mais curtos, menores custos de manutenção e software empresarial que pode continuar a crescer sem reconstruir tudo.

Comparação de velocidade de frameworks
Total.js
100%
Fastify
90%
Koa
77%
Express
70%
NestJS
67%
Sails
60%
Meteor
55%
Hapi
50%
Apps nativos ligados

TotalDesktop Suite

Ferramentas nativas para macOS e iPadOS concebidas em torno dos fluxos reais do Total.js: recursos, código, monitorização, projetos e trabalho diário.

TotalResources app icon

TotalResources

Faça a gestão de conteúdo multilingue numa app nativa: tradução, correção ortográfica, revisão e suporte de IA para cada texto do produto.

Multilingue
Total.js API
Athena AI
MCP / MVP
TotalCode app icon

TotalCode

Um workspace nativo para Total.js Code com controlo local e múltiplas instâncias numa única aplicação.

IDE nativo
Múltiplas instâncias
MCP / MVP
TotalMonitor app icon

TotalMonitor

Monitorize a saúde do projeto, métricas, alertas e regras em tempo real para que os problemas sejam visíveis antes de se tornarem urgentes.

Tempo real
Alertas
MCP / MVP
More applications icon

Mais aplicações

Mais ferramentas nativas vão expandir o mesmo ecossistema para desenvolvimento, gestão, monitorização e evolução do produto.

Em curso
Novas apps
Ecossistema
Disponibilidade

Exclusivo para macOS e iPadOS, em breve

O lançamento inicial será focado no ecossistema Apple. Windows e Linux chegarão mais tarde, sem data prevista.

macOS
iPadOS
App Store
Mac App Store
Desenvolvimento profissional

Na Total.js, construímos software que dura

Aplicações à medida, dashboards, portais, produtos SaaS e plataformas privadas construídas sobre uma base coerente em vez de complexidade acidental.

Aplicações internas
Portais privados
Painéis de controlo
Produtos SaaS
Refatoração e melhoria
Suporte técnico

Desenvolvimento à medida

Aplicações, dashboards, portais, ferramentas internas e produtos digitais construídos com Total.js.

Arquitetura e consultoria

Decisões técnicas, revisão da base e um plano prático antes que o produto cresça.

Implementação e evolução

Da primeira versão à melhoria contínua, com a mesma direção técnica.

Manutenção e melhoria

Otimização, refatoração, novas funcionalidades e evolução progressiva de plataformas existentes.

Spanish Total.js Platform

Diga-nos o que o seu negócio precisa para funcionar melhor

Concebemos e construímos aplicações Total.js com uma base técnica clara e um caminho prático até à produção.

Aplicações empresariais e dashboards
Plataformas e portais privados
Arquitetura, implementação e evolução

Equipas de todo o mundo já constroem com Total.js.

Ver todas as referências
Siemens
Orange
Datalan
Metrostav
Slovalco
Volkswagen
Fale-nos do seu projeto

Diga-nos o que quer construir e responderemos com um próximo passo prático.