[Fedify] 오픈소스 기여 - 터미널이 아닌 환경에서는 색상을 빼보자
·
Fedify
0. 터미널이 아닌 곳에서는 색상을 빼야하는 이유는?이슈 링크: https://github.com/fedify-dev/fedify/issues/257PR 링크: https://github.com/fedify-dev/fedify/pull/341 이슈에서는 먼저 ‘Color and TTYs’라는 글을 읽어보기를 권한다. 저 글의 내용을 요약하자면, 터미널에서 색상코드를 출력하는 프로그램을 만들 때, 표준출력이 TTY(=Terminal)에 연결되어있을 때에만 컬러코드를 써야한다고 한다는 내용이다. 터미널이 아닌 곳에서는 색상코드가 제대로 출력되지 않고 깨지기 때문이다. Fedify CLI에서는 Deno를 활용하는데, Deno에서는 ‘Deno.stdout.isTerminal()’ 명령어를 활용하여 터미널인지..
[Fedify] 첫 오픈소스 기여를 해보자
·
Fedify
오픈소스 컨트리뷰션 아카데미 발대식이 끝나고, Fedify에 기여를 해보기로 다짐했다. Fedify의 Issue 탭에 들어가 내가 시작해볼만한 이슈가 있는지 찾아보았는데, ‘good first issue’ 태그가 붙어있는 이슈들을 발견했다. 그 중 괜찮아 보이는 이슈를 발견해서 댓글로 이 이슈를 맡고 싶다고 했다. 이미 이 이슈를 맡고 계신분이 있나? 하는 생각이 잠시 들었지만, 잠시 후 멘토님께서 진행해도 된다는 댓글을 남겨주셨다. 이제 기여를 시작해보자. 1. 먼저 CONTRIBUTING.md를 읽어보자발대식에서 오픈소스 기여자들을 위한 문서가 있다는 사실을 알게 되었다. 바로 CONTRIBUTING.md인데, 들어가자마자 전부 영어로 된 문서에 잠시 긴장을 하긴했지만 어렵지 않게 작성되어 있어서..
[Fedify] 튜토리얼을 따라하며 나만의 연합우주 마이크로블로그를 만들자
·
Fedify
정말 감사하게도 2025 오픈소스 컨트리뷰션 참여형 프로젝트 fedify의 멘티로 참여하게 되었다. 참여가 결정된 날, 멘토님으로부터 fedify에 대한 설명이 담긴 메일을 받았다. 첨부된 링크에는 fedify에 대한 설명과 함께 fedify를 활용하여 마이크로블로그를 만드는 튜토리얼을 볼 수 있었다.🔗 https://hackers.pub/@hongminhee/2025/fedify-tutorial-ko fedify에 대한 사전지식이 많지 않았기 때문에 잘 따라갈 수 있을까 걱정했지만 설명이 매우 자세하게 써져있었기 때문에 어렵지 않게 따라갈 수 있었다. 튜토리얼을 진행하며 fedify와 연합우주 그리고 개발에 필요한 내용들을 알 수 있게 되었고, 이 지식들은 앞으로 오픈소스 컨트리뷰션을 할 때 많은 도..
[Node.js 강의 정리] Call stack, Event Loop, EventEmitter, child_process, cluster, worker_threads 등에 관하여
·
Node.js
얄코님의 '얄코의 Node.js (Korean ver.)' 강의를 듣고 정리한 내용입니다.강의 링크: https://www.inflearn.com/course/%EC%96%84%EC%BD%94-node-js?srsltid=AfmBOopKCXPw7NK1HS79aeI2BufjFmy-iOHOM9eHCl2q_BVo1UNRMURr 얄코의 Node.js (Korean ver.) 강의 | 얄팍한 코딩사전 - 인프런얄팍한 코딩사전 | , 🇰🇷 This course is designed for Korean-speaking learners. If you speak English, Japanese, Vietnamese, or any other language, please take twww.inflearn.com 1. ..
[Node.js 강의 정리] 파일 시스템, TCP/UDP, HTTP, 버퍼와 스트림, 각종 모듈에 관하여
·
Node.js
얄코님의 '얄코의 Node.js (Korean ver.)' 강의를 듣고 정리한 내용입니다.강의 링크: https://www.inflearn.com/course/%EC%96%84%EC%BD%94-node-js?srsltid=AfmBOopKCXPw7NK1HS79aeI2BufjFmy-iOHOM9eHCl2q_BVo1UNRMURr 얄코의 Node.js (Korean ver.) 강의 | 얄팍한 코딩사전 - 인프런얄팍한 코딩사전 | , 🇰🇷 This course is designed for Korean-speaking learners. If you speak English, Japanese, Vietnamese, or any other language, please take twww.inflearn.com1. 파..
[Node.js 강의 정리] Node.js, REPL, Promise, async/await, Module, Nodemon에 관하여
·
Node.js
얄코님의 '얄코의 Node.js (Korean ver.)' 강의를 듣고 정리한 내용입니다.강의 링크: https://www.inflearn.com/course/%EC%96%84%EC%BD%94-node-js?srsltid=AfmBOopKCXPw7NK1HS79aeI2BufjFmy-iOHOM9eHCl2q_BVo1UNRMURr 얄코의 Node.js (Korean ver.) 강의 | 얄팍한 코딩사전 - 인프런얄팍한 코딩사전 | , 🇰🇷 This course is designed for Korean-speaking learners. If you speak English, Japanese, Vietnamese, or any other language, please take twww.inflearn.com1. N..
[Next.js 강의 정리] 서버 액션, Parallel Route, 최적화에 관하여
·
Frontend/Next.js
이정환님의 '한 입 크기로 잘라먹는 Next.js(v15)' 강의를 듣고 정리한 내용입니다.강의 링크: https://www.inflearn.com/course/%ED%95%9C%EC%9E%85-%ED%81%AC%EA%B8%B0-nextjs?srsltid=AfmBOoryPUbZjBwZDQne9kDfuiHCFu7VdxmeCNFtMqj4F58vfjIaezUX 한 입 크기로 잘라먹는 Next.js(v15) 강의 | 이정환 Winterlood - 인프런이정환 Winterlood | , [임베딩 영상]한 입 크기로 잘라먹는 Next.js | Official Trailler한입 크기로 잘라먹는 Next.js(15+)15시간의 분량으로 Page Router부터 App Router까지💡 Page Router란?Nex..
[Next.js 강의 정리] App Router에 관하여
·
Frontend/Next.js
이정환님의 '한 입 크기로 잘라먹는 Next.js(v15)' 강의를 듣고 정리한 내용입니다.강의 링크: https://www.inflearn.com/course/%ED%95%9C%EC%9E%85-%ED%81%AC%EA%B8%B0-nextjs?srsltid=AfmBOoryPUbZjBwZDQne9kDfuiHCFu7VdxmeCNFtMqj4F58vfjIaezUX 한 입 크기로 잘라먹는 Next.js(v15) 강의 | 이정환 Winterlood - 인프런이정환 Winterlood | , [임베딩 영상]한 입 크기로 잘라먹는 Next.js | Official Trailler한입 크기로 잘라먹는 Next.js(15+)15시간의 분량으로 Page Router부터 App Router까지💡 Page Router란?Nex..
[Next.js 강의 정리] Next.js와 Page Router에 관하여
·
Frontend/Next.js
이정환님의 '한 입 크기로 잘라먹는 Next.js(v15)' 강의를 듣고 정리한 내용입니다.강의 링크: https://www.inflearn.com/course/%ED%95%9C%EC%9E%85-%ED%81%AC%EA%B8%B0-nextjs?srsltid=AfmBOoryPUbZjBwZDQne9kDfuiHCFu7VdxmeCNFtMqj4F58vfjIaezUX 한 입 크기로 잘라먹는 Next.js(v15) 강의 | 이정환 Winterlood - 인프런이정환 Winterlood | , [임베딩 영상]한 입 크기로 잘라먹는 Next.js | Official Trailler한입 크기로 잘라먹는 Next.js(15+)15시간의 분량으로 Page Router부터 App Router까지💡 Page Router란?Nex..
useRef를 활용하여 stale closure를 해결해보자
·
Intern
주의: 정확하지 않은 서술이 있을 수 있습니다. 컴포넌트 A에서 버튼을 클릭하면 recoil state가 변경되고, Hook B의 useEffect의 의존성 배열에 해당 recoil state가 있어서 Hook B에서 동작이 수행되게 설계를 했었다.하지만 Hook B에서 recoil state의 변경을 잘 감지하지 못하는 경우가 발생했고, 따라서 의도치 않게 작동이 되는 상황이 벌어졌다.1. 왜 recoil state의 변경을 감지하지 못했을까? // Component A const [something, setSomething] = useRecoilState(somethingState); const handleItemClick = (e: React.MouseEvent) => { set..