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는 OAuth 2.0/OIDC 기반의 UI 중심의 중앙 집중식 인증/싱글 사인온(SSO) 플랫폼입니다. | JavaScript + React 및 Golang + Beego + SQL |
Casnode | Casbin 포럼 | Casnode는 차세대 포럼 소프트웨어입니다. | JavaScript + React 및 Golang + Beego + SQL |
Casbin OA | OA 시스템 | Casbin-OA는 Casbin 기술 작가들을 위한 공식 원고 처리, 평가, 표시 시스템입니다. | JavaScript + React 및 Golang + Beego + MySQL |
Casbin 에디터 | Casbin 에디터 | Casbin-editor는 Casbin 모델 및 정책을 위한 웹 기반 에디터입니다. | TypeScript + React |
참여하기
Casbin에 기여하는 방법은 많습니다. 시작하기 위한 몇 가지 아이디어는 다음과 같습니다:
Casbin을 사용하고 문제를 보고하세요! Casbin을 사용하면서 발생하는 문제를 보고하여 Casbin의 개발을 촉진하세요. 버그이든 제안이든 GitHub에 이슈를 제출하는 것이 좋습니다. 그러나 이슈를 제출하기 전에 Discord 또는 GitHub Discussions에서 먼저 토론하는 것이 더 좋을 것입니다.
참고: 문제를 보고할 때는 영어로 문제의 세부 사항을 설명해 주세요.
문서 작업에 도움을 주세요! 문서에 기여하는 것은 기여를 시작하기 좋은 출발점입니다.
문제를 해결 도와주세요! 우리는 초보자에게 적합한 쉬운 작업을 포함하는 표를 준비했으며, 다른 레벨의 도전이 다른 태그로 표시되어 있습니다. 표를 여기에서 확인할 수 있습니다.
풀 리퀘스트
Casbin은 GitHub를 개발 플랫폼으로 사용하므로, 풀 리퀘스트가 기여하는 주요 방법입니다.
풀 리퀘스트를 열기 전에 알아야 할 몇 가지 사항이 있습니다:
풀 리퀘스트를 보내는 이유와 이것이 저장소에 어떤 영향을 미칠지 설명하세요.
풀 리퀘스트가 하나의 일만 수행하도록 확인하세요. 여러 변경 사항이 있는 경우, 이를 별도의 풀 리퀘스트로 분리하세요.
새 파일을 추가하는 경우, 새 파일 상단에 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와 같은 프로젝트에서는 데모를 설정하여 풀 리퀘스트가 프로젝트 개발에 어떻게 도움이 되는지 관리자에게 보여줄 필요가 있을 수 있습니다.
풀 리퀘스트를 열고 기여를 커밋할 때, 다음 형식으로 의미 있는 커밋을 사용하는 것이 권장됩니다:
<type>(<scope>): <subject>
.<scope>
는 선택 사항입니다. 자세한 사용법은 Conventional Commits를 참조하세요.
라이선스
Casbin에 기여함으로써, 귀하의 기여가 Apache 라이선스에 따라 라이선스가 부여될 것에 동의하는 것입니다.