작업 목록

Personal · Open Source · 2026

rust-with-typescript

낯선 언어를 익숙한 멘탈 모델에서 출발해 배우게 만들기

TypeScript 개발자를 위한 Rust 학습 가이드로, 브라우저에서 Rust 예제를 실행하며 문법과 개념을 비교 학습할 수 있는 문서형 프로젝트

Problem

대부분의 Rust 학습 자료는 C/C++ 배경을 어느 정도 전제합니다. TypeScript 개발자가 Rust를 배울 때는 소유권, borrowing, trait, lifetime 같은 개념을 기존에 알고 있던 JavaScript/TypeScript의 멘탈 모델과 연결하기 어렵습니다.

또한 문서만 읽는 방식은 Rust의 타입 시스템과 컴파일 에러를 체감하기 어렵습니다. 예제를 직접 실행해 보고, TypeScript와 Rust가 같은 문제를 어떻게 다르게 푸는지 비교할 수 있는 학습 환경이 필요했습니다.

Approach

Astro와 Starlight를 기반으로 문서형 학습 사이트를 만들었습니다. 각 챕터는 TypeScript 개발자가 이미 알고 있는 개념에서 출발해 Rust의 문법과 사고방식으로 확장되도록 구성했습니다.

챕터마다 TypeScript 예제와 Rust 예제를 나란히 배치해, 단순 번역이 아니라 “같은 문제를 다른 타입 시스템에서 어떻게 표현하는가”를 비교할 수 있게 했습니다. 문법, 소유권, borrowing, enum, pattern matching, trait, error handling, async/concurrency 같은 주제를 단계적으로 정리했습니다.

브라우저 안에서 Rust 코드를 실행할 수 있도록 별도 실행 흐름도 구성했습니다. Astro 문서의 코드 블록에서 Rust/Axum 기반 백엔드로 요청을 보내고, 실행 결과를 다시 문서 안에서 확인할 수 있게 했습니다.

한국어와 영어를 모두 지원하도록 콘텐츠 구조를 나누고, 사용자의 언어 환경에 맞춰 자연스럽게 접근할 수 있도록 라우팅을 구성했습니다. MDX 기반으로 설명, 예제, 주석, 실행 결과를 한 문서 안에서 다룰 수 있게 했습니다.

Result

TypeScript 개발자가 C/C++ 배경 없이 Rust를 학습할 수 있는 문서형 프로젝트를 완성했습니다. 문법과 개념을 단순히 나열하는 대신, TypeScript와 Rust의 차이를 비교하면서 Rust의 사고방식을 이해할 수 있도록 구성했습니다.

브라우저 내 Rust 코드 실행 환경을 제공해 학습자가 예제를 직접 실행하고 결과를 확인할 수 있게 했습니다. 한국어/영어 콘텐츠를 함께 구성해 더 넓은 독자가 접근할 수 있는 형태로 배포했습니다.

04

근거

역할

콘텐츠 구조, KO·EN 문서, 브라우저 예제 실행 흐름

집중한 영역

Developer education · Rust · Bilingual docs · Browser runner

기술

Astro · Starlight · Rust · Axum · Cloudflare Workers · TypeScript · MDX · Bun

다음 작업 Kivra