LoginSignup
9
3

More than 3 years have passed since last update.

使って学ぶElixir, Phoenixのライブラリ、随時更新

Last updated at Posted at 2020-03-06

Phoenixの学習中に知った便利ライブラリを随時まとめる。

ページネーション

scrivener

scrivenerとscrivener_ectoとscrivener_htmlを組み合わせると簡単にページネーションが作れる。

メーラー

bamboo

アダプタを使うことでsmtpなどでも送れる。
bambooのみのインストールで使えるのはsendgrid, mailgun, mandrill。
送信設定はめっちゃ簡単。
ただテンプレートファイル作ったり、メーラー用のファイル作ったりはちょっとめんどい。

swoosh

bambooとできることの大差はない。
ただ、アダプタが本ライブラリで完結している・メンテが継続していることもあり、こっちのほうが個人的に好み。
使い方も簡単。

パスワードのハッシュ化

pbkdf2_elixir

comeoninの作者が作ったライブラリ。
Programming Phoenixに出てたから使ってる。
テスト用に時間短縮できる設定がある。

テスト関連

テストの自動実行

mix-test.watch

必須。
mix test.watchしとけば、ファイル変更を検知してテストを自動再実行してくれる。

テスト結果のデスクトップ通知

ex_unit_nitifier

デスクトップにテスト結果の通知が出るようになる。
mix-test.watchと使う。
これがあるとREDにならない限りはconsoleを見ないで済むから楽。

HTMLパーサー

floki

Railsのassert_selectみたいなのがPhoenixにはないが、Flokiを使うことで実現できる。

parsed_html = Floki.parse_document!(html_response(conn, 200))
assert Floki.find(parsed_html, "h1") |> Floki.text() =~ user.name
assert Floki.find(parsed_html, "h1 img.gravatar")
assert Floki.find(parsed_html, "ol.microposts li") |> Enum.count() == 20
assert Floki.find(parsed_html, "ul.pagination li.active") |> Floki.text() == "1"

テスト用データ生成

faker

日本語データがないので作ればコントリビュートできそう(?)

インテグレーションテスト

phoenix_integration

scenicの作者が作っているインテグレーションテスト用のライブラリ。

まだ使ったことがないが、パイプラインでつないでいく感じが使いやすそう。

gitのフック生成

git_hooks

gitのhookで何をするかを設定ファイルに書きだせる。
書き出した設定はmix git_hooks.installするとhookのファイルを生成する。

9
3
0

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
9
3