A command-line utility for uploading Python source and wheel distributions to PyPI, independent of the build system used.
pypa/setuptools
Official build system repository for Setuptools, the Python packaging library used to build and distribute Python projects.
- Stars
- 2,870
- Forks
- 1,452
- Open issues
- 708
- Last commit
- 9 days ago
What is it?
Setuptools is the build system for Python packages. It provides the tooling that turns a Python project into distributable artifacts such as source distributions and wheels, and it is maintained under the PyPA (Python Packaging Authority) umbrella.
This repository hosts the official source code for the project. Users rely on its quickstart and user's guide, hosted on the project documentation site, to learn how to configure a package and publish it to PyPI. Questions are handled through GitHub Discussions, and bug reports and patches are accepted through the issue tracker.
The project is released on PyPI under the MIT license and supports the Python versions shown on its package page.
Key features
- 01Builds Python source distributions and wheels from a project configuration.
- 02Integrates with PyPI for publishing packages.
- 03Distributed on PyPI under the MIT license.
- 04Maintained as part of the Python Packaging Authority ecosystem.
Use cases
- Packaging a Python library so it can be installed with pip.
- Publishing a Python project to PyPI.
- Maintaining build configuration for an existing Python package.
Topics
FAQ
- What is setuptools?
- Official build system repository for Setuptools, the Python packaging library used to build and distribute Python projects. Setuptools is the build system for Python packages. It provides the tooling that turns a Python project into distributable artifacts such as source distributions and wheels, and it is maintained under the PyPA (Python Packaging Authority) umbrella.
- Is setuptools free to use? What license does it have?
- setuptools is open source under the MIT license. Check the license terms before using it in commercial products.
- Is setuptools still maintained?
- Actively maintained. The last commit to setuptools was on Oct 29, 2026.
- What can I use setuptools for?
- Packaging a Python library so it can be installed with pip. Publishing a Python project to PyPI. Maintaining build configuration for an existing Python package.
- Where can I get setuptools?
- The source code and installation instructions are on GitHub: https://github.com/pypa/setuptools
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Command-line tool for inspecting, unpacking, repacking and retagging Python wheel (.whl) files, and converting eggs to wheels.
The standard package installer for Python, used to install packages from the Python Package Index (PyPI) and other indexes.
A simple tool for building and publishing pure-Python packages and modules to PyPI with minimal configuration.
A Python project generator that bootstraps installable, PyPI-ready packages with tox, pytest, Sphinx docs and Git versioning preconfigured.
A command-line tool that checks whether a Python package's sdist includes all version-controlled files, and can update MANIFEST.in to fix gaps.