くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

AndroidでGIFアニメを表示する(Glide)

Android向け画像読み込みライブラリ「Glide」 いつもお世話になってるけど、GIFアニメもOKだった(´ω`) でも、ループしてほしくないな〜とおもったら、 issueに対応方法があったので、調べたときの備忘録。 build.gradle dependencies { implementation 'com…

Cropper.jsで画像切り抜きWebアプリを作ってみる

画像の一部を簡単に切り抜きたいなと思って、いろいろ調べてみたら、 Cropper.jsという便利なライブラリがあったのでお試し(´ω`) こんなのを作りました(´ω`) いろいろ遊んでたらなんかできた(*´ω`*)https://t.co/FPc1ylaVqH pic.twitter.com/KdDLeXiY1q— …

Cloud Build+Cloud Runでタグ名を環境変数に設定する

前にGitHub ActionsでやっていたやつのCloud Build+Cloud Run版。 www.memory-lovers.blog Cloud RunだとDockerが絡むので、ちょっと面倒。。 全体の流れ Cloud Buildだと、環境変数($TAG_NAME)からタグ名を取得できる Cloud Runだとdocker buildしないとい…

GitHub Actionsでyaml側で実行されないようにする(branches-ignore/tags-ignore)

とても便利なGitHub Actions。 やっぱやめたいなと思ったとき、yamlでdiasbledできないかなと思って、調べたときの備忘録。 branches-ignoreやtags-ignoreで全指定すればよいっぽい(´ω`) こんな感じ "on": push: # タグ指定で無視 tags-ignore: - "v*.*.*" …

GitHub Actionsでタグ名を環境変数に設定する

とても便利なGitHub Actions。 Firebase Hostingへのデプロイに使っているけど、 バージョン番号を表示したいなと思い、いろいろ調べたときの備忘録。 調べてみると、環境変数の$GITHUB_REFを使えば、タグ名を取得できるよう。 こんな感じ "on": push: # タ…

個人開発報告: 月例振り返り&開発予定 (2021年3月)

3月を振り返りと実績値の公開、今月の開発予定です(´ω`) 前回はこちら(´ω`) www.memory-lovers.blog やったこと 積読ハウマッチ: アップデート0回... アップデートは0回!! あまり稼働を避けてないので、すこしずつがんばらねば。。(´・ω・`) ウマ娘、はじ…

個人開発報告: 月例振り返り&開発予定 (2021年2月)

2月を振り返りと実績値の公開、今月の開発予定です(´ω`) 前回はこちら(´ω`) www.memory-lovers.blog やったこと 積読ハウマッチ: アップデート2回♪ アップデートは2回!! ひさびさにアップデートできた(´ω`) 少し落ち着いてきたので、すこしずつ個人開発が…

個人開発報告: 月例振り返り&開発予定 (2021年1月)

1月を振り返りと実績値の公開、今月の開発予定です(´ω`) 前回はこちら(´ω`) www.memory-lovers.blog やったこと 積読ハウマッチ: アップデート0回!!! アップデートは0回....!! 1月は年始ということもあり、全然できなかった(´・ω・`) というか、本業が多…

DRFのページネーションクラスで今のpageとかを返すよう拡張する

DRFのPageNumberPaginationを使ってると、 今のページ数(page)やページあたりの数(per_page)とかもほしくなる。 ドキュメントとかを見てると、カスタマイズで追加できるよ!と書いてあったので、 いろいろ試してみたときの備忘録。 ・Custom pagination styl…

Django REST Frameworkで返却時だけ表示を変更する(to_representation)

DRFで一部表示を変えるために、serializerを拡張するのめんどくさいなと思ってたら、 良い方法がドキュメントに書いてあったので、その時の備忘録。 ・Advanced serializer usage | Overriding serialization and deserialization behavior こんな感じでSeri…

Nuxt+Buefy+VueValidate+TypeScript

Nuxt+Buefy+VueValidate+TypeScript ひさびさにVeeValidateを見てみたら、 使いやすくなっていた気がするので、いろいろ調べたときの備忘録。 インストール $ npm i vee-validate tsconfig.json メッセージファイルがjsonなので、 tsconfig.jsonに設定を追加…

DjangoでRead OnlyなModelAdmin

DjangoのAdmin Siteで特定のModelで参照だけしたいときがあったので、 いろいろ調べてみたときの備忘録。 ReadOnlyAdmin こんな感じで、全部OFF or 処理を空にすればよさそう。 from django.contrib import admin class ReadOnlyAdmin(admin.ModelAdmin): de…

Android10からバックグラウンドからActivityを起動できなくなった(SYSTEM_ALERT_WINDOW権限)

Android10の変更点で「バックグラウンドからのアクティビティの起動に関する制限」が追加され、Service内などバックグラウンドからActivityを開くのに制限がかかるようになったよう。 基本的には、「いきなりAcitivityを開くのではなく、通知を使ってね」と…

Androidで全画面表示にする方法(テーマで設定/プログラムで設定)

よくやるのに忘れるので、備忘用(´ω`) テーマで設定する <resources> <style name="AppTheme.FullScreen" parent="@style/Theme.AppCompat.Light"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> </resources>

Androidでカスタムビュー: NumberPickerのmin/maxをxmlで設定できるようにする

Androidの開発をしてて、NumberPickerのmin/maxをXMLで指定したいなと思って、いろいろ調べた備忘録。 カスタムビューにすればできるらしい(´ω`) 設定できる属性を定義する(attrs.xml) まずは、xmlで使える属性を設定する。 res/values/attrs.xmlに設定を書…

AndroidでCameraXを使ってみる(プレビューの表示)

ひさびさにAndroid Jetpackのページを見ていたら、 CameraXなるものがあったので試してみたときの備忘録。 CameraXとは? 公式ドキュメントの説明はこんな感じ。 CameraX は、カメラアプリの開発を簡単に行うための Jetpack サポート ライブラリです。ほとん…

Nuxt/Vueでtooltip(v-tooktip)

Nuxtを使ったアプリではBuefyを使っているけど、 BuefyのTooptipが相性が悪く, うまくいかない。。 いろいろ調べたらv-tooktipがよかったので、そのときの備忘録。 v-tooltipの内部では、Popper.jsを使ってるらしい。 なにがうまくいかなかったか BuefyのToo…

JavaScript/TypeScriptで独自のエラークラスを利用する

JavaScriptでカスタム例外クラスを作りたいなと思ったら、 めんどうだったので、その時調べたときの備忘録。 以下がすごく参考になった(´ω`) ・例外処理 — 仕事ですぐに使えるTypeScript ドキュメント カスタム例外 こんな感じ。 export class CustomError …

Firebase Emulator Suiteを使ってみた

Firebase Local Emulator Suiteを使ってみたときの備忘録。 初期設定 # バージョンの確認。CLIがv8.14.0以降じゃないと使えない。 $ firebase --version # Firebase自体の初期設定 $ firebase init # Emulator Suiteの初期設定 $ firebase init emulators コ…

Cloud Functions for Firebase + jest + TypeScript

Cloud Functions for Firebase + TypeScriptでテストを書くときの初期設定の備忘録。 ディレクトリ構成 . ├── __tests__ ... テストのコード ├── src ... ソースのコード ├── lib ... コンパイルしたコードの出力先 ├── jest.config.js ├── package-lock.jso…

GitHub ActionsでNuxtアプリをHostingとFunctionsにデプロイする

GitHub ActionsでFirebase Hostingへデプロイできるようになったので、 試してみたときの備忘録。 HostingへデプロイするGitHub Actionsはいろいろある 以下の2つがあるっぽい。 GitHub Action for Firebase GitHub Actionでfirebase-toolsが利用できるやつ …

Firebase Functionsで環境変数を使ってみる(functions:config)

FirebaseのCloud Functionsで環境変数を利用するときの備忘録。 functions:configはデプロイ時に反映されるので注意が必要。 Firebase Local Emulator Suiteを使う場合は、.runtimeconfig.jsonというファイルを用意する。 環境変数を設定 firebase-toolsを使…

nuxt-property-decoratorでfetchやfetchOnServerを利用できるようにする

Nuxt+TypeScriptで開発する時は、nuxt-property-decoratorを使ってるけど、 Nuxtv2.12から追加されたfetchやfetchOnServerがうまく動かない。。 その時、調べたときの備忘録。 一部のメソッドは、Component.registerHooksを使って登録する必要があるらしい。…

個人開発報告: 月例振り返り&開発予定 (2020年12月)

12月を振り返りと実績値の公開、今月の開発予定です(´ω`) 前回はこちら(´ω`) www.memory-lovers.blog やったこと 積読ハウマッチ: アップデート1回 アップデートは1回!! ・2020/12/13 アカウント連携や書影の手動更新など✨ 1回だけど、3つの更新+細々修正(…

複数のアカウントでFirebase CLIを使えるようにする(firebase-multi)

Firebaseをよく使うようにあり、複数のGoogleアカウントでログインするようになった。 一回ログアウトしてログインするか、--reauthつけてログインすれば、切り替えできるけど、 毎回切り替えるのがめんどくさいので、いろいろ調べてみたときの備忘録。 いつ…

個人開発報告: 月例振り返り&開発予定 (2020年11月)

11月を振り返りと実績値の公開、今月の開発予定です(´ω`) www.memory-lovers.blog やったこと 積読ハウマッチ: アップデートゼロ(´・ω・`) なんと、アップデートは0回!! 本業が忙しかったのもあるけど、ゲームやりすぎた。。(´・ω・`) 便利ツール toolbox…

Firebase Authでカスタムトークン認証を試してみる

GoogleアカウントやTwitterなど以外でもFirebase Authを使いたいなと思い、 カスタムトークン認証を試してみるを試してみたときの備忘録 認証の流れ 全体の流れはこんな感じ。 外部の認証でUIDを取得する サーバ側: firebase-adminのcreateCustomToken()でカ…

Bulmaのカラーテーマ「bulmaswatch」をBuefyで使ってみる

普段Bulmaを使っているけど、カラーテーマないかなと思ってたら、 Bulmaswatchというのを見つけたのでその備忘録。 インストール まずは、bulmaswatchをインストール $ npm install bulmaswatch cssに組み込む BuefyのCustomizationに従い、SCSSを用意。 そ…

個人開発報告: 月例振り返り&開発予定 (2020年10月)

10月を振り返りと実績値の公開、今月の開発予定です(´ω`) www.memory-lovers.blog やったこと 積読ハウマッチ: シェア画像を改善 アップデートは2回!! VercelでOGP芸が捗るようになったので、ランキングもシェア画像が出るように! 頭痛仲間: 体調管理やコメ…

Day.jsで相対時間を表示する(n日前/n秒前とか)

開発してるWebアプリでコメント機能をつけてみた。 コメントされた時間を何日前とか相対的な時間で表示したいと思ったときの備忘録。 Day.jsにプラグインが用意されているので、簡単だった(´ω`) 使い方 こちらの記事を参考にした。 import dayjs from "dayj…