feat: image processing pipeline (resize, WebP/AVIF)
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
- issue の種類
- 機能追加
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- csharp, html
- 領域
- backend, performance
調査の方向性
Start by reading the image resource handling and build pipeline; the issue does not name specific files or tests. Compare the listed imaging backends, then assess how the Liquid resource API, site-level configuration, generated-image cache, and release RIDs fit together. Done means the acceptance criteria pass, including a no-op second build and trimmed single-file releases for every published RID.
索引モデルが issue の本文から書いたものです。
説明
Current State
No image processing at all: page resources and static/ files are copied byte-for-byte. Themes cannot resize,
crop or convert images, and there is no automatic compression.
Tasks
- Pick the imaging backend and flag its cost (NetVips/libvips: AVIF+WebP, native binaries per RID; SkiaSharp:
WebP, no AVIF encoder; ImageSharp: managed, no AVIF, split license) - Liquid API on resources:
resize,fit,fill,crop,format(webp/avif/png/jpg),quality - Site-level
Images:config that converts/compresses every page image automatically (opt-in) - Generate
srcsetvariants and a<picture>partial/render hook - Content-hash cache in
resources/_gen(or similar) so unchanged images are not reprocessed - Read EXIF orientation; strip metadata by default
Acceptance Criteria
-
{{ page.Resources | ... | resize: '800x' | format: 'webp' }}emits the processed file and its URL - A second build with no image changes reprocesses nothing
- Works in the trimmed single-file release binaries for every published RID
Related
- Hugo image processing: https://gohugo.io/content-management/image-processing/
- Migrated from https://gitlab.com/sucos/sucos/-/issues/26
- Depends on #34
- 主要言語
- C#
- スター
- 1
- フォーク
- 0
- 平均マージ
- 10時間 23分
- マージ済み PR(30日)
- 4
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
MASS4ORG/Fanstatic のほかの issue
-
c:templates p:low size:S t:task
難易度 5/5 1週間以上 初心者へのやさしさ 45/100
-
c:content good first issue p:low size:S t:feature
難易度 4/5 3〜5日 初心者へのやさしさ 58/100
-
c:templates p:medium size:M t:feature
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
c:content p:medium size:L t:feature
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
-
c:templates p:medium size:S t:feature
難易度 4/5 3〜5日 初心者へのやさしさ 57/100
MASS4ORG/Fanstatic の issue をすべて見る
似ている issue
-
area-signalr
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
dotnet/aspnetcore#69842 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 64/100
メンテナーはふだん 2 日以内に返信
-
bug needs-triage
難易度 2/5 1時間未満 初心者へのやさしさ 78/100
microsoft/microsoft-ui-reactor#1373 ·
メンテナーはふだん 1 日以内に返信
-
Client customer-reported KeyVault needs-team-attention question Service Attention
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
Azure/azure-sdk-for-net#63861 · コメント 3 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信