{"id":13468994,"url":"https://github.com/indygreg/PyOxidizer","last_synced_at":"2025-03-26T05:31:27.216Z","repository":{"id":38421084,"uuid":"162357299","full_name":"indygreg/PyOxidizer","owner":"indygreg","description":"A modern Python application packaging and distribution tool","archived":false,"fork":false,"pushed_at":"2024-03-08T16:37:42.000Z","size":12665,"stargazers_count":5467,"open_issues_count":354,"forks_count":238,"subscribers_count":64,"default_branch":"main","last_synced_at":"2024-10-29T16:53:49.755Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/indygreg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["indygreg"]}},"created_at":"2018-12-18T23:32:13.000Z","updated_at":"2024-10-29T12:20:13.000Z","dependencies_parsed_at":"2024-01-14T06:50:46.630Z","dependency_job_id":"315f15ce-3b96-4dd2-8a32-a7da03fd2956","html_url":"https://github.com/indygreg/PyOxidizer","commit_stats":{"total_commits":6697,"total_committers":55,"mean_commits":"121.76363636363637","dds":0.01433477676571604,"last_synced_commit":"b78b0cb75f4317c45408bbc9a569c062c482c679"},"previous_names":[],"tags_count":369,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indygreg%2FPyOxidizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indygreg%2FPyOxidizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indygreg%2FPyOxidizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/indygreg%2FPyOxidizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/indygreg","download_url":"https://codeload.github.com/indygreg/PyOxidizer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245495885,"owners_count":20624811,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T15:01:23.798Z","updated_at":"2025-03-26T05:31:27.192Z","avatar_url":"https://github.com/indygreg.png","language":"Rust","readme":"# PyOxidizer\n\n[![Build Status](https://github.com/indygreg/PyOxidizer/workflows/.github/workflows/pyoxidizer.yml/badge.svg)](https://github.com/indygreg/PyOxidizer/actions)\n\n`PyOxidizer` is a utility for producing binaries that embed Python.\nThe over-arching goal of `PyOxidizer` is to make complex packaging and\ndistribution problems simple so application maintainers can focus on\nbuilding applications instead of toiling with build systems and packaging\ntools.\n\n`PyOxidizer` is capable of producing a single file executable - with\na copy of Python and all its dependencies statically linked and all\nresources (like `.pyc` files) embedded in the executable. You can\ncopy a single executable file to another machine and run a Python\napplication contained within. It *just works*.\n\n`PyOxidizer` exposes its lower level functionality for embedding\nself-contained Python interpreters as a tool and software library. So if\nyou don't want to ship executables that only consist of a Python\napplication, you can still use `PyOxidizer` to e.g. produce a library\ncontaining Python suitable for linking in any application or use\n`PyOxidizer`'s embedding library directly for embedding Python in a\nlarger application.\n\nThe _Oxidizer_ part of the name comes from Rust: executables produced\nby `PyOxidizer` are compiled from Rust and Rust code is responsible\nfor managing the embedded Python interpreter and all its operations.\nIf you don't know Rust, that's OK: PyOxidizer tries to make the existence\nof Rust nearly invisible to end-users.\n\nWhile solving packaging and distribution problems is the primary goal\nof `PyOxidizer`, a side-effect of solving that problem with Rust is\nthat `PyOxidizer` can serve as a bridge between these two languages.\n`PyOxidizer` can be used to easily add a Python interpreter to _any_\nRust project. But the opposite is also true: `PyOxidizer` can also be\nused to add Rust to Python. Using `PyOxidizer`, you could _bootstrap_\na new Rust project which contains an embedded version of Python and your\napplication. Initially, your project is a few lines of Rust that\ninstantiates a Python interpreter and runs Python code. Over time,\nfunctionality could be (re)written in Rust and your previously\nPython-only project could leverage Rust and its diverse ecosystem. Since\n`PyOxidizer` abstracts the Python interpreter away, this could all be\ninvisible to end-users: you could rewrite an application from Python to\nRust and people may not even know because they never see a `libpython`,\n`.py` files, etc.\n\n## Project Info\n\n:house: The official home of the `PyOxidizer` project is\nhttps://github.com/indygreg/PyOxidizer.\n\n:notebook_with_decorative_cover: Documentation (generated from the `docs/` directory) is available\nat https://gregoryszorc.com/docs/pyoxidizer/main/.\n\n:speech_balloon: The [pyoxidizer-users](https://groups.google.com/forum/#!forum/pyoxidizer-users)\nmailing list is a forum for users to discuss all things PyOxidizer.\n\n:moneybag: If you want to financially contribute to PyOxidizer, do so\nvia [GitHub Sponsors](https://github.com/sponsors/indygreg) or\n[on Patreon](https://www.patreon.com/indygreg).\n","funding_links":["https://github.com/sponsors/indygreg","https://www.patreon.com/indygreg"],"categories":["Rust","Miscellaneous","Code Packaging"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findygreg%2FPyOxidizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Findygreg%2FPyOxidizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Findygreg%2FPyOxidizer/lists"}