Bear - プライベートメモ
Bearは、ライター/弁護士/シェフ/教師/エンジニア/学生や保護者などのさまざまなユーザーによって利用されている自由なメモアプリです。 Bearは、素早い整理機能・編集ツール・エクスポート機能を備えているため、素早く書いてどこでも共有することができます。また、暗号化によってプライバシーを保護します。 2017 Apple デザインアワード 2016 年 App Store アプリオブ・ザ・イヤー 「Bear は、私が一番気に入っている執筆アプリ」- Kit Eaton, New York Times 柔軟かつシンプルなツールで*自由に書きましょう* Bear は多数のブロガー、作家、弁護…
apps.apple.com
Nakamy
Nakamyは友達のiPhoneの中身を覗けるサービスです。
nakamy.com
こんな感じのやつ。アプリとかサービスの紹介とかで使っていきたい。
Iframely - Embeds codes for today's Internet
Iframely gives you simple APIs to have all the Web's best media on your site and on all your users' devices.
iframely.com
まさしく、今回の用途ならIframelyが良さそうなのだが、外部サービスに依存したくなかったのと、カスタマイズ機能があるものの、もっと細かいカスタマイズがしたかったので、作ってみたかった想いもあり、自作することにした。
/content/data/links.yaml
内でリッチなリンクとして出したいURLの一覧を管理するようにしたisFetched != true
なURLがあれば、リクエストを投げて結果を取得し、isFetched: true
な状態でファイルに書き込みに行き、OGPデータが揃った一覧を返す関数を作成したisFetched: false
にしておけば良いgatsby-node.js
内で上記関数を呼び出して、コンポーネントからGraphQL経由でデータを参照できるようにしたgatsby-image
を通すために、 createRemoteFileNode
をするようにしたcreateNodeField
をして、GraphQLから取得できるようにしたdata.allFile.edges
で取得した一覧にプロパティで渡ってきたURLが存在した場合、その情報を使ってリッチな見た目にしたコンポーネントを返すgatsby-remark-component
と rehype-react
を使ってMarkdown内からRichLinkコンポーネントを呼び出せるようにしたgatsby-remark-component
と rehype-react
を使う方法でバグを踏んだので、MDXを使うアプローチに切り替えた。
GatsbyJSで作っているブログで gatsby-remark-component を使うのを止めて、 gatsby-plugin-mdx を導入した