記録。

めも。

npmモジュールを公開しました(まだまだ課題はありますが、、、)

こんにちは。

今日は個人的に作成したnpmモジュールを一応公開したので、それを書こうと思います。
一応と付けているのは後半で書きますが、課題(やるべきこと)が残っているからです。


まず、作成したnpmモジュールはcordovaのプラグインです。

https://github.com/2takaanthony85/cordova-plugin-swift-camera

cordova-plugin-swift-camera - npm


npmモジュールとは言っても全然javascriptは書いてません。笑

cordovaのカメラプラグインをswiftで作ったのは作成自体はほとんどswiftのネイティブ部分につぎ込みました。


これを作成した理由、経緯としては、

cordovaを仕事でいじることになり、、、

・カメラ機能が必要だった
・そのカメラ機能をswiftで実装しなければならなかった

ということから当初はプラグインすでに転がっていないかなーと思って
githubやnpmをあさっていましたが、、、、


ありませんでした!!!。。。。


ということで自作することになり、、、
npmとかpackage.jsonとか何?というところから始まりました。

てんやわんやしながらもなんとかcordovaのプロジェクトでカメラを使用できるところまではいきました。
そしたら、自身の中でこんな思いが生まれました。

「もしまたカメラ使うことになったら、、、流用できるようにしといた方がいいじゃん。」
「いっそのこと公開しちゃえばいいんじゃね??」

と思い、まずは基本機能だけでもと思い、npmモジュール公開に向け始動しました。



とは言っても最低限での公開だったので、意外とすぐにできてしまいました。

3分でできるnpmモジュール - Qiita

3時間でできるnpmモジュール - Qiita

初めてのnpm パッケージ公開 - Qiita

上記の記事を参考にさせていただきました。ありがとうございます。


ただ、今回「一応」とか「課題」があると書かせていただきましたが、
まだ、使ってもらうには早いのではと思っています。
(ただ、公開までの流れを体験してみたかったので、、、公開しました。。。)

理由としては

・機能が本当に最低限(ズーム、フラッシュ、バックとフロントの切り替え、クオリティの切り替えがまだ実装されていない)

・テストを本格的にやっていないまま公開した
(ちょこっと動作確認しただけなので、テストしてCIにのせるということをしていません、、、)

テスト〜継続的CIについてはまだ、ペーぺーの身、全然知らなかったためこれから勉強して次のバージョンアップの際に
クリアできればと思ってます!


とりあえず、unit testとbitriseやtravisCIのテスト関連の勉強の必要性を実感した
はじめてのnpmモジュール公開でした。