本格的なビジネスソフトウェアのためのTotal.js

もっと速く作り、スタックを自分たちのものにしましょう。

不要なレイヤーのないビジネスソフトウェア。

Total.js は、高速な Node.js フレームワーク、プロダクション対応の UI コンポーネント、実績のあるアプリケーションを組み合わせることで、チームがより少ないグルーコードと高いコントロールでダッシュボード、ポータル、SaaS プロダクト、社内ツールを構築できるようにします。

0依存関係
300+UI コンポーネント
MITライセンス
totaljs.es / ソフトウェアスタック
バックエンドコア

ルーティング、アクション、REST、WebSocket、スキーマ、ファイル、ビュー、メール、実行時制御を1か所にまとめています。

jComponents

入力フィールド、データグリッド、フォーム、チャート、ダッシュボード、モーダル、プロダクション対応のインターフェース。

# Node.js 向けサーバーサイドフレームワーク
$ npm install total5

# Total.js CLI
$ npm install total5 -g
$ total5
# 翻訳、最小化、バンドル、抽出、編集
# proxyclient と即時利用可能なローカル Web サーバー
Node.js
NoSQL
WebSocket
API/REST
Actions
堅牢な土台から始めましょう

理解しやすく、拡張しやすく、自分たちのものとして扱えるスタック

Total.jsは、バックエンド、UI、データ、リアルタイム通信、ビジネスロジックといった重要な要素を近くに保ち、不要なレイヤーにプロダクトが分散しないようにします。

フレームワーク

API、ソケット、管理画面、ポータル、社内アプリ、長期運用のプロダクトのための、余計な依存関係のないNode.jsベース。

  • ダイレクトなルーティングと無駄のないアクション
  • スキーマ、バリデーション、データアクセス
  • REST、WebSocket、メール、ファイル、ビュー

jComponents

ビジネスアプリケーションのために設計されたUIレイヤー。実用的なコンポーネント、シンプルなバインディング、重いフロントエンドスタックなしですぐに使える画面。

  • フォーム、データグリッド、チャート、ダッシュボード
  • 自動バインディングと軽量ビュー
  • 300以上のプロダクションコンポーネント
フレームワーク + jComponents

1つのバックエンド。1つのUI哲学。

ルート、アクション、スキーマ、ビュー、バインディング、コンポーネントが自然に組み合わさります。グルーコードを減らし、決定事項を減らし、アイデアからプロダクションまでの道筋をすっきりさせます。

ピュアフレームワーク

total5 / node.js

ビジネスロジック、API、ソケット、ジョブ、実際の処理のための明確な構造を、フレームワークのノイズなしで提供します。

framework.js
// ルート、スキーマ、データベース、メール、TMS、ファイル、ジョブ、ソケット
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, 'ご注文を受け付けました', 'mail/order', doc, NOOP);
			$.success(doc);
		});
	}
});

NEWACTION('Orders|sync', {
	action: function($) {
		// バックグラウンドジョブも同じアクションパイプラインを使用します
		$.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();
直感的なルーティング
再利用可能なアクション
統合 WebSocket
NoSQL とスキーマ
MVC とサーバーレス
スケーラブルかつシンプル

jComponents ベースの UI

spa.min@20

実際のビジネス画面向けに設計されたコンポーネントで、フォーム、ダッシュボード、テーブル、ワークフロー全体を構築できます。

ui.html
<!-- スコープ付きステートとコンポーネントを備えたクライアントサイド UI ライブラリ -->
<script src="https://cdn.componentator.com/spa.min@20.js"></script>
<link rel="stylesheet" href="https://cdn.componentator.com/spa.min@20.css" />

<!-- すぐに使える多言語対応 UI: @(Orders), @(Save order), @(Customer) -->

<ui-plugin path="orders">
	<ui-component name="input" path="?.filter.q" config="placeholder:注文を検索する;autofill:1"></ui-component>

	<ui-component name="validate" path="?.form">
		<button class="exec" data-exec="?/save">注文を保存する</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-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', 'ご注文を保存しました');
		});
	};

	exports.websocket = function(message) {
		PUSH('?.orders', message);
		EMIT('orders/live', message);
	};
});
</script>
300 以上のコンポーネント
データグリッドとフォーム
自動バインディング
ダッシュボードとチャート
ビジネス対応の UI
高速なページ
Total.js 上に構築されたアプリ

実運用の製品のための、ひとつの基盤

Flow、OpenPlatform、CMS、その他のTotal.jsアプリケーションはデモではありません。同じ土台の上に構築された、実際に稼働している製品です。その土台を、あなた自身のプラットフォームにも使えます。

Flow

API、サービス、AIと連携する自動化、インテグレーション、ビジネスプロセス。

OpenPlatform

アイデンティティ、アプリケーション、ユーザー、制御されたアクセスを備えたプライベートポータルの基盤。

CMS

単体のCMSとしても、より大きなビジネスソリューションの一部としても使えるコンテンツ管理。

Code

Total.js 開発向けのコラボレーション型 Web コードエディタ。自社サーバー上で直接動作し、より迅速な変更と完全なコントロールを可能にします。

UI Builder

ダッシュボード、ポータル、フォーム、業務画面のためのビジュアルインターフェース構築。

Todomator

明確な優先順位、実行力、日々の業務への集中を必要とするチームのためのタスク管理。

エンタープライズ

Tables

テーブル設計、データ連携、カスタムビューによるレコード管理のための、ノーコード PostgreSQL ワークスペース。

さらに多くのアプリ

同じ思想で作られたツール群。実務的で、まっすぐで、すぐに仕事に使えます。

実運用の製品のためのパフォーマンス

もっと早くリリースへ。
安心してスケールできます。

より高速な基盤により、納期サイクルの短縮、保守コストの削減、すべてを作り直すことなく成長を続けられる業務ソフトウェアを実現します。

フレームワーク速度比較
Total.js
100%
Fastify
90%
Koa
77%
Express
70%
NestJS
67%
Sails
60%
Meteor
55%
Hapi
50%
接続されたネイティブアプリ

TotalDesktop Suite

macOS と iPadOS 向けのネイティブツール群。実際の Total.js ワークフローを中心に設計されており、リソース、コード、監視、プロジェクト、日々の業務を支えます。

TotalResources app icon

TotalResources

ネイティブアプリから多言語コンテンツを管理できます。翻訳、スペルチェック、レビュー、AIによるサポートを、すべての製品テキストに対して行えます。

多言語対応
Total.js API
Athena AI
MCP / MVP
TotalCode app icon

TotalCode

ローカル制御と複数インスタンスに対応した、Total.js Code用のネイティブワークスペース。

ネイティブ IDE
複数インスタンス
MCP / MVP
TotalMonitor app icon

TotalMonitor

プロジェクトの状態、メトリクス、アラート、ルールをリアルタイムで監視し、問題が緊急になる前に気付けるようにします。

リアルタイム
アラート
MCP / MVP
More applications icon

さらに多くのアプリケーション

今後、ネイティブツールがさらに増え、開発・運用・監視・プロダクト進化まで、同じエコシステムを拡張していきます。

進行中
新しいアプリ
エコシステム
可用性

macOS と iPadOS 専用。近日提供予定

初期リリースは Apple エコシステムにフォーカスします。Windows と Linux は後日対応予定ですが、現時点で日付は未定です。

macOS
iPadOS
App Store
Mac App Store
プロフェッショナル開発

Total.js では、長く使い続けられるソフトウェアを開発しています。

アプリケーション、ダッシュボード、ポータル、SaaSプロダクト、プライベートプラットフォームを、一貫した土台の上に構築し、偶然の複雑さに頼らないようにします。

社内アプリケーション
プライベートポータル
コントロールパネル
SaaS プロダクト
リファクタと改善
技術サポート

カスタム開発

Total.js で構築されたアプリケーション、ダッシュボード、ポータル、社内ツール、デジタルプロダクト。

アーキテクチャとコンサルティング

プロダクトが大きくなる前に行う技術判断、土台のレビュー、実行可能なプラン。

実装と進化

最初のバージョンから継続的な改善まで、同じ技術的な方針で進めています。

保守と改善

既存プラットフォームの最適化、リファクタリング、新機能追加、段階的な進化。

Spanish Total.js Platform

ビジネスの課題を、実際に使えるソフトウェアへ

明確な技術基盤と、運用開始までの現実的な道筋を備えたアプリケーションを設計・開発します。

ビジネスアプリケーションとダッシュボード
プライベートなプラットフォームとポータル
アーキテクチャ、実装、進化

世界中のチームが、すでにTotal.jsを使ってプロダクトを構築しています。

すべてのリファレンスを見る
Siemens
Orange
Datalan
Metrostav
Slovalco
Volkswagen
プロジェクトについて教えてください

ご相談内容をお聞かせください。丁寧に確認し、できるだけ早く明確にお返事します。