help.c.nf / 패키지

패키지 레지스터

p.c.nf는 버전이 지정된 패키지를 게시하는 GitHub 방식의 네임스페이스를 제공하는 CNF 패키지 레지스트리입니다. 모든 아티팩트에는 고정 URL, 다운로드 횟수, 접근 제어가 있습니다.

개요

p.c.nf는 <username>/<project> 네임스페이스 아래에서 패키지를 호스팅합니다. 각 프로젝트에는 하나 이상의 버전이 있고, 각 버전에는 하나 이상의 다운로드 가능한 아티팩트가 있을 수 있습니다.

npm의 @scope/package 또는 GitHub의 user/repo와 비슷하지만, 소스 코드가 아닌 바이너리 아티팩트를 위한 서비스입니다.

URL 구조

p.c.nf/ 카탈로그 — 모든 공개 패키지를 탐색
p.c.nf/<user> 사용자 프로필 — 사용자의 패키지 목록
p.c.nf/<user>/<pkg> 프로젝트 페이지 — 최신 버전 및 기록
p.c.nf/<user>/<pkg>/<version> 버전 페이지 — 아티팩트 및 변경 기록
p.c.nf/<user>/<pkg>/download 최신 아티팩트 다운로드
p.c.nf/<user>/<pkg>/<version>/download 특정 버전 다운로드(고정)
p.c.nf/<user>/<pkg>/<version>/<label> 레이블이 지정된 아티팩트 다운로드(예: 플랫폼별 변형)

다운로드

curl 또는 wget으로 패키지를 다운로드합니다.

# 최신 버전 curl -LO https://p.c.nf/c/cred-extension/download # 고정 버전 curl -LO https://p.c.nf/c/cred-extension/2.0.1/download

다운로드는 이어받기를 위한 HTTP Range 요청과 304 Not Modified를 반환하는 조건부 GET 요청을 지원합니다.

속도 제한: IP 주소당 분당 30회 다운로드할 수 있습니다. 제한을 초과하면 429 Retry-After 헤더가 반환됩니다.

게시하기

콘솔 또는 HTTP API를 통해 새 버전을 게시합니다. 어느 방법이든 처음 게시할 때 프로젝트가 생성됩니다.

API 사용

curl -X POST https://p.c.nf/api/publish \ -H "Authorization: Bearer cnf_..." \ -F "slug=my-tool" \ -F "version=1.0.0" \ -F "file=@dist/my-tool.zip" \ -F "description=Short one-line summary" \ -F "category=Client tools" 게시됨 you/my-tool@1.0.0

필수 필드:

  • slug — 영문 소문자와 하이픈만 사용(최대 128자)
  • version — 자유 형식 문자열이며 시맨틱 버전 사용을 권장합니다.
  • file — 업로드할 아티팩트

선택 필드: description, category, icon, visibility, changelog, 여러 아티팩트가 있는 버전의 label

콘솔 사용

console.c.nf에 로그인하고 다운로드 관리를 여세요. 콘솔에서 파일 업로드, 메타데이터, 버전 업데이트를 처리할 수 있습니다.

참고: 게시하려면 CNF 사용자 인증이 필요합니다. 각 사용자는 자신의 /<username>/ 네임스페이스에 게시하며 다른 사용자 이름으로 게시할 수 없습니다.

인증

인증 방법은 두 가지로 지원됩니다.

API 키 (자동화용으로 권장)

console.c.nf/account/api에서 키를 생성한 다음 Bearer 토큰으로 보내세요.

Authorization: Bearer cnf_a1b2c3d4e5f6...

키는 생성되면 한 번 표시됩니다. 최대 10 개의 활성 키를 생성하고 언제든지 취소할 수 있습니다.

세션 쿠키

console.c.nf 또는 id.c.nf에서 탐색할 때 세션 쿠키가 자동으로 인증합니다. 브라우저 확장 프로그램과 콘솔에서 유용합니다.

공개 범위

public 카탈로그에 등록되어 있고 누구나 다운로드 받을 수 있습니다.
unlisted 카탈로그에서 숨겨진, URL 다운로드 할 수 있습니다.
private 소유자와 관리자만 볼 수 있고 다운로드 할 수 있습니다.

버전

게시된 모든 버전은 고정 URL에 보존됩니다. 새 릴리스가 나온 후에도 이전 버전을 사용할 수 있으므로 /1.0.0/download에 고정한 사용자는 같은 빌드를 계속 받습니다.

버전이 없는 /download 엔드포인트는 항상 최신 버전을 제공합니다.

버전 문자열은 자유 형식 텍스트입니다. 명확성을 위해 시맨틱 버전(MAJOR.MINOR.PATCH)을 권장하지만 강제하지는 않습니다.

FAQ

p.c.nf와 d.c.nf의 차이는 무엇인가요?

p.c.nf는 사용자별 네임스페이스(user/project)가 있는 버전 패키지 레지스트리입니다. d.c.nf는 CNF 관리자가 선별해 관리하는 단일 다운로드 카탈로그입니다.

버전을 삭제할 수 있나요?

예, 콘솔에서 삭제할 수 있습니다. 버전을 삭제하면 사용자가 저장한 고정 URL이 작동하지 않으므로 일반적으로 새 버전을 게시하는 편이 좋습니다.

크기의 한계가 있나요?

아티팩트 제한은 사용자 권한 수준에 따라 UPL 단계당 50 MB이며 최대 약 500 MB입니다. 큰 파일은 콘솔에서 청크로 업로드할 수 있습니다.

확장 프로그램은 어떻게 인증하나요?

이 CNF Cred 확장 프로그램은 로그인 할 때 세션 쿠키를 지원합니다. console.c.nf, 그리고 API 키. 확장 설정에서 메소드를 구성합니다.