3
1

More than 1 year has passed since last update.

AWS日記36 (Amplify Studio)

Last updated at Posted at 2022-02-28

はじめに

今回は AWS Amplify Studio を試します。
Amplify Studioで UIやデータを作成し、ReactのWebアプリケーションをホスティングします。

準備

  • Amplify CLI 等、ローカル環境で Amplifyを使う準備をします。 参考:Amplify
  • Figmaのアカウントを取得します。

プロジェクト作成

プロジェクトの名前を入力します

app_name.jpg

「Studioを起動する」 をクリックします。

launch_studio.jpg

Figmaと連携

UI Library画面の「Get started」をクリックします。

ui_library.jpg

「Use our Figma template」をクリックします。

sync_with_figma.jpg

「Duplicate」をクリックします。

figma_duplicate.jpg

「Accept all」をクリックします。

figma_accept.jpg

データ作成

Data画面でデータモデルを追加します。

data_modeling.jpg

Content画面でデータを追加します。

content.jpg

データを入力し保存します。

add_data.jpg

コンポーネントとデータモデルの紐付け

UI Library画面の My Components から、今回は「CardA」をクリックします。

ui_library_CardA.jpg

「Configure」 をクリックし、以下の設定をします。
  • 画像のURL
    CardA_url.jpg

  • タイトル
    CardA_title.jpg

  • 日付
    CardA_date.jpg

ローカル環境での作業

Reactアプリケーションの初期化

mkdir amplify-studio-react
cd amplify-studio-react
npx create-react-app .
npm install aws-amplify @aws-amplify/ui-react

Amplify アプリケーションの Pull

AWSコンソールから pullコマンドを確認します。

amplify_pull_command.jpg

amplify pull --appId {app_id} --envName {env_name}

GraphQL の追加

amplify update api

GraphQLのクエリーファイルの生成

amplify codegen add

src/App.jsの編集

import React, { useState, useEffect } from 'react';
import './App.css';
import { Amplify, API } from 'aws-amplify';
import awsconfig from './aws-exports';
import Card from "./ui-components/CardA";
import { listSampleModels } from './graphql/queries';

Amplify.configure(awsconfig);

function App() {
  const [icons, setIcons] = useState([]);

  useEffect(() => {
    fetchIcons();
  }, []);

  async function fetchIcons() {
    const apiData = await API.graphql({ query: listSampleModels });
    setIcons(apiData.data.listSampleModels.items);
  };

  return (
    <div className="App">
      {
        icons.map(item => (
          <div key={item.id}>
            <Card Sample={item}></Card>
          </div>
        ))
      }
    </div>
  );
}

export default App;

Webアプリケーションのホスティング・公開

ホスティング
amplify add hosting
公開
amplify publish
動作確認

hosting_check.jpg

終わりに

AWS Amplify Studio を試しました。
UIやデータ作成はブラウザ上で行えましたが、 App.jsの編集や公開作業はローカル環境で行う必要がありました。
アプリケーションを複数人で開発するためのツールとして、とても便利だと感じました。

以下の記事を参考にしました。

Amplify Studioってホントにすごいの?

【多分初心者向け】AWS Amplify Studio に触ってみて、とりあえず1からwebページを作ってみた

Amplify新機能(Studio)を触ってみた(プレビュー版)

3
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1