saschagrunert/webapp.rs

Rust로 풀스택 웹 애플리케이션을 구축하는 완전한 예제 프로젝트

템플릿맘대로 써도 됨 · Apache-2.0백엔드·DB난이도
2,243+0이번 주2210Rust
중간맛 분석

Leptos(WebAssembly SSR), Axum, PostgreSQL, SQLx, JWT 조합입니다. 사용자 인증, 세션 관리, CSRF 보호 등 실무 기능이 포함되어 있어 바로 학습 또는 템플릿으로 쓸 수 있습니다. 단일 Rust crate에서 프론트/백엔드를 함께 컴파일하므로 배포도 간단합니다. cargo leptos watch로 개발 시작 가능하며, Docker 지원으로 컨테이너화도 직관적입니다.

이런 레포예요

이럴 때 쓰면 좋아요

  • Rust 개발자가 풀스택 웹 개발을 배우기 위한 참고 예제
  • 엔터프라이즈급 인증과 세션 관리가 필요한 웹앱 기초 구축
  • 단일 언어로 타입 안전한 프론트/백엔드를 원할 때

핵심 기능

Leptos 서버 함수로 REST API 없이 타입 안전 통신Argon2 + JWT 기반 사용자 인증 및 세션 관리SSR + WebAssembly 하이드레이션으로 SEO와 상호작용성 겸립

대안 대비 차별점

Leptos 서버 함수가 REST API 계층을 제거해 타입 안전성을 끝까지 유지하며, 같은 Rust 코드 한 곳에서 브라우저와 서버 로직을 정의할 수 있습니다.

준비물
  • Rust (stable)
  • cargo-leptos
  • PostgreSQL
  • wasm32-unknown-unknown 타겟
  • wasm-bindgen-cli
바로 시작하기
  1. PostgreSQL 17 도커 컨테이너 시작
docker run -d --name postgres \
    -e POSTGRES_USER=webapp \
    -e POSTGRES_PASSWORD=webapp \
    -e POSTGRES_DB=webapp \
    -p 5432:5432 \
    postgres:17
  1. cargo-leptos와 wasm 도구 설치
cargo install cargo-leptos
rustup target add wasm32-unknown-unknown
cargo install wasm-bindgen-cli
  1. 환경 변수 설정 후 개발 서버 실행
export DATABASE_URL=postgres://webapp:webapp@localhost/webapp
cargo leptos watch
  1. 브라우저에서 http://127.0.0.1:3000 접속하여 "Register" 링크로 계정 생성 후 로그인
별 추이 · 7일
2,243+0 / 7일
활용성 · 따라 만들기 좋은가
따라 하기 좋음샘플 점수 52/100
  • 관대한 라이선스
  • 테스트 있음
  • 예제 디렉토리
  • 최근 활동
  • AGENTS.md
  • llms.txt
  • 템플릿

🟢 최근 활동 있음 · 2018년 생성

AI가 README 기반으로 요약했습니다 · 원문 보기