ohah
  • 월간 오픈소스
  • 리뷰
    월간 오픈소스
    Hwpjs
    1. 개발 배경
    25.12.05
    2. 기술 스택
    25.12.06
    3. 개발 과정
    3-1. 구조 잡기
    25.12.06
    3-2. 코어 개발하기
    25.12.10
    3-3. 배포(NAPI-RS)
    26.01.17
    3-4. 배포(Craby)
    26.01.17
    3-5. 배포(WebAssembly)
    26.01.18
    크로미움
    1. 개발 배경
    25.12.15
    2. 환경 설정
    작성 예정
    3. 첫 번째 기여
    작성 예정
    4. 코드 리뷰 과정
    작성 예정
    5. 머지 및 후기
    작성 예정
    Craby
    1. 개발 배경
    26.01.18
    Chrome Remote Debugger
    1. 개발 배경
    26.02.03
    2. 기술 스택
    작성 예정
    3. 개발 과정
    3-1. 배민 구현 따라하기
    작성 예정
    3-2. 배민 백로그까지 구현
    작성 예정
    3-3. 욕심 부려보기
    작성 예정
    3-4. React Native
    작성 예정
    3-5. 터보모듈
    작성 예정
    3-6. 번들러 학습
    작성 예정
    3-7. 네이티브 걷어내기
    작성 예정
    3-8. 커스텀 패널 구현
    작성 예정
    3-9. 마무리
    작성 예정
    Previous page1. 개발 배경Next page3. 개발 과정

    #2. 기술 스택

    "고민하기"

    글을 작성하는 시점이 거의 개발을 다시 시작한지 2주차이니 11월 3주차? 4주차쯤 시작한것 같다.
    목표는 러스트로 Web Node React Native 환경에 라이브러리를 제공 하는 것이다.

    아마 이걸 다 구현한 레포지토리를 찾아서 레퍼런스를 통해 개발하기보다는 내가 직접 개발하고 부딪히는게 더 빠를 것이란 생각이 들었다.
    적절한 레퍼런스와 보편적인 가이드라인이 없으니 내가 하고 싶은것만 싹 다 고르면 될 것 같았다.

    #홍대병 말기의 선택

    #Node

    napi-rs 대안이 없다 Neon도 있지만 이젠 비 주류인것 같고..

    NOTE

    napi-rs - 러스트로 Node.js 네이티브 모듈을 만들 수 있게 해주는 프레임워크. 러스트 코드를 Node.js에서 직접 사용할 수 있게 해준다.

    #Craby

    나온지 얼마 안됐고 정식 버전도 안나왔지만 대안이 없다.
    아니 Craby를 보고 이런 멀티 플랫폼 라이브러리 개발을 생각했다.

    NOTE

    Craby - React Native에서 러스트 코드를 사용할 수 있게 해주는 라이브러리. 모바일 앱에서 러스트의 코드로 개발할 수 있다.

    #Web

    사실 러스트로 한다고 하면 wasm-pack 또는 wasm-bindgen 인데

    NAPI-RS에서 WebAssembly 빌드를 지원하고 있는걸 알았다.

    문서를 보면 안정적인것 같진 않지만,
    뭐 애당초 이 프로젝트가 Experimental에 가깝다.
    실험적 프로젝트인데 왜 그런걸 고려하겠는가?

    NOTE

    WebAssembly - 웹 브라우저에서 네이티브에 가까운 성능으로 코드를 실행할 수 있게 해주는 기술. 러스트를 웹에서 사용할 수 있게 해준다.

    #번들러

    Node, pnpm, yarn, npm, deno 저리가라! Bun으로 간다

    NOTE

    Bun - 빠른 JavaScript 런타임, 번들러, 패키지 매니저를 하나로 통합한 도구. Node.js 대체제로 주목받고 있다.

    #포매터

    eslint, biome 저리가라! oxlint, oxfmt로 간다

    NOTE

    oxlint, oxfmt - Rust로 작성된 빠른 JavaScript/TypeScript 린터와 포매터. ESLint, Biome보다 훨씬 빠른 성능을 제공한다.

    #문서

    rspress 2 rc로 간다

    NOTE

    Rspress - Rust 기반의 빠른 정적 사이트 생성기. Nextra, Docusaurus와 유사하지만 더 빠른 빌드 속도를 제공한다.

    #결론

    Rust napi-rs Craby WebAssembly Bun oxlint oxfmt Rspress