ローコードで社内向けアプリが作れる「ToolJet」を試す
GitHubレポジトリ
ToolJet
ToolJetは、エンジニアリングの負担を最小限にして内部ツールを構築・デプロイできるオープンソースのローコードフレームワークです。ToolJetのドラッグ&ドロップによるフロントエンドビルダーを使用すれば、複雑でレスポンシブなフロントエンドを数分で作成可能です。また、PostgreSQL、MongoDB、Elasticsearchなどのデータベース、OpenAPI仕様とOAuth2対応のAPIエンドポイント、Stripe、Slack、Google Sheets、Airtable、NotionといったSaaSツール、S3、GCS、Minioなどのオブジェクトストレージサービスと連携して、データの取得・書き込みができます。
refered from https://github.com/ToolJet/ToolJet
refered from https://github.com/ToolJet/ToolJet
全機能一覧
- ビジュアルアプリビルダー: 45以上のビルトインレスポンシブコンポーネント(テーブル、チャート、リスト、フォーム、プログレスバーなど)
- ToolJetデータベース: ノーコードのデータベースを内蔵
- マルチページ: 複数ページで構成されるアプリケーションの作成が可能
- マルチプレイヤー編集: 複数の開発者による同時編集をサポート
- 50以上のデータソース: 外部データベース、クラウドストレージ、APIとの統合
- デスクトップ&モバイル: 画面サイズに合わせたレイアウト幅のカスタマイズ
- セルフホスト: Docker、Kubernetes、AWS EC2、Google Cloud Runなどに対応
- 共同作業: キャンバス上でコメントを追加し、チームメンバーをタグ付け可能
- プラグインでの拡張: コマンドラインツールを使って新しいコネクタを簡単に追加
- バージョン管理: 構造化されたリリースサイクルで複数のアプリケーションバージョンを管理
- JSとPythonコードの実行: カスタムJavaScriptやPythonコードの実行
- 詳細なアクセス制御: グループレベルおよびアプリレベルでの権限設定
- ローコード: ビルダー内のほぼすべての場所でJSコードを使用可能(例:status === 'success' ? 'green' : 'red'でステータスに基づいたテキストカラーを設定)
- ノーコードクエリエディタ: サポートするすべてのデータソースに対応したクエリエディタ
- データの結合と変換: JavaScriptやPythonコードでクエリ結果を変換
- セキュリティ: すべての資格情報はaes-256-gcmで安全に暗号化
- データプライバシー: ToolJetは単なるプロキシとして機能し、データを保存しない
- SSO: 複数のシングルサインオンプロバイダーに対応
ドキュメント
Dockerで立ち上げて、以下のQuickstart Guideに従って試してみたのだが、
- 画面構成が変わっている
- ドキュメントの指示通りに進めてもその通りにならない
あたりでちょっと躓いた。
ドキュメントを見ると、バージョンは2.50.0-LTS
ベースのものみたいなんだけど、試したのは以下。
docker run \
--name tooljet \
--restart unless-stopped \
-p 80:80 \
--platform linux/amd64 \
-v tooljet_data:/var/lib/postgresql/13/main \
tooljet/try:EE-LTS-latest
バージョン情報は以下にあるのだけど、
そもそもtooljet/try
というイメージは何なんだろうか?よくわからない。
他にも色々調べてみたけど、とりあえず用意されているチュートリアルが軒並み古い・・・
こちらに従ってインストールし直してみた。
一応一通り動いたのは動いたけど、
- 画面構成が変わっている
- ドキュメントの指示通りに進めてもその通りにならない
のは同じ。で、最後まで進めれば一応Quickstartの内容は動いたけど、よくわからないWarningが出る。
んー、ちょっとよくわからないので、保留かなぁ。。。
ちなみに、セットアップ方法はバリエーションが多いけど、コンテナフレンドリーな印象
- ToolJetクラウド
- セルフデプロイ
- Docker
- DigitalOcean
- AWS
- EC2
- ECS
- EKS(Kubernetes)
- MarketPlaceもあり
- OpenShift
- Kubernetes
- Helm
- Google Cloud
- GKE(Kubernetes)
- Cloud Run
- Azure
- Container
- AKS(Kubernetes)
- MarketPlaceもあり
- ToolJetクライアント
- 静的ホスティング専用っぽい(ということはフロントエンドなのかな?)
このあたりはきちんと考慮されている感じなので、Quickstartがちゃんと書かれていないってのが惜しい。Quickstartが最新になっていない・Quickstart通りに動かない、ってのは個人的には体験がやや悪い印象。