TemPlatの詳細

TemPlatとは

TemPlatはERDと画面遷移図を通してサーバーとクライアントのソースコードを生成し、実行環境であるインフラをGoogle Cloud Platform上に自動で構築するツールです。
ソースコードとインフラを双方を生成することにより、TemPlatにより用意された環境は設定完了とともに即時利用が可能になります。

ERDや画面遷移図は初期構築時だけではなく開発時及び運用時にも変更を加えていくことが出来るので、CI(継続的インテグレーション)ツールとしての使用も可能です。

TemPlatの概要図

インフラの構成

TemPlatが構築するインフラの、サーバーの実行環境はCloud Run、データベースはDatastore(またはCloud SQL)です。
また、ファイルの保存にはCloud Storageを使用します。

基本構成の場合は従量課金制でスケーラビリティの高いサービスのため、ランニングコストを抑えたい開発のスタートに適した構成になっています。

GCPサービスの詳細

アプリケーションの構成

TemPlatが生成するアプリケーションの、サーバーの言語はGo (Googleが開発したプログラミング言語) で、フレームワークにはEchoを使用しています。

クライアントの言語はTypeScript (JavaScriptの静的型付け言語) で、フレームワークには、スマホアプリではReact Native (React.jsのフレームワーク) を、WebアプリではNuxt.js (Vue.jsのフレームワーク) を使用しています。

使用している言語・フレームワーク

インターフェース

サーバーとクライアントのインターフェースには、OpenAPI (Swagger) を使用しています。

サーバーとクライアントどちらも静的型付け言語を使用し、
インターフェースにはOpenAPI (Swagger) を用いることにより、サーバーとクライアントの疎通を効率的に行うことが可能です。

インターフェース

ソースコードの管理

TemPlatが生成したソースコードはCloud Source Repositories (GCP上のgitレポジトリ) で管理されます。

実行環境とソースコードの管理環境を同一のGCP上に構築することにより、サーバのソースコードを自動的にCloud Runにデプロイすることが出来、サーバーの即時利用を可能にしています。

ソースコード管理