KulmanLab 소개

한 사람이 서두르지 않고 만들어 가는 프로젝트.

안녕하세요, 저는 우크라이나에 사는 Volodymyr입니다. 전공은 토목공학으로, 백엔드 소프트웨어 개발로 진로를 바꾸기 전까지 제도판과 데스크톱 CAD 소프트웨어 앞에서 여러 해를 보냈습니다. 하지만 엔지니어링에 대한 열정은 사라지지 않았습니다. 결국 CNC 기계의 세계에 빠져들었고, CO₂ 레이저 커터를 처음부터 직접 만들기까지 했습니다.

KulmanLab은 거기서 시작됐습니다. DXF 파일을 열어 정리하고, 선 몇 개를 손본 뒤 기계로 보내는 빠른 방법이 늘 필요했습니다 — 무거운 CAD 소프트웨어를 켜거나 또 하나의 클라우드 서비스에 가입하지 않고서요. 그래서 직접 도구를 만들기 시작했습니다. 2023년의 일이고, 그 뒤로 저녁과 주말에 진행하는 프로젝트가 되었습니다.

이름의 유래

쿨만(kulman)은 제가 자란 지역에서 클래식 제도기 — Kuhlmann 제도판 — 를 부르는 이름입니다. 여러 세대의 엔지니어가 그 위에서 제도를 배웠습니다. KulmanLab은 그 정신을 브라우저 안에 이어가려는 저의 시도입니다.

제가 생각하는 CAD 도구의 모습

무료이고, 즉시 쓸 수 있고, 프라이버시를 지키는 것. KulmanLab에는 계정도, 업로드도, 뒤에서 돌아가는 서버도 없습니다. 도면은 전부 사용자 기기에서 처리되고 저장되며, 앱은 오프라인에서도 계속 작동합니다. 설치할 것도, 구독할 것도, 넘겨줄 것도 없습니다. 자세한 내용은 개인정보 처리방침에 있습니다 — 정말로 말할 게 별로 없어서 짧습니다.

의도적으로 집중된 도구입니다. 명령 터미널, 레이어, 치수, 정직한 DXF 가져오기/내보내기를 갖춘 빠른 2D 제도 — 완전한 데스크톱 CAD 제품군의 대체재가 아닙니다. CNC나 레이저 가공기로 부품을 자르거나, 실험 보고서용 기술 스케치를 빠르게 그려야 한다면, 바로 당신을 위해 만들어졌습니다.

내부 구조

KulmanLab은 HTML5 Canvas 위에 Angular로 작성되었고, 100,000개가 넘는 객체가 있는 도면도 무리 없이 처리합니다. 단연코 가장 어려웠던 부분은 DXF 포맷 자체였습니다. 파싱은 쉽지만, 모든 CAD 편집기가 받아들이는 파일을 쓰는 일은 리버스 엔지니어링으로 알아낸 스플라인과 그룹 코드로 가득한 지뢰밭이었습니다.

인사를 남겨 주세요

버그를 발견했거나, 필요한 기능이 있거나, 만든 것을 보여 주고 싶으신가요? GitHub에 이슈를 열거나, r/kulmanlab에 참여하거나, kulmanlab@gmail.com으로 메일을 보내 주세요. 전부 읽습니다.