- Manganin là một Git forge đang được phát triển bằng Zig, hướng tới quản lý mã nguồn hiện đại không thỏa hiệp; dự án không sao chép mô hình kiểu GitHub hiện có mà tìm kiếm cách cộng tác mới
- Người đóng góp phải được thành viên hiện tại bảo chứng mới có thể tạo issue và PR; cây bảo chứng (vouch tree) theo dõi tuyến trách nhiệm theo từng người dùng để bảo vệ thời gian và sự chú ý của đội ngũ nòng cốt
- Với tiền đề tự host, dự án loại bỏ định dạng dữ liệu độc quyền và sự phụ thuộc vào nhà cung cấp; mọi dữ liệu được lưu dưới dạng tệp văn bản thuần của Git và chỉ yêu cầu phần cứng tối thiểu
- Có thể cấu hình để cả việc clone kho lưu trữ cũng yêu cầu bảo chứng, nhờ đó chặn bot chưa được phê duyệt và scraper dùng để huấn luyện mô hình mà không cần JavaScript, chuyển hướng hay làm chậm tốc độ
- Dự án muốn giảm ma sát và bất tiện của mô hình GitHub hiện tại thông qua quy trình local-first, nơi issue được viết và chỉnh sửa offline trong trình soạn thảo ưa thích rồi đồng bộ bằng Git
Cấu trúc đóng góp dựa trên niềm tin
- Manganin là một Git forge được viết bằng Zig
- Tên gọi lấy từ hợp kim mangan–đồng có điện trở suất tương đối ổn định ngay cả khi nhiệt độ thay đổi
- Số dòng mã trong PR không nhất thiết tỷ lệ với chất lượng hay công sức bỏ ra, trong khi thời gian và sự chú ý của maintainer mã nguồn mở ngày càng khan hiếm hơn do burnout
- Tính thời sự trên mạng xã hội khiến ngay cả những người chưa thực sự dùng thử cũng có quan điểm mạnh về dự án
- Trong cây bảo chứng, người đóng góp mới phải được một người đóng góp hiện tại bảo chứng
- Người bảo chứng cam kết rằng người dùng mình bảo chứng sẽ tuân thủ quy tắc của dự án
- Người dùng được bảo chứng sẽ có quyền đóng góp cho dự án, chẳng hạn tạo issue và gửi PR
- Có thể truy vết quan hệ trách nhiệm từ từng người dùng lên đến đỉnh cây; người đã bảo chứng cho một người cố ý phá hoại dự án cũng có thể chịu hệ quả
- Dự án muốn tạo ra môi trường tin cậy cao bằng cách gắn phạm vi có thể làm lãng phí thời gian của đội ngũ nòng cốt với mức độ tin cậy
- Lấy cấu trúc người dùng của lobste.rs, nơi cả các chủ đề khó cũng thường được thảo luận lịch sự và ít trường hợp bị chặn, làm ví dụ so sánh
Tự host và quyền sở hữu dữ liệu
- Cấu trúc tập trung vào tự host giúp tránh định dạng dữ liệu độc quyền và sự phụ thuộc vào nhà cung cấp, đồng thời tối thiểu hóa yêu cầu phần cứng
- Người vận hành trực tiếp sở hữu môi trường triển khai và dữ liệu; dữ liệu được lưu trong Git dưới dạng tệp văn bản thuần
- Có thể cấu hình để chỉ người dùng được bảo chứng mới clone được kho lưu trữ, nhằm chặn bot chưa được phê duyệt và scraper dùng để huấn luyện mô hình
Hình dung lại mô hình Git forge hiện có
- Trong khi phần lớn Git forge hiện nay cung cấp các chức năng tương tự nhau, Manganin muốn bổ sung sự đa dạng cho hệ sinh thái kiểm soát mã nguồn bằng một mô hình cộng tác mới
- Mục tiêu tối thiểu là cung cấp một mô hình độc đáo cho phát triển trong tương lai; trong kịch bản tốt nhất, trở thành công cụ giúp tăng tốc phát triển các dự án mã nguồn mở hiện có
- GitHub chiếm vị trí lớn trong phát triển phần mềm đến mức gần như được xem là đồng nghĩa với Git
- Forgejo và Codeberg được thiết kế như thay thế thả vào là chạy cho GitHub, nhưng Manganin hướng tới hosting mã nguồn dựa trên Git mà không bị ràng buộc bởi các quyết định thiết kế từ nhiều thập kỷ trước
- Dự án hình dung một luồng làm việc trong đó issue được tạo và chỉnh sửa offline bằng trình soạn thảo văn bản ưa thích, rồi được đồng bộ theo cách Git-native, local-first bằng các công cụ hiện có đã được kiểm chứng
- Ở mọi giai đoạn thiết kế và triển khai, dự án muốn duy trì sự thận trọng để giảm ma sát và bất tiện do mô hình GitHub tạo ra, đồng thời cung cấp lời giải tốt hơn cho các vấn đề workflow phổ biến
- Mục tiêu cuối cùng là phục vụ người dùng, hơn là bản thân công cụ
Chưa có bình luận nào.