티스토리 뷰

WEB2.0/프로그래밍

내가 사랑하는 npm 패키지

나를찾는아이 2021. 8. 17. 14:15
728x90
반응형

진짜 요즘엔 없는게 없는 npm 세상입니다

 

많은 npm 중에서도 사랑하는 npm 패키지들을 같이 공유해볼까 합니다

 

소개가 너무 썰렁한 패키지들도 있지만

 

워낙 유명한 npm이기도하니 클릭하셔서 readme도 한번쯤 읽어보시면 좋을것 같습니다

 

 

uuid

 

UUID v1, v3, v4, v5를 지원하는 UUID생성용 npm 입니다

 

 

 

nanoid

 

위에서 소개한 uuid 패키지의 상위호환이라고 불리는

 

요새 뜨고 있는 uuid 생성용 npm 패키지입니다

 

빠른속도로 uuid를 생성합니다

 

 

 

bullmq

 

이전에 bull이라고도 불렸던  redis 기반의 메시지큐 패키지입니다

 

이름의 혼동이 있어 좀 더 명시적으로 mq라는 접미사를 붙여 bullmq가 되었습니다

 

 

 

dotenv

 

.env 파일에서 환경변수를 읽어 process.env에 로드시켜주는 패키지 입니다

 

코드와 환경변수를 분리해서 코딩을 할수 있도록 돕습니다

 

 

 

 

 

debug

 

 

간단하면서도 강력한 디버깅 유틸입니다

 

npm 소개에 있는 이미지 파일 하나로 이 디버깅 유틸이 설명될것 같네요

 

컬러지정으로 좀 더 보기 쉽게해줄뿐더러

 

디버그의 네임스페이스를 직접 지정할수 있어

 

다양한 레벨의 디버깅을 할수 있도록 돕습니다

 

 

 

libphonenumber-js

 

구글 안드로이드의 libphonenumber 의 javascript 버전입니다

 

폰번호를 파싱하여 다양한 형태로 보여줄수 있습니다

 

글로벌서비스를 운영한다면

 

DB에 저장할때 폰번호를 규격화해서 저장한다거나

 

저장된 폰번호를 다양한 형태로 보여주는 그런 유틸리티입니다

 

 

morgan

 

http request logger middleware 입니다

 

http request log를 원하는 형태에 맞도록 출력해줍니다

 

:remote-addr - :remote-user [:date[clf]] ":method :url HTTP/:http-version" :status :res[content-length]

 

 

helmet

 

express를 좀 더 안전하게 쓸수 있도록 여러개의 보안 패키지들을 합쳐놓은 npm 패키지입니다

 

아래의 리스트에 해당하는 보안처리를 한번에 처리합니다

 

app.use(helmet.contentSecurityPolicy());
app.use(helmet.dnsPrefetchControl());
app.use(helmet.expectCt());
app.use(helmet.frameguard());
app.use(helmet.hidePoweredBy());
app.use(helmet.hsts());
app.use(helmet.ieNoOpen());
app.use(helmet.noSniff());
app.use(helmet.permittedCrossDomainPolicies());
app.use(helmet.referrerPolicy());
app.use(helmet.xssFilter());

 

이렇게 많은것을

 

app.use(helmet());

 

이렇게 한줄로말이죠

 

헬멧을 쓰워준다고하여 이름이 helmet인가 봅니다

 

이름이 참 맘에드네요

 

 

 

express

 

미니멀리스트한 프레임워크입니다

 

const express = require('express')
const app = express()
 
app.get('/', function (req, res) {
  res.send('Hello World')
})
 
app.listen(3000)

 

 

딱 이만큼의 코딩만으로 http 서버를 띄울수 있습니다

 

뭐든 만들기 정말 좋죠

 

 

passport

 

인증처리를 위한 미들웨어입니다

 

여러가지 로그인 방식을 strategy라고 표현하는데요

 

네이버, 카카오, 페이스북, 구글 등등 다양한 인증을 지원합니다

 

당연히 내 서비스 고유의 local strategy를 만들어서 사용하는것도 가능합니다

 

 

lodash

 

배열이나 오브젝트, 문자열 다양한 곳에서 javascript를 좀 더 사용하기 쉽게 만들어주는 여러가지 유틸리티함수를 제공하는 패키지입니다

 

 

 

jsonwebtoken

 

api 인증용 토큰으로 사용하는 jwt 패키지입니다

 

 

 

 

728x90
반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함