Skip to content

minista v4 開発メモ #121

@qrac

Description

@qrac

Releases

テーマ:モジュラー化

  • すべての機能をViteプラグインとしてリプレイスしつつ強化
  • 既存のHTMLをJSXで修正するプラグインを追加
  • 静的ページをStorybook風のUIで表示するプラグインを追加

Features

  • DenoとBunで動作
  • 本体の依存関係を分散し大幅に軽量化
  • 本体無しでもViteとプラグインだけで動作
  • HTML・アセットのViteプラグイン処理に対応
  • アウトプットファイル名のhashに対応
  • 画像(ルートパス)の自動バンドルに対応
  • 画像生成にキャッシュを実装
  • SVGをimportなしのルートパスのみでインライン展開
  • SVGインライン展開時の不要なファイル生成を除去
  • SVGインライン展開にSVGO最適化機能を追加
  • SVGスプライト内のスタイルをインラインに変換
  • SVGスプライトのマージに対応
  • SVGスプライトにSVGO最適化機能を追加
  • Partial Hydrationの出力JSをページ毎に最適化

Breaking Changes

  • ViteをpeerDependenciesに変更
  • Reactの対応バージョンを18以上に変更
  • minista.config.tsの内容をvite.config.tsに変更
  • 各機能のアクティブ化をViteプラグインに変更
  • コンフィグのアセットエントリーを廃止
  • Headの参照先をプラグインに変更
  • 画像生成オプションのresolutionをresolutionsに変更
  • Image・Pictureのresolutionをresolutionsに変更
  • Image・PictureのoutNameを削除
  • SVGRの仕組みをimportなしのSvgコンポーネントに変更
  • IconをSpriteに命名変更・参照先をプラグインに変更
  • Partial HydrationのusePreactオプションを削除

Plans

開発ブランチ: v4

  • 実務に最低限のアルファ版を投入して必要になった機能とプラグインを随時リリース
  • 予定している以下のパッケージすべてが完成した時点でv4として公開
  • ドキュメント(v3を配下に内包)とアートワークスの更新

Packages

  • create-minista
  • minista
  • minista-plugin-ssg
  • minista-plugin-enhance
  • minista-plugin-mdx
  • minista-plugin-bundle
  • minista-plugin-image
  • minista-plugin-svg
  • minista-plugin-sprite
  • minista-plugin-hydrate
  • minista-plugin-search
  • minista-plugin-delivery
  • minista-plugin-story
  • minista-plugin-beautify
  • minista-plugin-archive
  • minista-shared-head
  • minista-shared-utils

Tasks

  • serverのHMR・ホットリロード
  • Headのレンダリング処理
  • StoryApp Component
  • StoryAppのNavItem型を提供
  • StoryAppにローディングアニメーション追加
  • bundle buildのHTMLタグ挿入
  • 画像の相対パスに対応
  • entryにbaseを反映
  • Headにclassの型を追加
  • SsgPageのtypeの置き場検討
  • SVGスプライトのスタイルタグをインライン化
  • 既存のSVGスプライトへの追加機能を実装
  • fetchの動作確認
  • 画像生成のキャッシュ対応
  • StoryAppのモバイル対応
  • StoryAppの目次自動生成
  • Winのパス関連をチェック

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions