Skip to content

Commit

Permalink
docs: update README
Browse files Browse the repository at this point in the history
  • Loading branch information
solufa committed Jul 1, 2024
1 parent e052a32 commit f524179
Showing 1 changed file with 50 additions and 62 deletions.
112 changes: 50 additions & 62 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,67 +1,55 @@
# Magnito

フロントエンドは client ディレクトリの [Next.js](https://nextjs.org/) 、バックエンドは server ディレクトリの [frourio](https://frourio.com/) で構築された TypeScript で一気通貫開発が可能なモノレポサービス

最新のコミットによるデモ - https://solufa.github.io/next-frourio-starter/

## 開発手順

### Node.js のインストール

ローカルマシンに直接インストールする

https://nodejs.org/ja/ の左ボタン、LTS をダウンロードしてインストール

### npm モジュールのインストール

ルートとフロントとバックエンドそれぞれに package.json があるので 3 回インストールが必要

```sh
$ npm i
$ npm i --prefix client
$ npm i --prefix server
```

### 環境変数ファイルの作成

```sh
$ cp client/.env.example client/.env
$ cp server/.env.example server/.env
```

### ミドルウェアのセットアップ

```sh
$ docker compose up -d
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://frouriojs.github.io/magnito/logos/icon-text-dark.svg">
<source media="(prefers-color-scheme: light)" srcset="https://frouriojs.github.io/magnito/logos/icon-text-light.svg">
<img alt="Magnito logo image" src="https://frouriojs.github.io/magnito/logos/icon-text-light.svg">
</picture>

Amazon Cognito emulator for Amplify UI.

## Images

Docker Hub - https://hub.docker.com/r/frourio/magnito

Amazon ECR Public Gallery - https://gallery.ecr.aws/frourio/magnito

## Usage

Docker compose

```yml
services:
magnito:
image: frourio/magnito:0.9.0
ports:
- 5050:5050 # Cognito API
- 5051:5051 # web interface
environment:
COGNITO_USER_POOL_ID: ap-northeast-1_example
COGNITO_USER_POOL_CLIENT_ID: example-client-name
ENV SMTP_HOST: inbucket
ENV SMTP_PORT: 2500
ENV SMTP_USER: fake_mail_user
ENV SMTP_PASS: fake_mail_password
volumes:
- magnito:/usr/src/app/data

inbucket:
image: inbucket/inbucket:3.0.3
ports:
- 2500:2500 # SMTP
- 9000:9000 # web interface
volumes:
- inbucket:/storage

volumes:
magnito:
driver: local
inbucket:
driver: local
```
### 開発サーバー起動

次回以降は以下のコマンドだけで開発できる

```sh
$ npm run notios
```

Web ブラウザで http://localhost:5051 を開く

開発時のターミナル表示は [notios](https://github.com/frouriojs/notios) で制御している

[Node.js モノレポ開発のターミナルログ混雑解消のための新作 CLI ツール notios](https://zenn.dev/luma/articles/nodejs-new-cli-tool-notios)

閉じるときは `Ctrl + C` を 2 回連続で入力

#### SQLite UI

```sh
$ cd server
$ npx prisma studio
```

### SMTPサーバー

Docker の Inbucket が SMTP サーバーのスタブを提供している

http://localhost:9000/
### SMTP Server UI
serverからsendMailするとInbucketヘッダー中央の「Recent Mailboxes」に仮想メールが届く
[Inbucket](https://inbucket.org) - http://localhost:9000/

0 comments on commit f524179

Please sign in to comment.