Skip to content

ut-code/JourniCal

Repository files navigation

JourniCal

JourniCal はカレンダーアプリとジャーナルアプリを組み合わせたアプリです。

0 からサーバーを起動するまで

環境構築: 1 回のみ

  • Node.js をインストールする。
  • Go >=1.22 をインストールする。
  • Docker をインストールする。

ファイルの準備: 1 回のみ

  • 設定の下準備
    • backend/.env.sample を backend/.env にコピーする。
    • frontend/.env.sample を frontend/.env にコピーする。
  • 機密ファイル
    • credentials.json を探してきて、 backend/credentials.json にコピーする。
    • token.json を探し、 backend/token.json にコピーする。または、 go run backend/bin/generate-token-json で token.json を取得する。
    • もしくは、 .env.secret をメンバーに聞いてもらう。

以下、 docker compose を使う場合は docker compose が代わりにやってくれます。

依存関係の解決

  • (cd frontend; npm ci)
  • (cd backend; go mod download)

開発環境で実行

  • backend/run-postgresql-at-localhost.sh
  • (cd backend; go run .)
  • (cd frontend; npm run dev)

ビルド

  • (cd backend; go build .)
  • (cd frontend; npm run build)

ビルドされたファイルを実行

  • backend/run-postgres-at-localhost.sh
  • cp -r ./frontend/dist ./backend/static
  • cd backend; ECHO_SERVES_FRONTEND_TOO=true ./backend

docker-compose

docker compose up --build

で PostgreSQL サーバー・バックエンド・(フロントエンド;TODO!)がすべて起動できます。

本番環境

本番環境で実行するには、以下のことをしてください。

事前準備

  • backend/credentials.json を用意する
  • 環境変数 DSN を設定する

ビルド

docker build -f Dockerfile.prod -t journical-full .

実行

docker run \
  -e DSN \ # inherit DSN from its env
  -p ${PORT:-3000}:3000 \ # run at $PORT, default to 3000 if $PORT is not set
  journical-full

Guidelines

Style Guidelines

Project Layout Standard(s)

About

Integrate Journal and Calendar in one app.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published