2018-01-01から1年間の記事一覧
わぁい!GCPでコスパ最強のアプリ環境App Engineで長年待ち望んだPython3が公開されました。まだβ。従来のGAEと大きく変わるためSecond generationと呼ばれてます。 App Engine standard environment runtimes | App Engine Documentation | Google Cloudこ…
Vue使うなら最初からNuxt.js使えよ、という条件反射みたいな風潮にちょっと反論してみる。 ※2020/7/6 追記 NuxtJSが必要な状況になって使ったときの感想などはこちら uyamazak.hatenablog.com ※2018/9/4 追記 1にviewsフォルダ等について追記またこの記事はN…
環境ごとにファビコンの色を変える小技。 前々職にいたデザイナーさんがやってたのを見てから、使わせてもらってます。yagishの場合こんな感じ。タブを見ると一瞬で分かる。 明らかにヤバい紫のヤギ大根が開発(社内サーバー) まだできてなさそうな緑のヤギ…
以前の下記記事の続きで uyamazak.hatenablog.com本番とステージング環境で、管理コストを削減するために 同じロードバランサー 同じドメイン 同じクラスタ を使いまわし、 /api/* → 本番用Service /api-staging/* → ステージング用Service とパスでサービス…
おかげさまで様々なメディアに取り上げてもらったり、はてブも800超えたりしているyagish。 想像以上の反響の大きさに、勢いがあるうちにもっと良くしようといろいろ施策を考えてます。 が、yagishで使ったVue.js、Firebase、PWAが新規事業だけでなく、個人…
Firebase Admin SDKでデータを抜き出そうとしたら取れなくてハマった。 結論としてはコレクションのみを持つドキュメントは一覧を取得することができないのが分かった。Firebase Consoleだと見れるけどどうやってるかわからないが、よく見ると注意書きがある…
yagish履歴書は、システム1人、デザイン1人、イラスト1人、計3人の小さなチームで作っていて、開発は非常に身軽なので、本番公開時もローカルの開発環境+Firebase本番環境だけだった。rirekisho.yagish.jpでもさすがに大きな変更を本番でやるのは怖いので、…
Python3.7に引き続き。 これで偉大なるasync/awaitが使えるようになった。 id:takuya_minami373がasync/awaitが無くて困ってPythonで書き直すか、と思ってたところのナイスタイミングで気づいてくれた。 おそらくLTSだし、これで気兼ねなくCloud Functionsを…
yagish履歴書は2018年2月ごろから開発を始めた影響で、開発環境が古かったので現時点で最新のVue Cli 3を使った環境に変更中。 rirekisho.yagish.jpcli.vuejs.org導入の流れは以前の記事参照 uyamazak.hatenablog.comつまづいて時間を無駄にした点をいくつか…
yagishの公開から2週間ぐらいたち、Googleサーチコンソールをみるとtitleタグが同じ、descriptionが同じという、SEO対策でよくある初歩的な警告を目にしたので、なんとかする。rirekisho.yagish.jpSPAのSEOはまだ情報が少なくSSR(さーばー・さいど・れんだ…
今日Cloud FunctionsってNodeのバージョン選べるっけと思ってみたら、Python3.7があることに気づく。package.jsonの代わりにrequirements.txtがありpipのパッケージを指定できるっぽい。Nodeは6系と古いままのにPythonは6月ごろに出たばっかの最新の3.7とこ…
yagish履歴書で今後のアップデートのお知らせ用にはてなブログProを利用しようと考えている。rirekisho.yagish.jp (関係ないけどはてブ800超えてうれしい)もちろんRSSがあるので、これをVue.jsアプリ内で読み込んでもいい。 でも、RSSとかXMLとかを扱うと…
rirekisho.yagish.jpリリース出したのは7/11だけど、なぜか今朝になっていつも見てるはてブ上位にいた うれしいファビコンがルートに置いてないせいか出てないから直そう 2018/7/12 12:43追記 テクノロジー1位やったー この記事のタイトルも変えたなんでこん…
WEB上だと空のプロジェクトとかでLighthouseの高得点を目指す記事はあるけど、実用的なPWAアプリでの情報は少ないので試したことをまとめてみる。履歴書をスマホで入力できてPDFで出せる新サービスyagish履歴書。 まだまだ改良の余地はあるけど使える状態。r…
uyamazak.hatenablog.com 2018年の2月ごろ、VueでPWAの履歴書作成アプリを作り始めて、もうすぐ本番公開だけど改めて調べると環境がすでに大きく変わっていた。 作ったのこれ↓ rirekisho.yagish.jp半年もたってないけどこの変化だからなるべく早く変更する準…
現在、近日公開予定(サービス名も未定)の履歴書作成アプリをVue.jsとFirebaseでつくっている。 2018/07/12追記 公開しました rirekisho.yagish.jpその中で志望動機欄のような自由記述のテキストエリアのバリデーションがなんとかできたのでメモ。こんな感…
Firestoreはjavascriptのデータをだいたいそのままぶち込んで保存ができるので便利。だけど、Dateを保存していると、数字型(1528444872883みたいな)や独自の下記Timestamp型になって、読み込み時にエラーになって困った。Timestamp | Firebaseこのキーだけ…
Google Map GoはPWAなのにPlayに登録できてて、上のアドレスバーも表示されずに使えて、Googleずるいなぁと思っていたら、Trusted Web Activityというものを使えば、Android アプリから直でPWAを実行できるようになるらしい。アプリ側、WEB側で鍵を持つこと…
いまいち名前が気に入っていないHeadlessChrome、Express、Puppeteerを使ったPDF変換サーバーのhcep-pdf-server github.com今まではA4余白なしのみで、CSSなんとかすればいいと思ってたけど、中身が長くなり改ページされるとそのページの間が余白なしになっ…
Vue.js も SPAも Firebaseも初めてなので、WEB Frameworkでやるような404をどうすればできるか考えてやってみたメモ。Vue.jsは下記のPWAのテンプレートを利用し、vue routerも使っている github.com routerで指定していないパスで404を表示 これは簡単だった…
Firebase Hostingを使ったサイトで、一部のパス(/api以下等)へのリクエストを別サーバーに投げられる仕組みを考えた。別サーバーでCloud Functions(Node.js)で出来ないことをしたかった。結果として動いてしまったけどなぜこんなことしてるのか分からな…
Vue + Webpackでの開発は社内サーバーのDockerコンテナで行っているが、ビルドしたファイルはFirebase Hositingを使って配信したくなった。どうせならfireabase CLIもホストには入れずDockerコンテナ上にインストールしてやってしまいたいと思い、やってみた…
当たり前だけどvue routerで読み込んでいるコンポーネントのmountedでaddEventListenerやsetIntervalをしていると、ページの行き来のたびに登録されて、大変なことになる。リクエスト単位でスレッド、プロセスなどが変わるサーバー側の処理とSPAの違いを意識…
Vue.jsとwebpackといくつかの独自サーバー処理が必要なアプリをどうGCPでデプロイするかを考えた。静的ファイルとWEB API的な部分で分けて考える。 1、静的ファイル配信 Webpackでビルドしたjs、HTMLとかjs、CSS、画像とかメインになるファイルたち。選択肢…
前回からの引き続きやりたかったのは、Vue.jsとFirebase(ブラウザ上)でログイン済みユーザーのメールアドレスに、サーバー側からメールを送りたかった。Vue.jsのPWAでバックエンドをDjangoからFirebaseに移行した - GAミント至上主義もちろん、js側でFireb…
現在開発中のVuejsを使ったPWAで、開発当初はログインやデータの保存にDjangoを使っていたけど、ずっと気になっていたFirebaseに変更してみることにした。 2018/8/2 追記 Vue.jsを使ったPWA、yagish 履歴書リリースしました rirekisho.yagish.jp 追記ここま…
Python3+Django内でZIPファイルを生成する処理で、複数ユーザーが同時に実行すると、一人が成功し、他が失敗するよくわからない状態になり、更にまずいことに成功したユーザーのZIPには他のユーザーのファイルが入ってしまっていた。処理は下記のようになっ…
現在、bizoceanでVue.jsを使った履歴書のPWAアプリ(リリースは夏頃できたらいいなぁ)の企画、開発中や、先日下記のセミナーに出たりした思ったことをまとめておく。japan-android-group.connpass.com 今北産業 PWAの技術を使ってもネイティブアプリと全く…
GCPのアンケートが来るたびにRedisが欲しいと書き続けていた甲斐があったのか、ついにはじまった。 まだベータ。cloud.google.com気になる価格は一番高い1-4GBで$0.049 per GB-hr割引無しで考えると月で$0.049 * 24 * 30 = 35.28ドルたぶんUSでの値段。フル…
現在、Vue.js 2とElementを使って、モバイル向け履歴書作成アプリを作成しているけど、学歴、職歴などでリスト要素の操作がいろいろ必要になってつくったので整理しておく。前提としてモバイル(タッチパネル)向けなので、PCではよくあるドラッグでの移動は…