주요 콘텐츠로 건너뛰기

Contributing

Casbin은 많은 프로그래밍 언어에서 구현이 가능한 접근 제어 모델을 지원하는 강력한 인증 라이브러리입니다. 어떤 프로그래밍 언어에도 능숙하다면, Casbin의 개발에 기여할 수 있습니다. 새로운 기여자는 항상 환영입니다.

현재 두 가지 주요 프로젝트 유형이 있습니다:

  • 알고리즘 중심 프로젝트 - 이 프로젝트들은 다른 프로그래밍 언어로 알고리즘을 구현하는 것을 포함합니다. Casbin은 Golang, Java, C++, Elixir, Dart, Rust 등의 언어를 포함한 광범위한 언어를 지원하며, 이들과 관련된 제품들을 지원합니다.
golangjavanodejsphp
CasbinjCasbinnode-CasbinPHP-Casbin
제품 출시 준비 완료제품 출시 준비 완료제품 출시 준비 완료제품 출시 준비 완료
pythondotnetc++rust
PyCasbinCasbin.NETCasbin-CPPCasbin-RS
제품 출시 준비 완료제품 출시 준비 완료제품 출시 준비 완료제품 출시 준비 완료
  • 응용 프로그램 지향 프로젝트 - 이 프로젝트들은 Casbin 위에 구축된 응용 프로그램과 관련이 있습니다.
프로젝트데모세부 사항기술 스택
CasdoorCasdoorCasdoor는 OAuth 2.0/OIDC 기반의 UI 중심의 중앙 집중식 인증/싱글 사인온(SSO) 플랫폼입니다.JavaScript + React 및 Golang + Beego + SQL
CasnodeCasbin 포럼Casnode는 차세대 포럼 소프트웨어입니다.JavaScript + React 및 Golang + Beego + SQL
Casbin OAOA 시스템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 라이선스에 따라 라이선스가 부여될 것에 동의하는 것입니다.