ご挨拶
このブログへようこそ。管理人のクロ(Kuro_CODE25)です。ここはLinuxを中心にプログラミングなどのIT技術について情報を発信しているブログサイトです。どうぞゆっくりしていってください。
このブログの歴史
「クロの思考ノート」は運営の過程で様々なサービスやオープンソース技術と出会い、移行を重ねてきました。このブログの変遷を紹介します。
1. Google Blogger
2013年に自身のLinuxの設定や技術的な備忘録としてBloggerでブログを書き始めました。当時はブログのホスティングサービスが豊富にあり、多くの人がブログを公開していました。私も数あるブログサービスの中から少し渋めのBloggerを選択し、何か役に立つ記事が書ければ良いなとLinuxで遊んだ記録を書き残していきました。
2. WordPress
ブログ歴が少し長くなるとBloggerという外部サービスに依存していることに不安を覚え独自ドメインを取得してWordPressに引っ越しをしました。当時は少し本格的にブログをやるならWordPress一択という雰囲気でした。
テーマやプラグインを何度も入れ替えカスタムし2019年頃まで運営しましたがWordPressが従来のコードによるカスタムからブロックエディターとブロックテーマのようなマウス操作によってUIを操作する方向へ方針転換したことで、私にとってはWordPressが魅力的なツールではなくなってしまいました。
3. Astro
世の中のWeb技術は従来のマルチページサイトからReact, Vueなどのフレームワークを使用したSPAへとシフトしており、HugoやAstroというった便利な静的サイトジェネレーターも目立つようになってきました。WordPressに失望していた私は実験的なSPAブログサイトを運営する傍ら、このブログを静的サイトジェネレーターに移行することを決意しました。
多くの魅力的なツールがありましたが結局日本語のドキュメントが充実していたことからAstroを選択しました。WordPressからAstroにデータ移行するためのツールを自作し、長かったWordPressでの運営に終止符を打ちました。また、このころから英語訳版も少しずつ日本語記事と一緒に出すように心がけました。
4. 自作ブログシステム
Astroはとても良いサイトジェネレーターでしたが、ブログの記事数300を超えた辺りからMarkdwonファイルでの記事管理が少し辛くなってきました。日本語と英語の2か国語で記事を管理することもありDB化する必要性に駆られました。APIとAstroを連携させることも可能でしたが、敢えてAstroから離れて、APIと管理画面とフロントエンドを自作する方針としました。過去にHaskellで作成したKurologというブログバックエンドシステムを基にRustで新たなAPIを書きました。このシステムは以下の3つからなります。
- API: Rust製でありaxumで構築
- 管理画面:ReactによるSPA
- フロントエンド:SvelteKitによるSSG + SPA構成
これらを自作することでより自由度の高い自身の思い思い描くブログの理想を追求できると考えました。
このブログに使われている技術
自作ブログシステムに使用されいてる技術です。
| 項目 | 説明 |
|---|---|
| データベース | MongoDB |
| ブログAPI | Rust + Axum |
| 管理画面 | React |
| フロントエンド | SvelteKit |
| シンタックスハイライト | Shiki |