Contributing
Casbin เป็นไลบรารีการอนุญาตที่ทรงพลังซึ่งรองรับโมเดลการควบคุมการเข้าถึงด้วยการนำไปใช้ในหลายภาษาการเขียนโปรแกรม หากคุณมีความชำนาญในภาษาการเขียนโปรแกรมใด ๆ คุณสามารถมีส่วนร่วมในการพัฒนา Casbin ผู้มีส่วนร่วมใหม่ ๆ ยินดีต้อนรับเสมอ
ปัจจุบันมีโปรเจ็กต์หลักสองประเภท:
- โปรเจ็กต์ที่เน้นอัลกอริทึม - โปรเจ็กต์เหล่านี้เกี่ยวข้องกับการนำอัลกอริทึมไปใช้ในภาษาการเขียนโปรแกรมต่าง ๆ Casbin รองรับภาษาต่าง ๆ มากมาย รวมถึง Golang, Java, C++, Elixir, Dart และ Rust พร้อมกับผลิตภัณฑ์ที่เกี่ยวข้อง
Casbin | jCasbin | node-Casbin | PHP-Casbin |
พร้อมใช้งานจริง | พร้อมใช้งานจริง | พร้อมใช้งานจริง | พร้อมใช้งานจริง |
PyCasbin | Casbin.NET | Casbin-CPP | Casbin-RS |
พร้อมใช้งานจริง | พร้อมใช้งานจริง | พร้อมใช้งานจริง | พร้อมใช้งานจริง |
- โปรเจ็กต์ที่เน้นการประยุกต์ใช้ - โปรเจ็กต์เหล่านี้เกี่ยวข้องกับแอปพลิเคชันที่สร้างขึ้นบนพื้นฐานของ Casbin
โปรเจ็กต์ | ตัวอย่างการใช้งาน | รายละเอียด | สกิลที่ต้องการ |
---|---|---|---|
Casdoor | Casdoor | Casdoor เป็นแพลตฟอร์มการรับรองความถูกต้อง/Single-Sign-On (SSO) ที่เน้น UI และใช้ OAuth 2.0/OIDC | JavaScript + React และ Golang + Beego + SQL |
Casnode | Casbin Forum | Casnode เป็นซอฟต์แวร์ฟอรัมรุ่นถัดไป | JavaScript + React และ Golang + Beego + SQL |
Casbin OA | ระบบ OA | Casbin-OA เป็นระบบการจัดการ, การประเมิน และการแสดงผลของต้นฉบับอย่างเป็นทางการสำหรับนักเขียนเทคนิคของ Casbin | JavaScript + React และ Golang + Beego + MySQL |
Casbin Editor | Casbin Editor | Casbin-editor เป็นเว็บเบสเดอร์สำหรับแก้ไขโมเดลและนโยบายของ Casbin | TypeScript + React |
การมีส่วนร่วม
มีหลายวิธีที่จะมีส่วนร่วมกับ Casbin นี่คือบางไอเดียเพื่อเริ่มต้น:
ใช้ Casbin และรายงานปัญหา! เมื่อใช้ Casbin, รายงานปัญหาที่คุณพบเพื่อช่วยส่งเสริมการพัฒนาของ Casbin ไม่ว่าจะเป็นบั๊กหรือข้อเสนอแนะ, การยื่นปัญหาบน GitHub ถูกแนะนำ อย่างไรก็ตาม, จะดีกว่าหากมีการพูดคุยก่อนบน Discord หรือ GitHub Discussions ก่อนที่จะยื่นปัญหา
หมายเหตุ: เมื่อรายงานปัญหา, กรุณาใช้ภาษาอังกฤษในการอธิบายรายละเอียดของปัญหาของคุณ
ช่วยเหลือกับเอกสาร! การมีส่วนร่วมกับเอกสารเป็นจุดเริ่มต้นที่ดีสำหรับการมีส่วนร่วมของคุณ
ช่วยแก้ไขปัญหา! เราได้เตรียมตารางที่มีงานง่ายๆ ที่เหมาะสำหรับผู้เริ่มต้น, พร้อมด้วยระดับความท้าทายที่แตกต่างกันและมีป้ายกำกับที่แตกต่างกัน คุณสามารถตรวจสอบตารางได้ ที่นี่
Pull Requests
Casbin ใช้ GitHub เป็นแพลตฟอร์มการพัฒนา, ดังนั้น pull requests เป็นวิธีหลักในการมีส่วนร่วม
ก่อนที่จะเปิด pull request, มีสิ่งที่คุณต้องรู้บางอย่าง:
อธิบายว่าทำไมคุณถึงส่ง pull request และมันจะทำอะไรให้กับ repository
ตรวจสอบให้แน่ใจว่า pull request ทำเพียงหนึ่งอย่างเท่านั้น หากมีการเปลี่ยนแปลงหลายอย่าง, กรุณาแยกพวกเขาออกเป็น pull requests แยกต่างหาก
หากคุณกำลังเพิ่มไฟล์ใหม่, กรุณาใส่ใบอนุญาต Casbin ที่ด้านบนของไฟล์ใหม่
// Copyright 2021 The casbin Authors. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.ในโปรเจ็กต์เช่น Casdoor, Casnode, และ Casbin OA, คุณอาจจำเป็นต้องตั้งค่าตัวอย่างการใช้งานเพื่อแสดงให้ผู้ดูแลเห็นว่า pull request ของคุณช่วยพัฒนาโปรเจ็กต์ได้อย่างไร
เมื่อเปิด pull request และส่งมอบการมีส่วนร่วมของคุณ, แนะนำให้ใช้ semantic commits ด้วยรูปแบบต่อไปนี้:
<type>(<scope>): <subject>
<scope>
เป็นตัวเลือก สำหรับการใช้งานที่ละเอียดยิ่งขึ้น, กรุณาอ้างอิงไปที่ Conventional Commits
ใบอนุญาต
โดยการมีส่วนร่วมกับ Casbin, คุณยอมรับว่าการมีส่วนร่วมของคุณจะได้รับใบอนุญาตภายใต้ใบอนุญาต Apache