はてなダイアリー&グループをMarkdown|AsciiDocで更新するAPI(仮)
概要
はてなダイアリーとはてなグループをMarkdownまたはAsciiDocで更新するAPIを作ります。
目的
なんでそんなことするの
1. REST APIを作りたい
2. はてなダイアリーとはてなグループを更新したい
3. 断片部のキーワードをオープンな個人メモWikiとして使いたい
なんではてなダイアリー(グループ)なの
1. ここ(Scrapbox)はドキュメントがキーワードで繋がるWikiで、これは階層Wikiの限界を超えるための施策だったと思うんだけど、似たような取り組みにはてなキーワードがあって、あちらはキーワードがドキュメントで繋がるWiki。どちらも人間がドキュメントを閲覧する際に、関連する情報にアクセスするきっかけを生み出すのを促進してくれる仕組みだけど、Scrapboxが意識的なキーワードの利用を求めるのに対して、はてなキーワードは無作為なキーワード利用が偶然に他のドキュメントへのリンクを作成するというところが違っている。再利用性(再会のしやすさと言いたい)の高い情報の蓄積にはそのどちらの体験も必要なことだと思ってるから、はてなキーワードがある限り、文書をはてなダイアリーに置く価値があると思ってる。
2. 現代でははてなブログがあるけど、わたしのはてなブログはある程度テーマのある記事を置く場所にしてしまったので、まったくなんでもないもの(わたしはこれをつくるのがだいすき)、つまり日記的なものを置いていくにはちょっとかたい。そこではてなダイアリーなんですね。 3. むかしから日記はあそこで書いてきたんじゃ、これからもそうするのがええ(復古主義)
APIなしでできないの
できない…
1. はてなダイアリーとはてなグループはもう開発はされない錆びたサービスなので、現代の何でも出来ちゃうウェブの世界において物書きの体験が2段も3段も落ちる。インターフェースは公式投稿画面とは別に用意したい
2. はてなダイアリー記法をもう書けない
特徴
Markdown, AsciiDocを投げるとはてなダイアリー記法に変換して返します
一気に投稿までやってくれるAPIも作ります
そのとき、はてなのrkを投げてもらってなりすまします
そのうちフロントエンドも用意したい
技術
motemenさんのはてな記法対応pandocでmarkdown -> (pandoc) -> hatenadiary変換を行います
更にAsciiDoctorを利用することでasciidoc -> (asciidoctor) -> docbook -> (pandoc) -> hatenadiary変換を行います
諸般の事情によりLaravelでAPIを書きます
swagger-codegen の対応がLumenだったのでLumenで作成した
フロントエンド
とりあえず変換するだけ
はてなに投稿するやつ
まだない