# package manager

Front-end 도구 및 라이브러리 정리
스타일링 라이브러리 Emotion Emotion은 JavaScript를 사용하여 CSS 스타일을 관리하는 라이브러리로, React와 다른 프레임워크에서 사용할 수 있습니다. Emotion은 CSS-in-JS 스타일링 방식을 채택하여, 컴포넌트와 함께 스타일을 선언하고 적용할 수 있습니다. CSS-in-JS 방식 중 하나인 "Styled Components"와 유사한 기능을 제공합니다. CSS-in-JS: Emotion은 JavaScript 코드 안에서 CSS 스타일을 작성할 수 있도록 해주는 방식으로, 스타일과 컴포넌트를 함께 관리할 수 있습니다. 퍼포먼스: Emotion은 빠른 런타임 성능을 제공하며, 스타일을 최적화하여 불필요한 렌더링을 방지합니다. 스타일 재사용: Emotion은 스타일을 JavaScript 객체로 추상화하여 재사용성을 높여줍니다. Framer-motion Framer Motion은 모션 그래픽 및 애니메이션을 구현하기 위한

[F-Lab 모각코 챌린지 53일차] pnpm
어제 패키지 매니저를 알아봤는데 pnpm이 yarn과 npm이랑 작동 방식이 다르다고 해서 구체적으로 어떻게 다른지 궁금해서 더 알아보려한다! PNPM Zoltan Kochan에 의해 2017년에 출시되었다. npm에 대한 드롭 인 대체(Drop-in replacement) 이므로 npm 프로젝트가 있으면 바로 pnpm을 사용할 수 있다! 드롭 인 대체(Drop-in replacement) 컴퓨터 과학 및 기타 분야 에서 사용되는 용어. 다른 코드나 설정 변경 없이 하드웨어(또는 소프트웨어) 구성 요소를 다른 하드웨어의 (또는 소프트웨어) 구성 요소로 대체해도 부정적인 영향을 미치지 않는 기능을 나타낸다.

[F-Lab 모각코 챌린지 52일차] Package Manager 패키지 매니저, (js)
패키지 매니저를 쓰고 있음에도 무슨 일을 하는 건지 모르고 있었다. js 프로젝트 컨셉도 정하고 들어가게되면 어떤 패키지 매니저가 좋을지에 대해 고려하면서 깊게 공부해보려한다. Package Manager 패키지 매니저 (패키지 관리 시스템) 컴퓨터의 운영 체제를 위해 일정한 방식으로 컴퓨터 프로그램의 설치, 업그레이드, 구성, 제거 과정을 자동화하는 소프트웨어 도구들의 모임이다. 패키지 관리자는 아카이브 파일로된 소프트웨어 배포판과 데이터인 패키지(package)를 다룬다. 패키지 설치, 업데이트, 삭제 의존성 dependency 관리 패키지 압축 해제 패키지 검색 환경 설정 보안 관리 : 신뢰

Helm 설치 및 사용
Helm Kubernetes에서 사용하는 패키지 매니저 Linux: apt, yum Python: pip, conda Node.js: npm 리소스들의 모음(패키지)을 Helm에서는 "차트(Chart)" 라고 부름 Helm chart는 Kubernetes 애플리케이션을 정의, 배포, 유지 관리로 사용되는 여러 가지 Kubernetes 리소스 정의를 포함하는 패키지이다. 공식 문서 Installing Helm using helm hub : https://artifacthub.io/ 예제) bitnami 에서 mysql 설치 > Bitnami: 다양한 오픈 소스 프로젝트를 패키징하여 사용자가 쉽게 설치하고 사용할

PnP 그리고 Yarn berry가 뭐길래 쓰는지 이제 알아보자
회사에서 신규 프로젝트를 시작할때 사용할 보일러플레이트를 만들다가 적용하게된 yarn berry를 적용하면서 알게된 내용을 정리해본다. yarn berry 적용하게된 이유 기존에 사용하던 yarn classic에서 monorepo를 적용하고 싶어 리서치하다가 yarn berry에 있는 workspace를 사용해 구현한 블로그를 보게 되어 따라 적용하다가 체택하게되었습니다. 거창한 이유는 아님... 나중에 알고 보니 yarn classic에도 workspace가 지원되서 monorepo사용에 문제가 없는것을 알게되었을때는 좀 허탈했지만 그래도 공부했다는 마음으로 지내고 있음 그러면 yarn berry 쓰면 뭐가 좋은데? 크게 좋은점은 2가지인거 같다 PnP Zero install 그럼 좋은점이 각각 정확히 뭔데? PnP(Plug'n'Play) yarn 2버전부터 지원되는 기능으로 해당 기능을 사용하면 의존성 라이브러리를 .yarn폴더내 c

패키지 매니저(Package Manager)란?
1️⃣ 패키지 매니저란? 패키지 매니저 패키지 매니저는 패키지를 다루는 작업을 편리하고 안전하게 수행하기 위해 사용되는 툴이다. 여기서 패키지를 다루는 작업이란 아래와 같다. 설치 업데이트 수정 삭제 패키지 패키지는 라이브러리와 비슷한 개념으로, 라이브러리가 코드의 묶음이라면, 패키지는 코드의 배포를 위해 사용되는 코드의 묶음이다. 패키지는 일반적으로 라이브러리나 실행 파일(executable)을 포함한다. 패키지는 다음 3가지 정보를 가지고 있는 코드의 배포 단위이다. 컴파일한 소프트웨어의 바이너리(binary) 환경 설정(configuration)에 관련된 정보 의존(dependency)에 관련된 정보 Dependency 많은 패키지들은 다른 패키지가 설치되어 있어야만 제대로 동작한다. 이 경우에 기존 패

Yarn command
👉 Yarn command 🕹️ Control | 구분 | 명령어 | 예시 및 비고| |:---|:---|:---| | init | $ yarn init | | | version check | $ yarn --version | | | install | $ yarn install | | | add | $ yarn add [package name] | yarn add axios | | add version | $ yarn add [package name]@[version] | yarn add axios@^1.2.2 | | global add | $ yarn global add [package name] | 패키지 전역설치 | | remove | $ yarn remove [package name] | | | upgrade | $ yarn upgrade [package name] | | | cache clean | $ yarn ca
[기술블로그-서핑] npm말고 yarn berry?
Article 박서진, node_modules로부터 우리를 구원해 줄 Yarn Berry I've highlighted >Yarn은 Node.js가 제공하는 require() 문의 동작을 덮어씀으로써 효율적으로 패키지를 찾을 수 있도록 합니다. 이 때문에 PnP API를 이용하여 의존성 관리를 하고 있을 때에는 node 명령어 대신 yarn node 명령어를 사용해야 합니다. > >일반적으로 Node.js 앱을 실행할 때에는 package.json의 scripts 에 실행 스크립트를 등록하여 사용하게 됩니다. 이때 Yarn v1에서 사용하던 것처럼 Yarn으로 스크립트를 실행하기만 하면 자동으로 PnP로 의존성을 불러옵니다. > >### Zero Install Yarn PnP은 의존성을 압축 파일로 관리하기 때문에 의존성의 용량이 작습니다. 또한 각 의존성은

[PM] 알아보자 Yarn Berry!
Yarn Berry node_modules 없이 node를 사용할 수 있는 환경인 yarn berry를 알아보자. 사전 지식 정리 공간: 패키지 매니저란 무엇인가? 1️⃣ 서론 1 - 패키지 매니저의 역할 npm, Yarn, pnpm 모두 역할은 대부분 동일하다. 패키지의 dependency 관리(일괄(Batch) 설치 or 업데이트) 패키지 신뢰성 & 손상되지 않음을 보장 (보안 감사(audit) 수행) 기능에 따른 여러 패키지의 그룹화 패키지 압축 해제 SW repository로부터 패키지 검색, 다운로드, 설치, 업데이트 수행 메타데이터 처리 및 쓰기 스크립트 실행 패키지 배포(publish) 따라서 설치 속도, 스토리지 사용량, 기존 워크플로우와

패키지 매니저
설치, 업그레이드 관리 컴퓨터 패키지 관리, js런타임 관리 런타임: > 프로그램이 실행되고있는 환경자체(브라우저 등) js의 런타임. 기존에는 웹브라우저로 한정. > 쓰다보니 편함.--> 그래서 js를 브라우저 밖으로 꺼내게 되는것이 node.js js가 브라우저가 아니라 외부에서 동작할 수 있게하는게 node.js, npm과 yarn을 이용해 설치, 업그레이드. 두가지 차이 yarn 이 빠름. 그러나 요즘에는 npm이 업그레이드 되면서 차이 없어짐. 버전잠금 ==> 업그레이드시 버전이 바뀌는것 방지. 보안면: creat-next-app 하면 리엑트, 노드모듈즈, 등 여러가지가 설치됨. yarn 은 yarn.lock, package.json을 읽어 그부분만 설치함. npm의 경우 의존하는 다른것들들 자동으로 설치해 실행함. ==> 보안문제. 중복설치 ==>yarn 자동으로 수정해줌. npm ==> 중복설치되어 노드모듈즈 용량 무거워짐. package

[React] React 소개 및 개발환경
🔑 React 란? 프론트엔드 개발을 보다 체계적으로 할 수 있게 도와주는 라이브러리이다. React의 특징 선언형 어떤 방법으로 해야하는지 보다 무엇과 같은지를 선언. 직관적으로 각 상태에 따른 필요한 뷰를 만들고 => React가 필요한 부분만을 효율적으로 렌더링. 컴포넌트 조그만 부분 부분들을 컴포넌트로 작성. 컴포넌트들을 조합해 한 페이지를 만듬. 각 컴포넌트는 독립적으로 작동. 재사용성 Server-Side Rendering(Node.js) React Native(모바일 앱) 💡 라이브러리 vs 프레임워크 라이브러리 란? 다른 사람들이 개발한 기능을 쉽게 가져다 쓸수 있도록 만들어진 코드. 아무곳에서나 불러서 사용할 수 있다. 프레임워크 란? 복잡한 소프트웨어를 간단하게 만들 수 있게 짜여

[번역] JavaScript 패키지 매니저 비교 - npm, Yarn 또는 pnpm?
원문 : https://doppelmutzi.github.io/packageManagers/ > 블로그를 이전했습니다: 티스토리
[CentOS7] yum package manager관련
CentOS7 package manager yum update package 검색 package 설치 package 삭제 yum cache

PNPM - renew
pnpm 오늘날 node.js의 패키지 매니저의 대표주자로는 npm과 yarn이 있을 것입니다. 10년에 나온 npm과 16년에 나온 yarn은 시간이 많이 지났음에도 불구하고 대부분의 프로젝트에서 사용되고 있습니다. 하지만 이들이 가지고 있는 문제들을 해결하기 위해 pnpm,yarn berry이 출시되었으며 해당 글에서는 pnpm에 대해 알아보겠습니다. Package Manager 들어가기에 앞서 package manager에 대해 알아보겠습니다. 팩키지 매니저는 개발자가 프로젝트 진행 중 패키지의 설치, 구성, 업그레이드, 자동화 등에 사용하는 일종의 도구입니다. > What does Package Manager do for us? 1 프로젝트에 맞는 패키지들을 찾고 설치해줍니다. 2 패키지에 문제점이 있는 지 알려줍니다. 3 패키지를 설치할 수 있습니다. 4 특정 위치에 설치할 수도 있습니다. 5 원하는 버전 혹은 새로운 버전으로 패키

Package Managers - npm, yarn 그리고 패키지 버전 잠금에 관하여
What is package managers? 패키지 관리자는 프로젝트가 의존하고 있는 패키지들을 효과적으로 설치, 업데이트, 삭제할 수 있도록 도와주는 관리 도구이다. JavaScript의 주요한 패키지 매니저로는 npm과 yarn이 있다. 대부분의 자바스크립트 패키지 매니저는 Node.js 런타임에서 돌아가며 package.json이라는 파일에 프로젝트가 의존하고 있는 패키지 목록을 명시한다. 일반적으로 패키지는 프로젝트 내의 node_modules 디렉토리에 저장된다. npm npm(Node Package Manager)은 Node.js의 표준 패키지 관리자로, Node.js 런타임을 설치할 때 기본으로 함께 설치된다. 별도 설치가 필요 없어, 쉬운 접근이 가능하다. package-lock.json 파일을 통해 패키지 버전 잠금을 지원한다. yarn yarn(Yet Another Resource Negotiator)은 Fa
프론트엔드 로드맵 스터디 #7 #패키지매니저
🌼 npm npm이란? NPM은 Node Package Manager의 약자이다. 자바스크립트 패키지 매니저이고 NodeJS에서 사용할 수 있는 모듈들을 패키지화하여 모아둔 저장소 역할을 하며 설치/관리를 수행할 수 있는 CLI를 제공한다. 패키지 설치 npm i 명령어로 손쉽게 패키지가 설치된다. 설치에는 local install과 global install이 있다. 기본값은 local install이고 local package는 해당 프로젝트 내에서만 사용할 수 있다. npm i -g 명령어로 global install을 할 수 있다. global package는 모든 프로젝트에서 곹옹으로 사용할 수 있다. global packge install path는 다음과 같다. macOS: /usr/local/lib/node_modules Windows: c:\Users\%USERNAME%\AppData\Roaming\npm\node_m

자바스크립트 런타임
런타임 어떤 프로그램이 동작할 때, 프로그램이 동작하는 곳 자바스크립트 런타임 웹 브라우저, node.js nvm(Node Version Manager) node.js의 버전을 관리할 수 있는 프로그램 설치방법 버전 변경 방법 mvn ls: 현재 설치한 node 버전 확인 mvn install 16.11.1: 특정 버전 설치 mpm(Node Package Manager) 외부 라이브러리를 받을 수 있는 곳. package.json에 해당 정보만 적혀 있다. 실제 실행하기 위한 모듈은 node_module에 따로 저장.

Yarn berry 도입기
Node.js 모듈 시스템 이해 CommonJS는 Node.js의 첫 번째 내장 모듈 시스템입니다. commonJS에서는 로컬 파일 시스템으로부터 모듈을 임포트하기 위해 require.resolve 알고리즘에 의해 node_modules를 순회하면서 모듈의 위치를 찾아냅니다. 현 위치의 nodemodules에 모듈이 존재하지 않으면 상위 디렉토리의 nodemodules 디렉토리에서 모듈을 찾습니다. 이러한 require.resolve 알고리즘은 많은 I/O call을 낳기 때문에 런타임에서 node 구동시에 시간이 오래 걸리는 원인이 되기도 합니다. 기존의 package manager는 node_modules에 모듈을 설치합니다. node_modules 디렉토리를 생성하는 것은 I/O-heavy operation 이기 때문에 package manager가 딱히 최적화할 방법이 없습니다. package manager가 설치하려고 하
TIL - Package Manager(Homebrew)
Package Manager > 패키지 관리자(package manager, 패키지 매니저), 패키지 관리 시스템(package management system)은 컴퓨터의 운영 체제를 위해 일정한 방식으로 컴퓨터 프로그램의 설치, 업그레이드, 구성, 제거 과정을 자동화하는 소프트웨어 도구들의 모임이다. Linux 계열에는 apt-get, yum 등의 패키지관리자가 있다. 하지만 MacOs에서는 앞의 두 패키지 관리자는 사용할 수 없다. 대신 MacOS에는 homebrew 라는 패키지관리자가 존재한다. homebrew 에 대해 살펴보자. Homebrew > Homebrew는 맥스 호웰Hax Howell이 만든 macOS 용 패키지 관리 애플리케이션입니다. 홈브류는 루비로 개발되고 있으며, 2009년 처음 릴리스되었습니다. 2019년 2월에 2.0이 릴리즈 되었으며, 2021년 2월 5일 애플 실리콘을 공식 지원하는 3.0.0 버전이 릴리스되었습니다. `hom

NPM vs Yarn
NPM 가장 유명한 자바스크립트 패키지 매니저로, 자바스크립트 개발자들이 가장 많이 쓰는 node.js의 기본 패키지 관리자이기도 하다. 수많은 개발자들이 제작한 패키지를 자유롭게 공유하는 세계 최대의 패키지 저장소로, 압도적인 자료와 커뮤니티를 기반으로 거대한 개발 생태계가 구축되어 있다. YARN 페이스북에서 제작한 새로 나온 자바스크립트 패키지 매니저이다. 다운받은 패키지 데이터를 캐시에 저장해 중복된 데이터는 다운로드하지않고, 캐시에 저장된 파일을 활용함으로써 패키지 설치속도가 매우 빠르다. (페이스북에서 제작, 운영하기에 페이스북이 프로젝트 정보를 수집하는 목적으로 제작한 것이 아니냐는 의문도 제기되는 편) 트렌드 yarn이 가파르게 성장하며, 점유율을 차지하고