Repolode
Kludex

Kludex/starlette

Python에서 비동기 웹 서비스와 API를 구축하기 위한 경량 ASGI 프레임워크 및 툴킷입니다.

스타
12,676
포크
1,383
열린 이슈
46
마지막 커밋
그저께

어떤 프로젝트인가요?

Starlette는 Python에서 비동기 웹 서비스를 구축하기 위한 경량 ASGI 프레임워크 및 툴킷입니다. 라우팅, HTTP 및 WebSocket 처리, 백그라운드 작업, 시작 및 종료 이벤트, CORS, GZip, 세션 등의 미들웨어를 제공합니다. 각 구성 요소는 개별적으로 사용하거나 함께 묶어 완전한 프레임워크로 사용할 수 있습니다.

Starlette의 필수 의존성은 anyio뿐이며, 테스트 클라이언트, Jinja2 템플릿, 폼 파싱, 세션 등의 기능은 선택적 추가 항목으로 설치할 수 있습니다. uvicorn과 같은 ASGI 서버에서 실행되며 asyncio 및 trio 백엔드 모두와 호환됩니다.

구성 요소가 ASGI 인터페이스를 따르므로, 미들웨어와 마운트 가능한 애플리케이션은 원칙적으로 다른 ASGI 프레임워크와도 공유할 수 있습니다.

핵심 기능

  • 01경량 HTTP 라우팅과 요청/응답 처리.
  • 02WebSocket 지원.
  • 03프로세스 내 백그라운드 작업과 시작/종료 이벤트.
  • 04내장 CORS, GZip, 정적 파일, 세션/쿠키 미들웨어.
  • 05httpx2 기반 테스트 클라이언트.
  • 06asyncio 및 trio 백엔드와 호환.

활용 사례

  • Python에서 비동기 JSON API 또는 웹 서비스 구축.
  • Python 백엔드에 WebSocket 엔드포인트 추가.
  • 커스텀 스택에서 미들웨어나 응답과 같은 개별 ASGI 구성 요소 사용.

빠른 시작

  1. 1

    Starlette 설치

    pip install starlette
  2. 2

    uvicorn과 같은 ASGI 서버 설치

    pip install uvicorn
  3. 3

    예제를 main.py로 저장한 다음 Uvicorn으로 실행

    uvicorn main:app

사용 전 알아둘 점

  • Starlette는 툴킷이므로 서버와 필요한 선택적 종속성을 직접 구성해야 합니다.
  • 일부 기능에는 jinja2나 python-multipart와 같은 추가 패키지가 필요합니다.

토픽

자주 묻는 질문

starlette은(는) 무엇인가요?
Python에서 비동기 웹 서비스와 API를 구축하기 위한 경량 ASGI 프레임워크 및 툴킷입니다. Starlette는 Python에서 비동기 웹 서비스를 구축하기 위한 경량 ASGI 프레임워크 및 툴킷입니다. 라우팅, HTTP 및 WebSocket 처리, 백그라운드 작업, 시작 및 종료 이벤트, CORS, GZip, 세션 등의 미들웨어를 제공합니다. 각 구성 요소는 개별적으로 사용하거나 함께 묶어 완전한 프레임워크로 사용할 수 있습니다.
starlette은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
starlette은(는) BSD-3-Clause 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
starlette은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. starlette의 마지막 커밋은 2026년 10월 18일입니다.
starlette은(는) 어디에 사용할 수 있나요?
Python에서 비동기 JSON API 또는 웹 서비스 구축. Python 백엔드에 WebSocket 엔드포인트 추가. 커스텀 스택에서 미들웨어나 응답과 같은 개별 ASGI 구성 요소 사용.
starlette는 어떻게 설치하나요?
Starlette 설치: pip install starlette uvicorn과 같은 ASGI 서버 설치: pip install uvicorn 예제를 main.py로 저장한 다음 Uvicorn으로 실행: uvicorn main:app
starlette은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/Kludex/starlette

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트