단일 pyproject.toml 파일로 프로젝트 의존성을 선언하고 잠금 및 설치하는 Python 패키징·의존성 관리 도구입니다.
pypa/flit
최소한의 설정으로 순수 Python 패키지와 모듈을 빌드해 PyPI에 게시하는 간단한 도구입니다.
- 스타
- 2,262
- 포크
- 173
- 열린 이슈
- 125
- 마지막 커밋
- 11일 전
어떤 프로젝트인가요?
Flit은 가져올 수 있는 단일 Python 모듈이나 패키지를 패키징해 PyPI에 업로드합니다. 패키징과 관련해 메인테이너가 내려야 하는 결정을 줄이고, 흔히 발생하는 패키징 실수를 방지하는 데 초점을 둡니다. PyPI의 패키지 이름은 import 이름과 일치하며, 패키지 안의 하위 패키지와 데이터 파일도 자동으로 포함됩니다.
일반적인 작업 흐름은 모듈에 버전과 한 줄짜리 docstring을 추가하고, `flit init`을 실행해 pyproject.toml을 생성한 다음 `flit publish`를 실행하는 것입니다. 버전과 설명은 모듈 자체에서 읽어 오며, 명령줄 스크립트와 기타 메타데이터는 pyproject.toml에서 설정합니다. 기존 flit.ini 파일은 함께 제공되는 헬퍼 모듈을 사용해 변환할 수 있습니다.
로컬 개발 환경에서는 `flit install`로 패키지를 설치할 수 있으며, 선택적으로 심볼릭 링크로 설치해 수정 사항이 즉시 반영되게 할 수 있습니다. 게시된 wheel을 설치하면 표준 패키지가 설치되고, sdist를 설치하면 pip이 임시 환경에서 Flit을 사용합니다.
핵심 기능
- 01import 이름을 사용해 단일 모듈이나 패키지를 PyPI에 게시합니다.
- 02버전과 설명을 모듈에서 읽어 오므로 중복해서 지정할 필요가 없습니다.
- 03`flit init`으로 pyproject.toml을 생성합니다.
- 04하위 패키지와 데이터 파일을 자동으로 포함합니다.
- 05개발용으로 패키지를 로컬에 설치하며, 선택적으로 심볼릭 링크로 설치할 수 있습니다.
활용 사례
- setup.py를 작성하지 않고 작은 순수 Python 라이브러리를 PyPI에 게시하기.
- 기존 flit.ini 기반 프로젝트를 pyproject.toml로 변환하기.
- 개발 중 패키지를 로컬에서 편집 가능한 형태로 설치하기.
빠른 시작
- 1
pip으로 flit을 설치합니다
python3 -m pip install flit - 2
모듈에 한 줄짜리 docstring과 __version__을 추가합니다
- 3
모듈 디렉터리에서 flit init을 실행해 pyproject.toml을 만듭니다
flit init - 4
패키지를 PyPI에 업로드합니다
flit publish
사용 전 알아둘 점
- 한 번에 가져올 수 있는 모듈 또는 패키지 하나만 패키징합니다.
- Python 2 모듈을 배포하려면 Python 3에서도 오류 없이 가져올 수 있어야 합니다.
토픽
자주 묻는 질문
- flit은(는) 무엇인가요?
- 최소한의 설정으로 순수 Python 패키지와 모듈을 빌드해 PyPI에 게시하는 간단한 도구입니다. Flit은 가져올 수 있는 단일 Python 모듈이나 패키지를 패키징해 PyPI에 업로드합니다. 패키징과 관련해 메인테이너가 내려야 하는 결정을 줄이고, 흔히 발생하는 패키징 실수를 방지하는 데 초점을 둡니다. PyPI의 패키지 이름은 import 이름과 일치하며, 패키지 안의 하위 패키지와 데이터 파일도 자동으로 포함됩니다.
- flit은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- flit은(는) BSD-3-Clause 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- flit은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. flit의 마지막 커밋은 2026년 10월 27일입니다.
- flit은(는) 어디에 사용할 수 있나요?
- setup.py를 작성하지 않고 작은 순수 Python 라이브러리를 PyPI에 게시하기. 기존 flit.ini 기반 프로젝트를 pyproject.toml로 변환하기. 개발 중 패키지를 로컬에서 편집 가능한 형태로 설치하기.
- flit는 어떻게 설치하나요?
- pip으로 flit을 설치합니다: python3 -m pip install flit 모듈에 한 줄짜리 docstring과 __version__을 추가합니다 모듈 디렉터리에서 flit init을 실행해 pyproject.toml을 만듭니다: flit init 패키지를 PyPI에 업로드합니다: flit publish
- flit은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/pypa/flit
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
PEP 621 및 PEP 517 메타데이터를 기반으로 가상 환경, 잠금 파일, 빌드를 관리하는 현대적인 Python 패키지 및 의존성 관리자입니다.
Python 패키지 설치를 위한 표준 도구로, Python Package Index(PyPI)와 기타 패키지 인덱스에서 패키지를 설치합니다.
Python 패키징 라이브러리인 Setuptools의 공식 빌드 시스템 저장소로, Python 프로젝트를 빌드하고 배포하는 데 사용됩니다.
tox, pytest, Sphinx 문서, Git 버전 관리를 미리 설정해 설치 및 PyPI 배포가 가능한 패키지의 기본 구조를 만드는 Python 프로젝트 생성기입니다.
사용하는 빌드 시스템과 관계없이 Python 소스 배포본과 wheel을 PyPI에 업로드하는 명령줄 유틸리티입니다.