VuePressを使って”Laravel+TDD”の導入記事を書いてみた

Laravel+TDDの基礎

Laravel+TDDの基礎 https://laravel-tdd.doc.tacck.net/

こういうサイトを作りました。(ドキュメントとしては、作成中です。)

VuePressという、Vue.jsをベースにした静的サイトジェネレータを使って作っています。

2019/09/11 更新
VuePress 1.x に Google Adsense を組み込むための記事を作成しました。
VuePress に Vue-Google-AdSense を導入する手順解説

きっかけ

最近、LaravelというPHPフレームワークをよく使っているので、それに関しての勉強とその情報発信をしたいなぁ、と思っておりました。

また、最近「テスト駆動開発」という書籍を改めて読みまして、「自然にテストコードを書く」ための導入コンテンツが必要だなぁ、と感じました。

その二つが合わさって、Laravel+TDDの基礎といテーマを思いつきました。

なぜ静的サイトジェネレータを使ったのか

このブログ(WordPress)ではなく、なぜ静的サイトジェネレータを使ったのか?というと、一番は「独立したコンテンツ」にしたかったからです。
そこそこボリュームがあるのはわかっていましたし、ブログで書いた後に更新をかけていくのも微妙だなぁ、とも思ったので。

WordPressの固定ページでやっていく方法もあるとは思いましたが、
ローカルでMarkdownファイルを書いてそのままデプロイできる方が便利だなぁ、という考えもありました。

ということで、静的サイトジェネレータを使う方向で検討しました。

いくつか調べつつ最初はGitBookを使ってみたのですが、いまいちしっくりこずに断念しました。(ツールの更新も止まっているっぽい?)

という呟きのとおり、ちょうど勉強会で知ったVuePressを使ってみました。

VuePressを使ってみて

基本的なこと(Markdownを書いて表示する)分には、何も難しいことなくできます。
(これは、大抵のツールがそうだと思いますが。)

サイドバー周りの調整などは、構造によっては頑張って設定しないといけないですが、基本的には難しいことなく作ってくれるので、とても楽です。

最初にその辺りを多少頑張る必要はありますが、その後はドキュメントを書くことに集中できそうです。

レイアウトをカスタマイズしようとすると、、ちょっと簡単ではなさそうです。
これは、VuePressの知識とあわせてVue.jsの知識も必要になってきて、若干ハードルがあがります。

標準のレイアウトで見栄えも気に入っているので、大きく困りはしないのですが、「作者情報」や「Google AdSense」あたりを埋め込むのに、カスタマイズをしました。
この辺りは、今後も研究が必要そう。

サイクル

書いてリリースするまでの簡単な流れを紹介。
ドキュメントは、GitHubで管理しています。

  • 手元でブランチを切って、ドキュメントを書く。
  • VuePressのローカルサーバでチェックしつつ修正。
    • 基本的にリアルタイムで反映される。
  • 書き終わったらコミットして、Push。
  • GitHubのリポジトリページでPR作成。
  • masterへマージ。
  • WerckerというCI/CDサービスでビルド+デプロイ。
    • デプロイ先はAWS S3。
    • マージを検知して自動実行される。

という感じです。
ビルド+デプロイ部分を自動化していることで、マージボタンを押せばきちんと本番に反映されて、ストレスフリーでリリースができます。
これは、最初にやってよかったですね。

というわけで

LaravelとTDDを少しでもわかりやすく、実際に開発で使えるような、そんなドキュメントを頑張って書いていきたいと思います。

tacck
  • tacck
  • 北の大地の普通のソフトウェアエンジニア。
    インフラ・バックエンド・フロントエンドと、色々やります。

    初心者・若手向けのメンターも希望あればお受けします。

    勉強会運営中
    * ゆるWeb勉強会@札幌
    * スマートスピーカーで遊ぼう会@札幌

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください