Skip to content

Third Party Packages

Starlette는 Starlette와 통합되는 도구를 구축하거나 Starlette에 의존하는 도구 등을 개발하는 개발자 커뮤니티가 빠르게 성장하고 있습니다.

다음은 이러한 서드파티 패키지들입니다:

플러그인

Apitally

GitHub | 문서

Starlette(및 기타 프레임워크)를 위한 간단한 트래픽, 에러 및 응답 시간 모니터링과 API 키 및 권한 관리.

Authlib

GitHub | 문서

OAuth 및 OpenID Connect 클라이언트와 서버를 구축하기 위한 궁극의 Python 라이브러리입니다. Starlette와의 통합 방법을 확인하세요.

ChannelBox

GitHub

웹소켓 브로드캐스트를 위한 또 다른 솔루션. 코드의 어느 부분에서든 채널 그룹으로 메시지를 보낼 수 있습니다. channel-boxstarlette를 사용하여 구축된 간단한 채팅 애플리케이션인 MySimpleChat을 확인해보세요.

Imia

GitHub

플러그인 가능한 인증자와 로그인/로그아웃 흐름을 갖춘 Starlette용 인증 프레임워크.

Mangum

GitHub

AWS Lambda & API Gateway를 위한 서버리스 ASGI 어댑터.

Nejma

GitHub

웹소켓을 사용하여 채널 그룹에 메시지를 관리하고 보냅니다. nejmastarlette를 사용하여 구축된 간단한 채팅 애플리케이션인 nejma-chat을 확인해보세요.

Scout APM

GitHub

애플리케이션을 계측하여 성능 병목 현상을 찾을 수 있는 APM(애플리케이션 성능 모니터링) 솔루션.

SpecTree

GitHub

Python 어노테이션을 사용하여 OpenAPI 스펙 문서를 생성하고 요청 및 응답을 검증합니다. 보일러플레이트 코드가 적습니다(YAML 불필요).

Starlette APISpec

GitHub

Starlette를 위한 간단한 APISpec 통합. 엔드포인트의 독스트링에 YAML 형식으로 OpenAPI(Swagger) 스키마를 선언하여 Starlette로 구축된 REST API를 문서화합니다.

Starlette Compress

GitHub

Starlette-Compress는 Starlette에서 응답을 압축하기 위한 빠르고 간단한 미들웨어입니다. 합리적인 기본 구성으로 ZStd, Brotli 및 GZip 압축을 지원합니다.

Starlette Context

GitHub

요청의 컨텍스트 데이터를 저장하고 접근할 수 있게 해주는 Starlette용 미들웨어. 로깅과 함께 사용하여 x-request-id나 x-correlation-id와 같은 요청 헤더를 로그에 자동으로 사용할 수 있습니다.

Starlette Cramjam

GitHub

최소한의 요구 사항으로 brotli, gzipdeflate 압축 알고리즘을 사용할 수 있게 해주는 Starlette 미들웨어.

Starlette OAuth2 API

GitLab

JWT를 통한 인증 및 권한 부여를 추가하기 위한 Starlette 미들웨어. 클라이언트에게 액세스 및/또는 ID 토큰을 발급하기 위해 인증 제공자에만 의존합니다.

Starlette Prometheus

GitHub

공식 Python 클라이언트를 기반으로 Prometheus 메트릭을 노출하는 엔드포인트를 제공하는 플러그인.

Starlette WTF

GitHub

Starlette와 WTForms를 통합하기 위한 간단한 도구. 우수한 Flask-WTF 라이브러리를 모델로 삼았습니다.

Starlette-Login

GitHub | 문서

Starlette를 위한 사용자 세션 관리. 로그인, 로그아웃 및 장기간에 걸친 사용자 세션 기억과 같은 일반적인 작업을 처리합니다.

Starsessions

GitHub

사용자 정의 가능한 스토리지 백엔드를 갖춘 대체 세션 지원 구현.

webargs-starlette

GitHub

webargs를 기반으로 한 Starlette용 선언적 요청 파싱 및 유효성 검사 라이브러리입니다.

타입 어노테이션을 사용하여 쿼리스트링, JSON, 폼, 헤더 및 쿠키를 파싱할 수 있습니다.

DecoRouter

GitHub

Starlette를 위한 FastAPI 스타일의 라우팅입니다.

데코레이터를 사용하여 라우팅 테이블을 생성할 수 있습니다.

Starception

GitHub

Starlette 앱을 위한 아름다운 예외 페이지입니다.

Starlette-Admin

GitHub | 문서

간단하고 확장 가능한 관리자 인터페이스 프레임워크입니다.

TablerDatatables로 구축되어 모델에 대해 완전히 사용자 정의 가능한 관리자 인터페이스를 빠르게 생성할 수 있습니다. 데이터를 여러 형식(CSV, PDF, Excel 등)으로 내보낼 수 있고, ANDOR 조건을 포함한 복잡한 쿼리로 데이터를 필터링하고, 파일을 업로드할 수 있습니다.

Vellox

GitHub

GCP Cloud Functions를 위한 서버리스 ASGI 어댑터입니다.

Starlette Bridge

GitHub | 문서

on_startupon_shutdown의 지원 중단으로, Starlette Bridge는 여전히 이벤트를 선언하는 기존 방식을 사용할 수 있게 해줍니다. 내부적으로는 실제로 lifespan을 생성합니다. 이를 통해 기존 패키지의 후방 호환성을 보장하면서 Starlette의 새로운 lifespan 이벤트의 무결성을 유지합니다.

프레임워크

FastAPI

GitHub | 문서

고성능, 배우기 쉽고, 코딩이 빠르며, 프로덕션 준비가 된 웹 API 프레임워크입니다. APIStar의 이전 서버 시스템에서 영감을 받아 라우트 파라미터에 대한 타입 선언을 사용하며, OpenAPI 명세 버전 3.0.0+ (JSON Schema 포함)를 기반으로 하고, 데이터 처리를 위해 Pydantic을 사용합니다.

Flama

GitHub | 문서

Flama는 현대적이고 견고한 머신 러닝(ML) API를 빠르게 구축하기 위한 데이터 과학 지향 프레임워크입니다. 프레임워크의 주요 목표는 ML API의 배포를 매우 간단하게 만드는 것입니다. Flama를 사용하면 데이터 과학자들은 이제 단 한 줄의 코드로 ML 모델을 비동기식, 자동 문서화된 API로 빠르게 전환할 수 있습니다. 모든 것이 단 몇 초 만에 이루어집니다!

Flama는 직관적인 CLI를 제공하며, 고성능 GraphQL, REST 및 ML API 구축을 가속화하기 위한 쉽게 배울 수 있는 철학을 제공합니다. 또한 비동기식 및 프로덕션 준비 서비스 개발을 위한 이상적인 솔루션을 구성하며, ML 모델을 위한 자동 배포를 제공합니다.

Greppo

GitHub | 문서

지리공간 대시보드 및 웹 애플리케이션을 구축하기 위한 Python 프레임워크입니다.

Greppo는 지리공간 대시보드와 웹 애플리케이션을 쉽게 만들 수 있는 오픈소스 Python 프레임워크입니다. 데이터, 알고리즘, 시각화 및 상호작용을 위한 UI를 빠르게 통합할 수 있는 툴킷을 제공합니다. 백엔드의 변수를 업데이트하고, 로직을 재계산하며, 프론트엔드에 변경사항을 반영하는 API를 제공합니다(데이터 변경 훅).

Responder

GitHub | 문서

비동기 웹 서비스 프레임워크입니다. 주요 기능: flask 스타일의 라우트 표현식, yaml 지원, OpenAPI 스키마 생성, 백그라운드 작업, GraphQL.

Starlette-apps

Django-GDAPSCakePHP와 같은 간단한 앱 시스템으로 자신만의 프레임워크를 만들어보세요.

GitHub

Dark Star

HTML을 브라우저로 전송하는데 필요한 코드를 최소화하는 간단한 프레임워크입니다. 파일 경로를 Starlette 라우트로 변환하고 템플릿 바로 옆에 뷰 코드를 배치합니다. 프론트엔드 향상을 위해 htmx 지원을 포함합니다.

문서 GitHub

Xpresso

Starlette, Pydantic 및 di를 기반으로 구축된 유연하고 확장 가능한 웹 프레임워크입니다.

GitHub | 문서

Ellar

GitHub | 문서

Ellar는 빠르고 효율적이며 확장 가능한 REST API와 서버 사이드 애플리케이션을 구축하기 위한 ASGI 웹 프레임워크입니다. 서버 사이드 애플리케이션 구축에 높은 수준의 추상화를 제공하며 OOP(객체 지향 프로그래밍)와 FP(함수형 프로그래밍)의 요소를 결합합니다 - Nestjs에서 영감을 받았습니다.

Starlette, Pydantic, injector 3개의 핵심 라이브러리를 기반으로 구축되었습니다.

Apiman

Starlette 프로젝트에 Swagger/OpenAPI 문서를 쉽게 통합하고 SwaggerUIRedocUI를 제공하는 확장입니다.

GitHub

Starlette-Babel

Babel 통합을 통해 번역, 현지화 및 시간대 지원을 제공합니다.

GitHub

Starlette-StaticResources

GitHub

StaticFiles와 유사하게 정적 데이터를 위한 패키지 리소스 마운팅을 허용합니다.

Sentry

GitHub | 문서

Sentry는 소프트웨어 오류 감지 도구입니다. 성능 문제와 오류를 해결하기 위한 실행 가능한 통찰력을 제공하여 사용자가 Python 디버깅을 진단, 수정 및 최적화할 수 있습니다. 또한 Python 애플리케이션 개발을 위해 Starlette와 원활하게 통합됩니다. Sentry의 기능에는 오류 추적, 성능 인사이트, 상황별 정보, 알림/통지가 포함됩니다.

Shiny

GitHub | 문서

Starlette와 asyncio를 활용하여 Shiny는 개발자가 반응형 프로그래밍의 힘을 사용하여 손쉽게 Python 웹 애플리케이션을 만들 수 있게 해줍니다. Shiny는 수동 상태 관리의 번거로움을 제거하고 런타임에 앱에 가장 적합한 실행 경로를 자동으로 결정하면서 동시에 재렌더링을 최소화합니다. 이는 Shiny가 가장 간단한 대시보드부터 모든 기능을 갖춘 웹 앱까지 지원할 수 있음을 의미합니다.