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

オープンソースの開発ツール「amplication」

  オープンソース

mayumi

”amplication"

公式サイト:https://amplication.com/

Github:https://github.com/amplication/amplication

オープンソースなローコード、ノーコードまとめのリストから気になったものをレビューしています。今回はその第1弾です。

こちらはイスラエル発のWebアプリケーション開発者向けのローコードツールです。

つくりたいアプリケーションの「データモデル」と「ロール」、「権限」をツール上で定義すれば

  • 簡易な機能

  (データモデルのCRUDと権限管理、認証機能等)

  • 簡易UI
  • REST API
  • GraphQL
  • 環境構築のdockerファイル

を自動生成するというものです。

 

生成したアプリケーションは

Server

NestJs / Prisma / PostgreSQL / Passport / GraphQL / Swagger UI / Docker

Client

ReactJS / Axios / Formik

で構成されています。

amplicationはクラウドサービスも行っています。

http://app.amplication.com/

ベータ版の間はFreeだそうです。(2022/3/24)

簡単なアプリを作ってみる

商品(Product)を参照、登録、変更、削除、検索だけ行うアプリを作ってみました。

エンティティ

UserはAmplication上でアプリを定義するとフィールドも含めて自動で作成されます。

ロール

商品(Product)エンティティに対する権限

ロール 参照 作成 編集 削除 検索
Admin
User ×
Guest × × ×

アプリの作成

amplication上でのアプリの作成手順です。アプリの作成はコマンドラインツールもあります。

参照:https://docs.amplication.com/docs/first-app

1.アプリケーションの作成

1-1. "New app"をクリック

1-2. "Start from scrach"を選択

今回はスクラッチにしました。

1-3. アプリ名、説明、カラーを設定

2. データベース名の設定

2-1.データベース名を入力します。

3.エンティティの作成

3-1.エンティティ名を入力

2-2. "Add field"からフィールドを追加します。

2-3.必要に応じでフィールドの項目を変更します。

3. ロールの作成

3-1. "Add role"に追加するロール名を入力します。

3.パーミッションの設定

3-1. Entitiesをクリックします。

3-2.パーミッションを設定するエンティティをクリックします。

3-3. "Permissions"からEntityに対する操作をどのロールに許可するか設定します。

4. コミット&ビルド

ここまで設定したものの変更を確定します。”Commit chages & build"をクリックします。

デプロイ

参照: https://docs.amplication.com/docs/deploy

1. 生成したプロジェクトをダウンロード

展開したデータ

2. セットアップされた環境で展開

※node,npm,dockerのセットアップされている必要があります。

3. docker-composeコマンドの実行

docker-compose up

生成されたアプリ

デプロイすると「http://localhost:3001」でサービスにアクセスできるようになります。

画面

ログイン

初期ユーザー「admin/admin」でログインできます。

ログイン

ログイン後(ホーム)

エンティティの管理(User)

ユーザーを何件か登録した状態。

エンティティの管理(Product)

API ドキュメント (Swagger)

http://localhost:3000/api/

graphQL

http://localhost:3000/graphql

パーミッション

作成権限のないユーザーでProductを作成しようとしたところ。SAVEがクリックできないようにされています。

総合

使いやすさ ★★★☆☆
技術要素の要求度 ★★★★★
カスタマイズ性 ★★★★★
分類 ローコード

認証機能やパーミッションの設定の面倒なところも作ってくれるのは便利ですね。

使い勝手は開発者を前提としていれば難しいことはなさそうです。好みがあえば気に入る方もいるのではないかと思います。

追記

オープンソースなローコード・ノーコードのサービスをはじめました。
詳細は以下をご覧ください。

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

最近のエントリー

現在の営業品目(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の社内向けサービスのリニューアル

LED行燈の試作(1)

エントリを書くこと

お手軽ポップコーン

VR徘徊(5) StereoPi V1でROSを動かす

VR徘徊(4) StereoPi Ver 1でUbuntu 22.04を動かす

新しいおもちゃ

執筆進捗