开发更快,更好地掌控整个栈。
没有不必要层次的业务软件。
Total.js 将高性能 Node.js 框架、生产级 UI 组件和成熟应用结合在一起,让团队以更少的胶水代码和更强的掌控力构建仪表板、门户、SaaS 产品和内部工具。
在同一处集中管理路由、动作、REST、WebSocket、模式、文件、视图、邮件和运行时控制。
输入控件、数据网格、表单、图表、仪表板、模态框以及可直接用于生产的界面。
一个你可以理解、扩展并真正掌控的技术栈
Total.js 将关键部分紧密结合:后端、UI、数据、实时通信和业务逻辑,而不会把你的产品拆散到不必要的层次中。
框架
一个无外部依赖的 Node.js 基础,用于构建 API、Sockets、管理面板、门户、内部应用和长期运行的产品。
- 直接路由与简洁的动作
- 模式、校验和数据访问
- REST、WebSocket、邮件、文件和视图
jComponents
专为业务应用设计的 UI 层:真实组件、简单绑定,以及无需笨重前端栈即可直接投入使用的界面。
- 表单、数据网格、图表和仪表盘
- 自动绑定与轻量视图
- 超过 300 个生产级组件
一个后端。一种 UI 哲学。
路由、动作、模式、视图、绑定和组件自然契合。更少胶水代码、更少决策,从想法到生产的路径更清晰。
纯框架
total5 / node.js一个清晰的结构,用于业务逻辑、API、Sockets、任务和真实流程,而不会被框架噪音淹没。
// 路由、动作、模式、数据库、Sockets 和邮件
require('total5');
exports.install = function() {
ROUTE('GET /', 'view');
ROUTE('+API ? orders-list --> find');
ROUTE('+POST /api/orders/ --> create');
ROUTE('SOCKET / @text <1MB', socket); // "text" means only the plain text communication
};
NEWACTION('find', {
query: 'page:Number, sort:String',
route: 'API ?',
params: 'projectid:String',
action: function($) {
// $.query
// $.params
$.success();
}
});
NEWACTION('create', {
name: 'description',
route: '+POST /api/orders/',
input: '*name:String, age:Number',
output: 'success:Boolean',
params: 'projectid:String, id:String',
action: function($, model) {
// $.query
// $.params
// $.model or model "is prepared according to the input data schema"
// $.success();
// $.callback({ success: true });
// TMS:
// $.publish(model);
}
});
function socket($) {
// $ === WebSocketController
// List of all clients in the controller
// $.connections {Object} ID1:CLIENT, ID2:CLIENT, ID3:CLIENT
/*
for (var id of $.connections) {
var client = $.connections[id];
client.send({ name: 'Hello' });
}
*/
// Automatically destroys the controller after all clients are disconnected.
$.autodestroy();
$.on('open', function(client) {
// @client {Controller}
client.send('Hello world');
});
$.on('close', function(client) {
client.send('Bye Bye!');
});
$.on('message', function(client, message) {
console.log(message);
});
}
Total.run();基于 jComponents 的界面
spa.min@20使用专为真实业务界面设计的组件构建表单、仪表板、表格和完整工作流。
<!-- Client-side UI library -->
<script src="https://cdn.componentator.com/spa.min@20.js"></script>
<link rel="stylesheet" href="https://cdn.componentator.com/spa.min@20.css" />
<ui-plugin path="scope">
<ui-component name="input" path="?.filter" config="placeholder:搜索订单;autofill:1"></ui-component>
<ui-component name="validate" path="?.form">
<button class="exec" data-exec="?/submit">保存订单</button>
</ui-component>
<ui-component name="datagrid" path="?.orders" config="margin:0;click:?/detail">
<script type="text/plain">
[
{ name: 'email', text: '客户', width: 220 },
{ name: 'total', text: 'Total', align: 2, template: "{{ total | format(2) }}" },
{ name: 'dtcreated', text: '创建时间', 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 + ' 在线'"></ui-bind>
</ui-plugin>
<script>
PLUGIN('scope', function(exports) {
exports.submit = function() {
var modal = exports.modal;
exports.tapi('orders-list', modal, function(response) {
exports.set('scope.orders', response);
});
};
});
</script>验证技术栈的真实应用
Flow、OpenPlatform、CMS 和其他 Total.js 应用并非演示程序,而是可投入使用的产品,你可以用同一基础为自己的平台搭建解决方案。
Flow
与 API、服务和 AI 打通的自动化、集成和业务流程。
OpenPlatform
一个私有门户基础,包含身份、应用、用户和受控访问。
CMS
一个既可独立运行,又能融入更大业务解决方案的内容管理系统。
更多应用
秉持相同理念打造的工具:务实、直接,随时可用于真实工作。
TotalDesktop Suite
围绕真实 Total.js 工作流打造的 Mac 和 iPad 原生工具:资源、代码、监控、项目与日常工作。

TotalResources
通过原生应用管理多语言内容:翻译、拼写辅助、审校以及对每条产品文案的 AI 支持。

TotalCode
Total.js Code 的原生工作区,在一款应用中即可管理本地控制和多个实例。

TotalMonitor
实时监控项目健康状况、指标、告警和规则,让问题在变得紧急之前就能被看见。

更多应用
更多原生工具将扩展同一生态,用于开发、管理、监控和产品演进。
专为 Mac 与 iPad 打造,即将推出
首个版本将专注于 Apple 生态系统。Windows 和 Linux 会在之后推出,目前尚未计划具体日期。
我们构建经得起时间考验的 Total.js 软件
基于一致基础而非偶然复杂性构建的定制应用、仪表板、门户、SaaS 产品和私有平台。
定制开发
使用 Total.js 构建的应用、仪表盘、门户、内部工具和数字产品。
架构与咨询
技术决策、基础审查,以及在产品扩张前制定的务实计划。
实施与演进
从第一个版本到持续改进,一直保持同一技术方向。
维护与改进
对现有平台进行优化、重构、新功能开发和渐进式演进。
告诉我们,你的业务需要什么来运行得更好
我们以清晰的技术基础和务实的落地路径设计并构建 Total.js 应用。
世界各地的团队已经在使用 Total.js 构建产品。
查看所有参考案例





告诉我们你想构建什么,我们会给出一个务实的下一步建议。