skillfed

manygo

Python library with helpers for packaging golang source code

manygo v0.2.0 182.7K downloads/30d#10,087 on PyPI1
Permissive license MIT Active released

What it is and what it does

manygo is a utility library that translates Go's platform naming scheme (GOOS/GOARCH pairs like 'linux'/'amd64') into Python's standardized platform tags (like 'manylinux_2_17_x86_64'). It exists to bridge the gap when packaging or distributing Go binaries through Python tooling—situations where you need to express a Go binary's target platform in Python's tag format.

The library is straightforward: call `get_platform_tag()` with a Go OS and architecture, and it returns the corresponding Python tag. It has no external dependencies and requires Python 3.10 or later. The project is actively maintained but still in Alpha, so the API or tag mappings may evolve.

Use it for:

  • Packaging Go binaries for distribution via PyPI or other Python package repositories
  • Automating platform-specific tag selection when embedding Go tools in Python projects
  • Building cross-platform Python packages that wrap or invoke Go executables
  • Generating correct platform tags for CI/CD pipelines that build Go binaries for multiple architectures

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Converts Golang platform identifiers (GOOS and GOARCH) into Python platform tags for packaging and distributing Go binaries.

Yes, if you are packaging Go binaries through Python tooling. The library is lightweight, has no dependencies, carries permissive licensing, and solves a specific translation problem. The Alpha status and young age mean the API could change, but for straightforward platform-tag conversion it is low-risk. Not relevant if you do not work with Go binaries in Python projects.

Install

manygo on PyPI

pip

pip install manygo

uv

uv add manygo

poetry

poetry add manygo

Installing manygo

Before you install

Low friction install with no runtime dependencies. Active maintenance and recent releases, though the project is young and marked as Alpha.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions—suitable for most projects.

Quickstart

pip install manygo

import manygo
manygo.get_platform_tag('linux', 'amd64')
manygo.get_platform_tag('darwin', 'arm64')

Requires Python 3.10 or later

Verify before relying

  • Whether the platform tag mappings cover all Go platform combinations or only a subset
  • How the library handles edge cases or future Go platform additions
  • Stability guarantees given the Alpha development status

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies none
Maintenance actively maintained — 253 days since the last release
Last repo commit
First released
Downloads 182,698/month — #10,087 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: manygo-0.2.0-py3-none-any.whl

Keywords: golang, packaging, platform-tags

Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Typing :: Typed

Tags

golang platform tags pythongo binary packaginggoos goarch conversioncross-platform go distributionmanylinux darwin arm64 tags
golang-integrationpackaging-tools

More Build Tools packages