15
3

2023年末のElixir④Web/スマホ開発ライブラリ編(最新Elixirのキャッチアップと、アドカレのネタ探しに読んでください)

Last updated at Posted at 2023-12-07

この記事は、Elixir Advent Calendar 2023 シリーズ9 の8日目です

昨日は、 @RyoWakabayashi さんで 「闘魂Elixir ── Advent of code 2023 Day 1 Part 2 を Livebook で楽しむ」 でした


piacere です、ご覧いただいてありがとございます :bow:

2023年末の時点で、Elixirにいったい何が出来るのかを紐解いていくシリーズで、前回は「③ Elixir本体/Phoenix/LiveView編」でしたが、今回は「④ Web/スマホ開発ライブラリ編」です

今回ご紹介するライブラリは、様々なElixirプロダクション開発の現場でも使われるものばかりですが、先日αリリースした過去/現在/未来のスキルからあなたのBright(輝き)とRight(正しさ)を引き出すプロダクト「Bright」でも、もちろんフル活用されています

https://bright-fun.org
image.png

なお、定番データ操作/クラウド向け/マイクロサービス向けのライブラリ/FWは、続編コラムで別途紹介します

ここで紹介されているもの以外にも「ウチでこんな新しめライブラリ使っているよ」とかあれば、ぜひコメントでお知らせください :bow:

あと、このコラムが、面白かったり、役に立ったら、image.png をお願いします :bow:

プロダクション開発で頻出するライブラリ/FW

PhoenixStorybook

Phoenix用Storybook(UIコンポーネントを一覧/テスト)

image.png

ElixirDesktop

ElixirでLiveViewからスマホネイティブアプリ/PCアプリを生成できるフレームワーク

image.png

@the_haigo さんや @Alicesky2127 さんがElixir Advent Calendarでコラム公開してくれています

Scrivener

ページネータライブラリ

ScrivenerEcto

Ecto用ページネータライブラリ

Swoosh

Phoenixに標準搭載されているメールクライアント

Mogrify

最もメジャーな画像加工ツール「ImageMagick」ラッパー

Image(Vix)

画像加工ライブラリ「Vix/libvips」のラッパー

Evision

Python AI・MLではポピュラーな画像加工ライブラリ「OpenCV」のラッパー

StripityStripe

Stripe(決済サービス)クライアント

Timex

日付/時刻操作ライブラリ

NimbleCsv

CSV操作ライブラリ

Xlsxir

Excel操作ライブラリ

ExPhoneNumber

Google libphonenumber互換の電話番号パーサー/フォーマッター/バリデーター

Money

ISO 4217通貨コード/ISO 24165デジタルトークン識別子に対応し、暗黙の丸めが発生しない通貨処理

Jason

Phoniexにも標準搭載されているピュアElixir JSONパーサ

Absinthe

GraphQLクライアントおよびサーバー

NimbleTotp

2段階認証用ランタイムパスワード生成ライブラリ

Ueberauth

ソーシャルログイン認証ライブラリ

UeberauthGoogle

上記UeberauthのGoogle OAuth2利用

OAuth2

OAuth2クライアント

Joken

JWTライブラリ

LiveViewNative

WebアプリとスマホネイティブアプリのためのUIをLiveViewで提供するフレームワーク

mix test.watch

実装/テストの両ファイルが更新されるたびに都度テスト実施するCIツール

TestIex

iexから任意のテストを実行できる

Patch

Fakeモジュールへの置き換えや、GenServer差し替え、関数へのパッチ当てなどでモック化し、元コードを変えずにassertも注入できる

Mock

テストコードにモックを渡す形でモック化

Mox

Java interface相当のElixir機能である「Behaviour」を使ってDI(Dependency Injection)することでモック化

ExMachina

RailsのFactoryBotと似た感触のテストデータジェネレータ

Faker

テスト用Fakeデータジェネレータ

ExCoveralls

カバレッジツール

Wallaby

LiveView testと似たような複数ブラウザ操作e2eツール

Benchee

性能テストフレームワーク

Scientist

GitHubでも使われている本番環境上でロジックのA/Bテストをするフレームワーク

Quantum

CRONライクなお手軽ジョブスケジューラ

LoggerJson

CloudWatchやCloud Loggingとの連携で有用なJSONロガー

Sentry

Sentry(障害監視ツール)クライアント

Sobelow

Webセキュリティチェックツール

終わりに

Web/スマホ開発に役立つ実践的ライブラリをお届けしました

これらを使えば、どんなものが開発できるかは、ぜひBrightを体験することでご覧ください :information_desk_person_tone1:

image.png

次回は、「⑤ AI・ML前編【Nx/Bumblebee】」をお送りします


明日は、 @RyoWakabayashi さんで 「闘魂Elixir ── Advent of code 2023 Day 1 Part 2 を Livebook で楽しむ」 です

p.s.このコラムが、面白かったり、役に立ったら…

image.png にて、どうぞ応援よろしくお願いします :bow:

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