cddl

(★ 132)

Concise data definition language (RFC 8610) implementation and JSON and CBOR validator in Rust

  • .dockerignore
  • .gitattributes
  • .gitignore
  • .grype.yaml
  • .npmrc
  • .rustfmt.toml
  • build.rs
  • Cargo.lock
  • Cargo.toml
  • cddl.code-workspace
  • cddl.pest
  • Dockerfile
  • flake.lock
  • flake.nix
  • LICENSE
  • README.md

# 설치 가이드

1. 코드 내려받기
git clone https://github.com/anweiss/cddl

깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.

cd cddl

방금 내려받은 프로젝트 폴더 안으로 이동합니다.

2. 공식 설치 스크립트

쉬움 추천
사전 준비물
  • Rust (rustup) cargo 명령어를 쓰려면 Rust가 필요합니다.
cargo install cddl

crates.io에 배포된 패키지를 빌드해서 설치합니다. 레포를 직접 클론할 필요가 없습니다.

설치 후 새 터미널을 열고, 프로그램의 버전 확인 명령(예: --version)으로 정상 설치됐는지 확인하세요.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

3. Docker

쉬움
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
docker pull ghcr.io/anweiss/cddl-cli:latest

이 명령어를 터미널에 그대로 입력해 실행하세요.

docker run -it --rm -v $PWD:/cddl -w /cddl ghcr.io/anweiss/cddl-cli:<version> help

빌드된 이미지를 실제 컨테이너로 실행합니다.

docker run -i --rm -v $PWD:/data -w /data ghcr.io/anweiss/cddl-cli:0.10.7 validate --cddl reputon.cddl --stdin < reputon.json

빌드된 이미지를 실제 컨테이너로 실행합니다.

터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

4. Node.js

쉬움
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Node.js npm 명령어를 쓰려면 Node.js가 설치되어 있어야 합니다. LTS(장기지원) 버전을 추천합니다.
cd cddl-lsp/client

이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.

npm install

package.json에 명시된 라이브러리들을 내려받아 설치합니다.

npm start

개발/실행 서버를 켭니다.

명령어 실행 후 터미널에 나타나는 주소(보통 http://localhost:3000 형태)를 브라우저에서 열어보세요.

5. Rust

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Rust (rustup) rustup으로 설치하면 cargo도 함께 설치됩니다.
cargo install cddl

crates.io에 배포된 패키지를 빌드해서 설치합니다. 레포를 직접 클론할 필요가 없습니다.

The lexer and parser can be used in a `no_std` context (including bare-metal targets such as `thumbv7em-none-eabihf`) provided that a heap allocator is available. This is enabled by opting out of the default features in your `Cargo.toml` file:

이 명령어를 터미널에 그대로 입력해 실행하세요.

cargo build가 에러 없이 끝나면 성공입니다. target/ 폴더에 실행 파일이 생성됩니다.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

// repository documentation