Skip to content

Hình ảnh & nhận diện: một nhà cho mọi ảnh ​

Mọi ảnh minh hoạ của Conan, bìa sách, ảnh khoá học, bộ ảnh cộng đồng, là một nhà: minh hoạ vector phẳng, vẽ tay bằng SVG trong repo, bốn màu token, không chữ. Chuẩn gốc là kệ sách Drink (26.09.2026), được người soạn chọn làm mẫu cho mọi thứ còn lại.

Bảng tài sản ​

Tài sảnKhổChỗ hiệnTệpPrompt + metadataTrang chuẩn
Bìa sách800×1200 (2:3)kệ /c/:slug/books, /bookscom…/public/images/book-covers/<slug>.svgcontent/books/packs/<community>.jsonBìa sách
Cover khoá học1600×900 (16:9)hero trang khoá (www), thẻ 16:9com…/public/images/course-art/<slug>-cover.svgcontent/courses/art/<community>.jsonẢnh khoá học
Thumbnail khoá1200×900 (4:3)thẻ khoá ở trang cộng đồng…/<slug>-thumb.svgnhư trênnhư trên
Avatar khoá512×512 (1:1)thẻ vuông "khoá của tôi", danh sách…/<slug>-avatar.svgnhư trênnhư trên
Avatar cộng đồng512×512thanh trên khi ở trong cộng đồngcom…/public/images/community-art/<slug>-avatar.svgcontent/communities/art/<slug>.jsonẢnh cộng đồng
Hero cộng đồng2400×800 (3:1)đầu Trang chính /c/:slug…/<slug>-hero.svgnhư trênnhư trên
Footer cộng đồng2400×400 (6:1)cuối mọi tab /c/:slug…/<slug>-footer.svgnhư trênnhư trên

Năm luật chung (mọi tài sản) ​

  1. Vector phẳng, vẽ tay trong repo, không máy sinh ảnh, không API model. Tệp nằm trong git, CI deploy, không bí mật nào.
  2. Bốn màu token, bake thẳng: kem #fff7ed, cam gạch #d94f2b, đen #111111 (đậm nhạt bằng opacity), giấy #f2f2f2 (+ #ffffff trong gradient). Tệp trong /public nằm ngoài cây CSS nên không đọc được biến token, đổi token là phải vẽ lại. Phân biệt cộng đồng bằng vật, không bằng màu.
  3. Không chữ, không số đọc được, không logo, không người lộ mặt. Chữ trên giấy/bảng = vạch mờ.
  4. Prompt đi cùng ảnh: mỗi ảnh có prompt ≥ 160 ký tự đủ để vẽ lại sau sáu tháng, cộng metadata tạo prompt (nguồn ý: outcome, unit, lý do chọn vật). Không bao giờ để ảnh và lời dặn tạo ra nó rời nhau.
  5. Ảnh người soạn tải lên luôn thắng: image_url (R2) > minh hoạ vector > ảnh hình học thuật toán > chữ đầu.

Cửa kiểm tự động: scripts/course_art_to_sql.py check <community> và scripts/community_art_check.py <slug>, chặn sai khổ, màu ngoài token, chữ, ảnh nhúng, script, id trùng, prompt ngắn, vật chính trùng trong một cộng đồng.

Quy trình một cộng đồng ​

  1. Phân cảnh trước, vẽ sau. Người điều phối đọc metadata khoá (course_art_to_sql.py inputs <community>), chốt cảnh + vật chính cho từng khoá vào JSON, tránh trùng ý với bìa sách của cùng kệ (trường avoid). Vẽ song song mà không phân cảnh trước thì ra mười ảnh cùng một cái ly.
  2. Mỗi khoá một người vẽ (agent), ba khổ, xem bằng mắt qua Chrome headless.
  3. Kiểm → trang xem trước → người soạn duyệt → migration → PR.

Sổ các yêu cầu gốc và quyết định: Sổ yêu cầu.

Tài liệu nội bộ nền tảng Conan School.