본문 바로가기
728x90
반응형

All Side32

[GitHub] 코드 프리징 하기 데이터 개편을 앞두고 현재까지 잘 동작하는건 프리징 하기 위해 알아봤다. 1. 태그 설정 2. 릴리즈 추가 두가지만 해주면 코드를 프리징 할 수 있다. 1. 태그 설정 git graph에서 프리징 해줄 커밋을 누르면 Add Tag을 할 수 있다. name은 v.0.0.1이든 v.1.0.0으로 본인이 생각하는 버전으로 만들어주면 된다. type은 바꿀 필요 없이 Annotated로 해주고 push to remote을 체크해줍니다. add tag을 누르면 얼마 걸리지 않아 태그가 설정 된것을 볼 수 있죠. github로 가서 해당 레포의 tags를 보면 잘 올라간 것을 확인 할 수 있다. 2. Releases 버전 생성하기 레포 메인 화면에 보면 Releases을 보면 create a new release을.. 2024. 2. 20.
Bun에서 서버사이드 렌더링 NextJS 간단 사용하기 NextJS 준비 미리보기에서 동적으로 이미지와 제목을 변경하기 위해 서버사이드 렌더링을 사용하기로 했다. 런타임을 nodejs로 할까 하다가 최근에 계속 bun으로 작업해서 모든 사이드 프로젝트 런타임을 bun으로 통일했다. 살짝 걱정되는건 아직 완벽하게 bun에서 NextJS를 제어하지 못한다는 점이다. 아무래도 NextJS가 NodeJS에 맞춰 개발을 하다보니 그런 것 같다. 잘되는지 확인하기 위해 bun run start를 했더니 Error: ENOENT: no such file or directory, open '/WEB/.next/BUILD_ID' 이런 오류를 만나게 됐다. 공식문서를 보니 bun run dev를 하라고 해서 했다. 오~ 잘 나왔다. (혹시 이래도 안되면 bun run buil.. 2024. 2. 1.
crypto 대신 Bun.CryptoHasher 사용하기! 고유한 Id를 만들어하는데 암호화를 위해 crypto 라이브러리를 추가하려고 할 때 갑자기 Bun에서 지원해주는게 없나 싶어서 찾아봤다. 그랬더니 유레카! const hasher = new Bun.CryptoHasher("sha256"); const hasherData = name + category; //여기에 암호화할걸 넣기 hasher.update(hasherData); const hash = hasher.digest("hex").substring(0, 24); 이렇게 코드를 짜주면 crypto와 동일한 기능을 한다. crypto을 굳이 안 깔고 기본 내장 함수로 할 수 있어서 좋았다 👍 bun 공식 문서를 한 번 날 잡고 꼼꼼하게 읽어서 활용할 수 있는걸 다 활용해야겠다. fin. 2024. 1. 31.
[Bun 시리즈] #4 Bun에 어울리는 프레임워크 고르기! - express vs fastify vs hono 그대 express를 왜 버리는가? NodeJS + express + TypeScript 조합은 국룰 👍 express라는 프레임워크를 쓰는 이유는 국룰이라는 말이 나올 정도로 정~말 많은 이들이 쓰기 때문이다. 그만큼 안정성이 있다는거고 문제가 발생해도 많은 이들의 도움을 받을 수 있다. express를 주제로 한 글도 많다. 하지만 런타임을 Bun으로 쓰기로 한거 프레임워크를 express로 하기엔 신식 + 구식 느낌이여서 싫다. 이번 기회에 프레임워크도 신식 느낌으로 프레임워크 두가지를 알아봤고 최종적으로 하나를 선택했다. fastify와 hono 간단 소개 아마 fastify는 들어봤을거다. 이름처럼 빠른 처리 속도와 낮은 오버헤드를 자랑하며 고성능을 목표로 하는 프레임워크다. 하지만 인제 hon.. 2024. 1. 23.
[Git] Your local changes would be overwritten by checkout의 선택지마다 다른 점 비교 vscode로 이런저런 브랜치를 옮겨다니다가 심심치 않게 보는 안내문구다. 현재 위치하는 브랜치와 옮겨갈려는 브랜치 간의 변경사항이 충돌할 때 나타난다. 3가지 선택지를 주는데 각각 어떤 점이 다른지는 알고 누르도록 하자. 1. Stash & Checkout 임시 저장소(stash)에 저장하고 체크아웃을 진행한다. 나중에 이 변경사항을 다시 적용할 수 있다. 그래서 현재 작업을 유지하면서 다른 브랜치로 전환하고 싶을 때 유용하다. (git stash pop 혹은 git stash apply) 2. Migrate Changes 현재 변경사항을 새로운 브랜치로 옮기고 해당 브랜치로 체크아웃한다. 현재 변경사항을 별도의 작업으로 관리하고 싶을 때 유용하다. 3. Fore Checkout 현재 변경사항을 무시하.. 2024. 1. 18.
[Bun 시리즈] #3 Bun + React 조합으로 서버사이드 렌더링 구현하기 백엔드 개발자라면서요? 근데 왜 프론트 영역 공부하세요? Bun http 통신에 대해 알아보다가 우연히 라는 게시물을 보게됐다. (님아 그 강을 넘어가지 마시요...) 우선 Bun은 런타임이고 React는 라이브러리이기 때문에 Bun으로 React를 이용해서 프론트를 구축할 수 있다! 즉, 내가 찾은 글은 프론트 개발자 분들에게 좋을 글이었다. 나의 경우 프론트와 백이랑 같이 하는거라고 착각한거였다 🥹 ... (Bun을 순간적으로 백 프레임워크라고 생각함) (왜 React가 프레임워크가 아니라 라이브러리인지에 대해서는 따로 정리하겠다 - 런타임 vs 프레임워크 vs 라이브러리) 아무튼 나의 착각 덕분에 프론트 영역을 많이 공부하게 돼서 잘 정리해 봤다. 서버사이드 렌더링이란 따라하기에 앞서 서버사이드 렌.. 2023. 11. 6.
[Bun 시리즈] #2 Bun은 왜 빠를까? JSC vs V8 Bun은 뭔 짓을 했길래 빠를까? 🤔 Bun에 감동하자마자 든 생각이 👆였다. 그래서 이거저거 찾아보다가 Bun 공식 페이지에 AI로 물어보는게 있어서 사용해봤다. 만두가 귀엽다. Bun AI가 알려준이유는 2가지다. 1. JSC 엔진 사용 2. 내장된 파일 변환 파일러 두번째 내장된 파일 변환에 대해서는 1편 TypeScript에 대한 NodeJS와 BunJS 차이에서 다뤘다. 그래서 이번엔 첫번째 JSC 엔진 사용에 대해 알아보자. JavaScript 엔진 JSC는 JavaScriptCore 엔진이다. JavaScript 엔진 중 하나인데 우선 JavaScript 엔진이 무엇인지 알아보자. 한마디로 정리하면 JavaScript 언어로 짜인 코드를 해석하고 실행하는 *인터프리터다. 핵심 기능은 파싱, .. 2023. 11. 4.
[Bun 시리즈] #1 Bun 공식문서에서 알려주는 Quickstart 따라해보기 NodeJS를 두고 지금 BunJS에 눈돌아갔니? 맞다. 어느날 우연히 본 영상 하나로 난 Bun으로 사이드프로젝트를 만들어야겠다 생각했다. https://youtu.be/a8uPDppckQk?si=OkesGXLDoiwBG1cR 코딩애플님의 'Bun 서버가 4배 빠르다는건 진짜인가(vs Node.js)'의 영상이었다. 이걸 보면 Bun에 관심이 갈 수 밖에 없다 👍 한 번씩 서버를 킬 때 느려터졌네 하는 순간들이 있었는데... 드디어 NodeJS를 대처할 수 있는 JS 런타임 및 패키지 관리자가 생겨서 너무 좋다 😆 (Bun은 최근에서야 1.0 버전을 출시하면서 그동안 많은 제약들을 벗어났다는 평을 받고 있다.) 맛보기로 공식문서가 제공하는 튜토리얼 따라하기 https://bun.sh/docs/quick.. 2023. 10. 22.
[NodeJS] gts로 간편하게 TypeScript 프로젝트 생성하기 - 라이브러리 추천 가장 귀찮은 일은? 프로젝트 생성하기! 프로젝트를 하나 생성할 때마다 귀찮지 않은가? 개발자한테 귀찮음이란 해결해야하는 숙제와 같다. 역시 나처럼 생각하는 사람들이 많았는지 좋은 라이브러리가 있어 가지고 왔다. GTS란 구글에서 만든 TypeScript 가이드이다. npx gts init 단 한줄의 명령어로 TypeScript 프로젝트를 생성해준다. 사용법 // 폴더 생성 mkdir [name] // 생성한 폴더로 이동 cd [name] // gts 실행 npx gts init --yarn 사용할 때 아무 폴더에나 명령어를 입력하지 말고 먼저 폴더 생성한 후 gts 명령어를 입력해라. yarn을 사용할 경우 나처럼 명령어 뒤에 --yarn을 붙어주면 된다. package.json이 없다고 만들거냐고 물어.. 2023. 5. 2.
728x90
반응형