Skip to content

momocus/sakazuki

Repository files navigation

SAKAZUKI

Check Test

自宅の酒を管理するアプリケーション

Screenshot

What is SAKAZUKI?

  • 日本酒の在庫を登録・開封・空で管理
  • スペックや味わいを定量値・定性値で保存
  • 在庫や過去に飲んだ日本酒を全文検索
  • 在庫量と総飲酒量の表示
  • 複数人での在庫の共有
  • PC・スマホ対応のレスポンシブデザイン
  • 画像は AVIF 形式に圧縮して Cloudinary にアップロード

Watch a demo

Requirements

  • Ruby = 3.3.1
  • Bundler
  • Yarn🐈 >= 1.22.4
  • Node.js >= 12.20.1
  • PostgreSQL >= 12.0
  • ImageMagick >= 6.9

How to use

  • 依存関係のインストール
    • bundle install
    • yarn install
  • .env ファイルの作成
    • PostgreSQL の設定
    • Google AdSense のクライアント ID の設定(Google AdSense を使う場合)
cp dotenv.example .env
# .env
POSTGRES_USERNAME=[YOUR POSTGRESQL NAME]
POSTGRES_PASSWORD=[YOUR POSTGRESQL PASSWORD]
  • 管理者ユーザの設定(オプション)
# db/seed.rb
User.create!(
  email: "[YOUR EMAIL ADDRESS]",
  password: "[YOUR ACCOUNT PASSWORD]",
  admin: true,
  confirmed_at: Time.current,
)
  • DB の作成
    • bundle exec rails db:create
    • bundle exec rails db:migrate
    • bundle exec rake parallel:setup、並列テストを使う場合
  • 管理者ユーザの作成
    • bundle exec rails db:seed
  • サーバの起動
    • bundle exec rails server
  • SAKAZUKI へのアクセス
    • http://localhost:3000/にアクセス
    • デフォルトか前項内容でログイン
      • デフォルトメールアドレス: example@example.com
      • デフォルトパスワード: rootroot

How to recieve EMail from SAKAZUKI in development environment

Development 環境において、SAKAZUKI からのメール通知は letter_opener で確認する。

How to deploy

See the deployment.

How to develop with Docker

レポジトリを Docker Bind するため、レポジトリを WSL ファイルシステムに置くと動きません。

  • Docker イメージのビルド
$ docker compose build
...
  • PostgreSQL コンテナの初期設定
$ docker compose run --rm web bundle exec rails db:create
Creating volume "sakazuki_db_storage" with local driver
Creating sakazuki_db_1 ... done
Creating sakazuki_web_run ... done
Created database 'sakazuki_development'
Created database 'sakazuki_test'
$ docker compose run --rm web bundle exec rake parallel:setup
...
$ docker compose run --rm web bundle exec rails db:migrate
Creating sakazuki_web_run ... done
...
Model files unchanged.
$ docker compose run --rm web bundle exec rails db:seed
Creating sakazuki_web_run ... done
  • Docker イメージの起動
$ docker compose up
...
  • Gem/Node Package の更新があった場合は、docker compose buildでイメージを更新する

  • 起動している Docker コンテナでテストを実行する

$ docker compose exec web bundle exec rspec
...

How to Contribute

  • GitHub の Issue/Pull Request にて受けつけています
    • 現状では少数開発なので、受け入れるレベルは明確化されていません
  • Pull Request は GitHub Actions を通してください
    • 手動でチェックを走らせる場合はcli-scripts/run-all-checks.shで実行できます

Special Thanks

  • 筆によるすてきな SAKAZUKI by 豆腐屋さん