pypa/flit
pypa/flit has 2,262 GitHub stars and 173 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-07 22:08 UTC. Last push 2026-10-27.
Simplified packaging of Python modules
Measured star growth
- in 24h
- 0
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalFlit is a simple way to put Python packages and modules on PyPI.
It tries to require less thought about packaging and help you avoid common
mistakes.
See Why use Flit? <https://flit.readthedocs.io/en/latest/rationale.html>_ for
more about how it compares to other Python packaging tools.
Install
::
$ python3 -m pip install flit
Flit requires Python 3 and therefore needs to be installed using the Python 3 version of pip.
Python 2 modules can be distributed using Flit, but need to be importable on Python 3 without errors.
Usage
Say you're writing a module foobar — either as a single file foobar.py,
or as a directory — and you want to distribute it.
Make sure that foobar's docstring starts with a one-line summary of what the module is, and that it has a
__version__:.. code-block:: python
"""An amazing sample package!""" __version__ = "0.1"Install flit if you don't already have it::
python3 -m pip install flitRun
flit initin the directory containing the module to create apyproject.tomlfile. It will look something like this:.. code-block:: ini
[build-system] requires = ["flit_core >=3.2,<4"] build-backend = "flit_core.buildapi" [project] name = "foobar" authors = [{name = "Sir Robin", email = "[email protected]"}] dynamic = ["version", "description"] [project.urls] Home = "https://github.com/sirrobin/foobar"You can edit this file to add other metadata, for example to set up command line scripts. See the
pyproject.toml page <https://flit.readthedocs.io/en/latest/pyproject_toml.html#scripts-section>_ of the documentation.If you have already got a
flit.inifile to use with older versions of Flit, convert it topyproject.tomlby runningpython3 -m flit.tomlify.Run this command to upload your code to PyPI::
flit publish
Once your package is published, people can install it using pip just like any other package. In most cases, pip will download a 'wheel' package, a standard format it knows how to install. If you specifically ask pip to install an 'sdist' package, it will install and use Flit in a temporary environment.
To install a package locally for development, run::
flit install [--symlink] [--python path/to/python]
Flit packages a single importable module or package at a time, using the import name as the name on PyPI. All subpackages and data files within a package are included automatically.
Contributing
To work on Flit, see Developing Flit <https://flit.pypa.io/en/latest/development.html>_
in the documentation. The issue tracker <https://github.com/pypa/flit/issues>_
is on GitHub.
Please do not use AI/LLMs to work on Flit; see the development page for more details.
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
560,935 starspublic-apis/public-apis
A collective list of free APIs
497,198 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
442,535 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,178 stars