Beeeat’s log

Beeeat’s log

プログラミングで出くわした知識やツール、日常生活、働き方その他色々なことをメモしていくブログ

「rack-dev-mark」で開発環境と本番環境を視覚的に判断する

普段の開発で,本番環境だと思ったら開発環境だったというような誤認をし,ヒヤッとしたことが何回かありました.

アドレスバーだけで判断するのも中々難しいことがあります.今回はそんな誤認を防ぐ gem 「rack-dev-mark」 の導入方法をまとめていきます.

github.com

検証した RubyRails のバージョン

Ruby は 2.5.1,Rails は 5.2.3 で動作を確認できました. 現状(2019/11/10),rack-dev-mark のリポジトリにある README や issue,プルリクエストを見ると Ruby 2.6,Rails 6.0.1 にはまだ対応していないようです.実際に検証もしてみました.

導入方法

方法は何パターンかありますが,一番簡単なのはapplication.rbに以下の一行を追加すれば良いです.

config/application.rb

  class Application < Rails::Application
    config.load_defaults 5.2
+   config.rack_dev_mark.enable = !Rails.env.production?
  end

rails sで確認すると,開発環境の場合は「development」の文字でリボンが表示されます.

f:id:bake0937:20191110081155p:plain

Theme を設定

Theme を設定するとリボンの表示位置や色を指定することができます.application.rbにさらに一行追加します.

config/application.rb

  class Application < Rails::Application
    config.load_defaults 5.2
    config.rack_dev_mark.enable = !Rails.env.production?
+   config.rack_dev_mark.theme = [:title, Rack::DevMark::Theme::GithubForkRibbon.new(position: 'right')]
  end

f:id:bake0937:20191110082301p:plain

リボンはどの位置に表示したほうが良いのか

開発者やチームメンバーで相談すれば OK ですが,どの位置に表示した方が効果的なのかを調べてみました.

どうやら人間は画面や紙面を見る時,視線は左上から始まることがわかりました.今見ている環境が開発用なのかは最初に認識するべきだと思い,私はリボンを左上に表示するようにしています.

www.idia.jp

まとめと所感

今回は「rack-dev-mark」についてまとめてみました.導入自体は簡単でしたが,Ruby 2.6,Rails 6.0.1 にはまだ対応していないことは知りませんでした.

gem やライブラリを利用する時は公式ページの情報をくまなくチェックするべきだと改めて実感することができました.