kok202
Duby 를 오픈했습니다.

2022. 5. 31. 00:10[개발] 개인 프로젝트/Duby

Duby

기간 2021.11.01 ~ 진행중

https://duby.dev/

 

Duby

 

duby.dev

오픈 그래프 태그가 빠져서 만들어진 링크가 예쁘진 않네요! 조만간 추가해야겠습니다.

 

이번 개인 프로젝트는 개발자들에게 필요한 툴킷을 모아둔 사이트입니다. 회사 동기였던 https://github.com/yeonjuan 와 함께 팀 프로젝트 형태로 진행했는데, 협업 자체도 좋았지만 개발 관련해서는 React lazy loading 에 관한 내용을 알 수 있어서 좋았습니다. 장기적으로는 개발 커뮤니티로 발전하는 방향도 생각하고 있는데, 당장은 실무에서 필요한 개발 도구들을 모아보자고 합의가되서 툴킷으로 방향잡고 집중해봤네요. 필요한 도구가 있다면 피드백 주시는대로 추가를 고려해보겠습니다.

 

주요 기능

  • JSON 포맷터
  • JWT 디코더
  • JSON diff 뷰어
  • SQL 포맷터
  • HTML minifie
  • YAML diff 뷰어
  • YAML to JSON
  • YAML 포맷터
  • 인코더 디코더
  • 암호화
  • 네이밍 컨벤션 변환기
  • Gitignore 테스트
  • TEXT 길이 카운터
  • TEXT diff 뷰어
  • Epochmillis
  • 크론탭(crontab)
  • 마크다운(Markdown) 프리뷰

실제로 업무하면서 사용하기 편한 방식으로 개발하는 것을 생각했기 때문에, 저부터가 자주 들어가는 사이트가 되도록 했습니다. 특히 Epochmillis 와 Cron, Text diff 는 자주 들어가는 것 같습니다.

 

후기

  • 프로젝트 이름은 Duby 라는 이름으로 지었습니다. 이름의 배경은 긴데, 간략하게 요약하면 Dev + Ruby 의 약자입니다.
  • vscode 느낌나는 룩앤필로 사이트를 개발했는데, 이에 맞춰 로고도 vscode 로고로 루비 아이콘을 형상화 하도록 했습니다.
  • firebase + mongo DB를 이용하여 개발되었는데, 백엔드에 nestJS 를 처음으로 사용했습니다. Spring boot 와 매우 유사한데, 개인적으론 스프링 부트가 현업에서도 쓰고있어서 그런지 훨씬 편했던 것 같습니다. 대신 firebase function 을 이용하여 백엔드를 만들기에는 nestJS 만한게 없었던 것 같습니다.
  • Github action 을 처음 써봤는데, 상당히 괜찮았던 것 같습니다. 개인 프로젝트에 Jenkins 나 Ansible 을 마련해서 쓸 수 없으니, 깃헙 액션은 앞으로의 개인 프로젝트에서도 자주 사용할 것 같습니다.
  • 엔터테이먼트 성격의 도구를 넣는 것도 고려했으나 (ex. 사다리, 타이머...) 일단 개발 도구에만 집중하기로 했습니다!
  • api 서버가 cold - warm 스타트를 하기 때문에 최초 로그인 시도시 살짝 지연 될 수 도 있습니다.
  • api 서버에는 테스트 코드를 추가하면서 작업하였습니다. 부끄러운 얘기지만 이 api 서버의 코드 커버리지는 67%정도입니다. nestJS 는 익숙치않아서 모듈 파일들에 대한 테스트 작성이 어려웠던 것 같습니다. e2e 테스트도 손에 잘 안익었고요. 

  • 잠깐 테스트 얘기가 나와서 언급하자면, 현업에서 간단한 신규 프로젝트를 런칭할 기회가 생겨서 TDD 접근 방식으로 개발을 해봤습니다. 거기서 겪었던 경험으로 조만간 테스트 관련 글을 하나 더 올릴 것 같습니다. 그 프로젝트의 커버리지는 대략 95%정도 됩니다!

 

실무에 필요한 도구 위주로 모아놨습니다! 한번쯤 둘러보시고 들어오셔서 원하시는 도구가 있다면 북마크 해가시면 좋을 것 같습니다. :)