Sau nhiều năm nghiên cứu kỹ thuật và công việc nền tảng, dịch vụ ứng dụng Fedora Badges đã được xây dựng lại từ đầu và đang tiến tới môi trường production. Dù bạn đã sưu tầm huy hiệu nhiều năm hay hoàn toàn mới với cộng đồng Fedora Project, đây là những gì đang chờ đón bạn.

Giao diện người dùng hiện đại hóa hoàn toàn

Các trang được kết xuất từ máy chủ theo kiểu cũ đã không còn. Dịch vụ Fedora Badges giờ chạy trên một ứng dụng đơn trang (single page application) hiện đại, mang lại trải nghiệm nhanh hơn và phản hồi tốt hơn, hoạt động trên nhiều kích thước màn hình và loại thiết bị khác nhau mà không cần tải lại toàn bộ trang hay nạp lại giao diện.

Điều hướng cũng được thiết kế lại. Nhưng đừng lo lắng – nếu bạn đã lưu dấu trang cho bất kỳ liên kết dịch vụ cũ nào, chúng sẽ chuyển hướng bạn đến đúng nơi.

Bảng màu, chế độ tối

Bạn có thể tùy chỉnh giao diện của dịch vụ Fedora Badges với tám bảng màu. Lựa chọn của bạn được áp dụng xuyên suốt các thành phần của giao diện – từ thanh điều hướng đến đường viền, từ biểu đồ đến điểm nhấn, v.v. Việc chuyển giữa chế độ tối và chế độ sáng tôn trọng tùy chọn hệ thống của bạn và cũng có thể chuyển đổi thủ công.

Lựa chọn của bạn được giữ lại qua các lần truy cập, lưu trong session storage. Miễn là cùng một phiên được sử dụng, bảng màu và cài đặt chế độ tối sẽ được duy trì.

Trải nghiệm sưu tầm huy hiệu được hồi sinh

Trang hồ sơ không chỉ hiển thị những huy hiệu quý giá của bạn mà còn có radar chart phác họa bộ sưu tập của bạn theo các danh mục. Đây là một cách đơn giản để đánh giá tiến độ và khám phá những lĩnh vực bạn chưa khai phá. Nhờ tạo điều kiện đa dạng hóa hoạt động, tính năng này khuyến khích nhiều người tham gia hơn.

Trang lịch sử được làm mới cũng bổ sung biểu đồ collection time-line hiển thị hoạt động đóng góp của bạn (và bạn bè) qua nhiều tháng, nhiều năm chỉ trong nháy mắt.

So sánh (hoặc cạnh tranh) với bạn bè

Trang difference page được làm mới cho phép bạn so sánh bộ sưu tập huy hiệu của mình với của bạn bè. Xem những huy hiệu nào cả hai cùng có, những huy hiệu nào chỉ mình bạn sở hữu, và quan trọng nhất là những huy hiệu họ đã đạt được mà bạn chưa có. Đây là cách thú vị để khám phá huy hiệu mới và tìm ra những cách đóng góp mới.

Bạn cũng có thể liên hệ với các thành viên cộng đồng để tìm kiếm cơ hội cố vấn (mentoring opportunities) tiềm năng, dựa trên hoạt động đóng góp và bộ sưu tập huy hiệu của họ.

Khám phá huy hiệu theo độ hiếm

Mỗi huy hiệu đang hoạt động giờ có một rarity tier dựa trên số lượng người dùng hiện sở hữu:

  • Fedorable — Thứ không thể có được
  • Legendary — Uy tín huyền thoại
  • Epic — Đáng để khoe khoang
  • Rare — Nỗ lực có nguyên tắc
  • Uncommon — Phấn đấu vì tương lai
  • Common — Lời chào nồng ấm

Giờ bạn có thể duyệt các huy hiệu đang hoạt động theo bậc độ hiếm, giúp dễ dàng săn tìm những huy hiệu mà ít người đạt được. Không chỉ giúp bạn tìm ra những hướng đóng góp mới, bạn còn cảm nhận được những công việc có sức ảnh hưởng và các lĩnh vực phù hợp đang chờ đón bạn trong hoạt động cộng đồng.

Tìm kiếm ngữ nghĩa hợp nhất

Không còn tìm kiếm huy hiệu và người dùng riêng biệt, thanh tìm kiếm giờ hỗ trợ tra cứu hợp nhất (unified lookup) cả huy hiệu lẫn người dùng. Bắt đầu gõ và kết quả xuất hiện ngay lập tức – với kết quả tra cứu tốt hơn. Kết quả sẽ hiện ra khi truy vấn đủ tổng quát để trả về hơn tám kết quả.

Để tiết kiệm tài nguyên máy chủ, yêu cầu tìm kiếm không đồng bộ (asynchronous search) chỉ bắt đầu khi bạn nhập ít nhất bốn ký tự vào thanh tìm kiếm.

Bảng xếp hạng với điều hướng thời gian

Không còn bó hẹp trong trang rankings page tĩnh tại, giờ đây bạn có thể yêu cầu lọc theo khoảng thời gian tùy chỉnh trên trang bảng xếp hạng. Bộ lọc có thể dựa trên ngày, tuần, tháng và năm. Bạn có thể xem ai đã đạt nhiều huy hiệu nhất trong những khoảng thời gian đó, đồng thời nhìn lại tiến trình phát triển của cộng đồng trong một giai đoạn.

Thứ hạng mang tính xác định (deterministic) và có thể chia sẻ với người khác qua liên kết chia sẻ vốn giữ nguyên các bộ lọc. Điều này tạo ra một tài nguyên tái lập được (reproducible resource).

Vòng đời hoạt động của huy hiệu rõ ràng hơn

Huy hiệu giờ có thể được đánh dấu thủ công là legacy (đã ngừng trao, không còn đạt được) khi không nên trao cho người dùng nữa. Chẳng hạn, huy hiệu tham gia Fedora Linux Release Party 42 không nên còn được trao cho người dùng mới trong 2026. Do đó, chúng không được tính khi tính toán bậc độ hiếm.

Và không – chúng tôi không thu hồi huy hiệu đã trao cho những người từng đạt được. Những huy hiệu đã ngừng này vẫn sẽ hiển thị trong lịch sử.

Nền tảng bên dưới vững chắc hơn

Như bạn thấy, cuộc đại tu không chỉ dừng ở front-end. Lớp dữ liệu vận hành dịch vụ ứng dụng cũng được đại tu lớn. Dự án Database Library, nơi xử lý mọi thao tác cơ sở dữ liệu, đã có 105 commit từ 7 người đóng góp trong cùng khoảng thời gian, nâng từ phiên bản 1.4.1 lên 1.5.5.

Dưới đây là những gì đã thay đổi bên trong và vì sao chúng quan trọng với bạn:

  • Truy vấn nhanh hơn — Các lượt truy vấn cơ sở dữ liệu trùng lặp đã được loại bỏ, chỉ mục khóa ngoại được thêm vào, và phân trang giờ diễn ra ở cấp cơ sở dữ liệu thay vì trong mã ứng dụng. Các trang liệt kê huy hiệu hoặc người dùng tải nhanh hơn đáng kể, đặc biệt khi số lượng huy hiệu hoặc người dùng tăng lên.
  • Tra cứu hiệu quả — Tìm kiếm từ thanh điều hướng được hỗ trợ bởi các phương thức tìm kiếm mới trong API, áp dụng cho cả huy hiệu lẫn người dùng. Điều này không chỉ giúp tìm kiếm nhanh hơn rõ rệt mà còn giúp quy trình hoạt động hiệu quả hơn trên tầng truy cập cơ sở dữ liệu đồng bộ.
  • Tính toán độ hiếm — Các bậc độ hiếm bạn thấy trên trang huy hiệu được tính toán hàng ngày bằng thuật toán cập nhật trong mã API. Nhiều trường hợp biên giờ cũng đã được xử lý. Mặc định trả về bậc common khi tại thời điểm đó không có người dùng nào sở hữu huy hiệu nói trên.
  • Hỗ trợ legacy — Thay đổi ở cấp schema nhằm thêm cột legacy mới vào bảng badges để phân biệt huy hiệu đang hoạt động với huy hiệu đã ngừng trao. Bộ lọc được tích hợp trong mã API để front-end hiển thị chúng trên các trang riêng khi người dùng yêu cầu.
  • Chuẩn hóa danh mục — Thẻ (tag) của huy hiệu giờ được lưu trong các bảng riêng thay vì dưới dạng chuỗi thô phân tách bằng dấu phẩy, giúp việc duyệt danh mục trở nên đáng tin cậy.
  • Xóa theo tầng — Khi phải xóa huy hiệu trong tình huống khẩn cấp, các assertion của nó trong cơ sở dữ liệu giờ được dọn dẹp đúng cách, loại bỏ dữ liệu mồ côi.
  • Xóa lời mời — Lời mời bị xóa mềm (soft delete) thay vì xóa hẳn, nhờ đó giữ lại lịch sử truy cập đồng thời ngăn các assertion vô tình.
  • Đảm bảo chất lượng — Gần như mọi tính năng mới đều đi kèm ca kiểm thử riêng. Hỗ trợ Python < 3.9 đã bị loại bỏ để chuyển sang Python > 3.13.

Xác thực tổng thể mượt mà hơn

Xác thực đã được làm lại. Đăng nhập theo phiên cũ đã được thay thế hoàn toàn bằng luồng token hiện đại sử dụng OpenID Connect. Dịch vụ ứng dụng giờ có client xác thực riêng, nhờ đó việc đăng nhập qua Fedora Accounts nhất quán hơn với các dịch vụ khác.

Nếu bạn ghé thăm lần đầu, như đã từng làm trong nhiều năm, tài khoản người dùng của bạn được tạo tự động mà không cần thêm bước nào.

Quyền riêng tư của bạn thực sự quan trọng

Địa chỉ email không còn xuất hiện trong nhiều phản hồi API. Chúng được băm trước khi gửi đi dưới dạng phản hồi không đồng bộ (asynchronous response), để Libravatar sử dụng. Người dùng có thể chọn rút hoàn toàn khỏi dịch vụ Fedora Badges; trong trường hợp đó, họ sẽ ngừng nhận huy hiệu cho các hoạt động cộng đồng của mình.

Bản tin RSS giờ chỉ giới hạn ở các mục gần đây để đảm bảo hiệu suất và hiệu quả, vì vậy bạn vẫn có thể theo dõi những hoạt động mới nhất trên ứng dụng.

Dành cho người tạo huy hiệu, người bảo trì và quản trị viên

Nếu bạn thuộc nhóm vận hành, giao diện mới cung cấp cho bạn một bộ công cụ đầy đủ:

  • Giao diện quản trị cơ sở dữ liệu nâng cao
  • Tạo và thu hồi phần thưởng từ người dùng của bạn
  • Tạo và làm hết hạn lời mời cho huy hiệu
  • Tạo và thu hồi ủy quyền từ người dùng của bạn
  • Tạo và cập nhật huy hiệu
  • Tạo và cập nhật người dùng

Quyền truy cập được phân theo tầng – thành viên cộng đồng dùng trải nghiệm dịch vụ, còn thành viên nhóm được ủy quyền nhận công cụ quản trị họ cần.

Tiến độ qua những con số

Cuộc đại tu này (mang mật danh स्वातंत्र्य hay Svātantrya) là thành quả của một năm làm việc tích cực trên hai kho lưu trữ, gồm 165 commit trong Tahrir và 105 commit trong Tahrir API. Thành quả này đến sau nhiều năm nghiên cứu kỹ thuật và công việc nền tảng, giúp mã nguồn gọn gàng hơn với mức giảm ròng 13,320 dòng mã.

Cảm ơn những người đóng góp tuyệt vời của chúng tôi

Tôi nói thật lòng rằng cuộc đại tu này sẽ chết yểu nếu không có sự giúp đỡ của những người sau (theo thứ tự bảng chữ cái):

  • Akashdeep Dhar
  • Aurelien Bompard
  • Awwal Adetomiwa
  • Chibuezem Marvinrose
  • Daniel Mungai Chege
  • Emma Kidney
  • Gregory Sutcliffe
  • John Iweh
  • Joy Aruku
  • Kevin Fenzi
  • Michael Scherer
  • Michal Konecny
  • Olamide Peter Ojo
  • Payal Sumbhe
  • Shounak Dey
  • Vanshikha Shri
  • Yash Sheorey
  • Xavier Lamien

Và tất nhiên, cả những người từ hội thảo Flock 2026 về Dự án Đại tu Fedora Badges:

  • Ankur Sinha
  • Cornelius Emase
  • Emmanuel Seyman
  • Guillermo Leiro
  • Jakub Jelen
  • Jona Azizaj
  • Jonáš Hubený
  • Justin Wheeler
  • Mat Holmes
  • Matthew Miller
  • Misia Mary
  • Shawn Dunn
  • Vít Smolík
  • Vittorio Cioe

Dự án đại tu này đã rơi vào development hell một thời gian khá dài. Nó có thể thoát ra nhờ những người kể trên và vô số người khác đã giúp duy trì dự án suốt khoảng mười bốn năm qua. Đã đến lúc tôi trao lại ngọn đuốc này cho những người khác có thể tiếp tục duy trì dự án.

Mã nguồn của dự án hiện nằm trong không gian GitHub của Fedora Infrastructure. Hãy cân nhắc gửi phản hồi và đóng góp thay đổi để giúp duy trì các dự án. Bạn cũng có thể tham gia cùng chúng tôi trong phòng chat Fedora Badges trên máy chủ Matrix của Fedora Project để tìm hiểu thêm.

Hãy thử ngay!

Bản triển khai production dự kiến đã hoạt động tại thời điểm bài viết này được công bố. Hãy ghé thăm Fedora Badges để khám phá trải nghiệm mới. Có thể mọi thứ còn hơi thô ráp trong những ngày đầu, mong bạn kiên nhẫn trong lúc chúng tôi khắc phục các trục trặc nhờ những báo cáo hữu ích của bạn.

Ý kiến của bạn định hình những gì tiếp theo cho dịch vụ Fedora Badges. Hãy dùng thử ngay và cho chúng tôi biết bạn nghĩ gì!