ハードウェアからサーバ・アプリまでワンストップで開発

スケーラビリティ優先のオープンソースのノーコード開発プラットフォーム「NocoBase」

オープンソースなノーコード・ローコードレビュー第7弾

NocoBaseは今年の4月ごろにα版がリリースされたばかりの中国製オープンソースノーコードです。
オープンソースなノーコード・ローコードレビュー第7弾です。

极易扩展开源无代码开发平台
无需编程,使用 NocoBase 搭建自己的协作平台、管理系统,只需要几分钟时间。

(機械翻訳)

極めて拡張性の高いオープンソースのノーコード開発プラットフォーム
NocoBaseを使えば、プログラミングなしで、あなただけのコラボレーションプラットフォーム、管理システムを数分で構築することができます。

NocoBase —— 开源免费的无代码和低代码开发平台

シンプルな操作、開発からデプロイまでワンストップである点から、これまでレビューしてきたノーコードの中でも初心者(非開発者)にも使いやすいノーコードではないかと思います。

NocoBase公式サイト
GitHub
デモサイト

ライセンスは「Apache-2.0ライセンス」です。

特徴

ノーコード
データベース内蔵、ワークフロー、アクセス権の管理、UI作成等アプリ作成に必要な機能が一通り用意されています。

内製アプリ開発向き
外部に公開するようなアプリの作成ツールではなく、内部で使うアプリの作成ツールです。

シンプルだけど柔軟
操作は非開発者でも難しくないようにシンプルに作られていますが、データ構造とUIの分離や、すべての機能をプラグインとして設計されていたりと、依存性が低く拡張しやすい構成になっています。

参考:
介绍(はじめに)
与众不同之处(その違い)
适用场景(適用シーン)

対応言語

対応言語は「英語」「中国語」です。
「日本語」は非対応ですが、使い勝手がよく気に入ったので日本語テキストを作りました。

pullリクエストを出したところなので、反映されたら利用できるかもしれません。
反映に時間がかかる様子でしたら使えるようにしたものを公開します。

2022/9/12
日本語テキストが反映されました。良かったら使ってみてください。

オープンソースノーコード「NocoBase」が日本語対応されました

アプリ作成の流れ

内部ツールのアプリ作成の手順は「データの定義」「UIと機能作成」から成ります。必要に応じて「アクセス権の設定」や「ワークフロー」を追加します。

NocoBaseの公式サイトにもその流れがわかるアニメーションがあります。

1. データの定義

NocoBase上ではデータを「コレクション」と呼びます。

コレクション内で利用可能なフィールドの種類には以下のようなものがあります。

分類 フィールドの種類
ベーシック 一行テキスト、長文テキスト、携帯電話番号、メール、整数、数値、パーセント、パスワード、アイコン等
選択 チェックボックス、ラジオボタン、ドロップダウン等
メディア 添付ファイル、マークダウン等
日付と時間 日付、時間
関連付け リンク、1対1(has one)、1対1(belongs to)、1対多、多対1、多対多
アドバンスタイプ

コレクション「商品マスタ」を作る例

コレクション作成時にデフォルトで生成されるフィールド(「作成者」「作成日」「最終更新日」等)に加え、必要なフィールドを追加します。

例では「名称(一行テキスト)」「イメージ(添付ファイル)」を追加しています。
「イメージ」は画像の入力を想定して、ファイル形式を「.jpg」と「.png」に設定しています。

参照:数据表(コレクション)

2. UIと機能作成

NocoBase内にページを作成し、その中のブロックコンテナ内にUIブロックを配置します。UIブロックごとにコレクションを対応付けて、アプリを作成していきます。

利用できるブロックの種類には、
テーブル、フォーム、詳細、カレンダー、かんばん、グラフ、マークダウン、監査ログ
があります。

テーブルブロックに「商品マスタ」コレクションを関連付けて配置

テーブルブロックの表示内容や機能の設定

開発モードでもデータの入力は可能です。例では編集機能を作るため、1件ダミーデータを作成しています。(データが0件編集リンクが表示されず、その先の編集フォームが作成できないからです)

他にもデータのフィルタリングや並べ替え、テーブルの場合はページ当たりの表示レコード数、編集時の動作等設定できます。

詳しくは公式ドキュメントにあります。
区块(ブロック)
菜单(メニュー)

3. アクセス権の設定

ユーザーには役割を複数付与することができ、役割単位でコレクションやメニューの利用制限を設定します。

役割Memberをもつユーザーには商品マスタへのメニューアクセス権限を禁止する例

権限の設定後、一時的に役割をMemberに切り替えて「商品マスタ」のメニューが表示されないことを確認しています。

コレクション単位のアクセス権制御では、さらに細かく制御が可能です。

開発モードの切り替え

権限があるユーザーは、画面上部のUIエディタボタンで開発モードの切り替えができます。

サンプルアプリ作成

改正電子帳簿保存法」に対応した電子証票を管理するアプリケーションを作ります。

電子証票を管理する機能に加え、データ保存時の要件である「検索機能の確保」「データの信ぴょう性を担保する措置(データ改ざん防止措置)」の対応入れます。

データ定義

管理する情報は「取引データ」「取引先」の2つです。

できたアプリ

日本語訳のために一通りNocoBaseを操作したこともあり、このサンプルアプリ作成は30分かかりませんでした。そうでなくても、操作性が良いので、作成にかかる時間はこれまでのレビューで使った時間より短かったのではないかと思います。

入力

取引データの入力操作です。

 

修正

先ほど入力した内容を編集します。フォームでは入力フィールドだけでなく、編集不可のフィールドやテキスト表示の指定も可能です。

削除

削除処理も、「追加」ボタンと同じ操作感で作成できます。

操作履歴

操作履歴はNocoBaseのブロックである監査ログを利用しました。履歴専用のコレクションを作る必要はありません。

検索

テーブルブロックのフィルター機能は特別に作成する必要はなく、「追加」や「削除」ボタンと同じ操作で追加できます。フィルタリングで利用できる項目をあらかじめ限定することも可能です。

所感

まだ公開されてから間もないこともあって、ドキュメントがまだ整備中ですが、もともとのUIが良くできているのか操作で悩むということはありませんでした。
「アプリ作成の流れ」のアニメーションのように、必要な機能が必要な時に現れ、使っていてストレスのないツールです。
レビューしてきた中でもこれほどスムーズにアプリが作れたことはありません。
これからだなと思うところ(UIにグラフが使えるみたいだけど、コレクションとの関連付け方法がない?等)もありますが、今後に期待できるツールです。

ノーコードツールの導入・サポートいたします

弊社ではノーコード・ローコードの導入支援、ご相談、運用サポート等のサービスを行っております。

オープンソースなローコード、ノーコードのサービスメニュー

気になる方はお問い合わせまでご連絡ください。

最近のエントリー

Hieronymusのインボイス番号対応について

会計システム「Hieronymus」の現状

OrangePi5にZabbixをインストールする

レビュー等の依頼について

オープンソースのノートアプリ「SiYuan」 - CasaOS AppStoreレビュー

お気に入りの色さがし1

創立記念日

現在の営業品目(2)

現在の営業品目(1)

SPDX License Listをデータ化した

Orange Pi5でC3TR-Adapterを試す

CasaOS上で会計システム「Hieronymus」を動かす

会計システム「Hieronymus」v1.0.0 リリースしました

CasaOSでファイル同期アプリSyncthingをセットアップする

第11回 Freshmeat

オープンソースノーコード「Activepieces」でワークフローを作る

RaspberryPiにパーソナルクラウドOS「CasaOS」を導入する

sequelize-cliでdb:migrateすると「SyntaxError: Unexpected token ':'」が出る

LED行燈の試作(2)

CMSの社内向けサービスのリニューアル