libWiiPy


NamelibWiiPy JSON
Version 0.5.2 PyPI version JSON
download
home_pageNone
SummaryA modern Python library for handling files used by the Wii
upload_time2024-10-21 02:29:01
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords wii wii
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![banner](https://github.com/NinjaCheetah/libWiiPy/assets/58050615/00ea4c41-673c-4a74-addb-fbb40b4313c8)
# libWiiPy
libWiiPy is a modern Python 3 library for handling the various files and formats found on the Wii. It aims to be simple to use, well maintained, and offer as many features as reasonably possible in one library, so that a newly-written Python program could do 100% of its Wii-related work with just one library. It also aims to be fully cross-platform, so that any tools written with it can also be cross-platform.

libWiiPy is inspired by [libWiiSharp](https://github.com/TheShadowEevee/libWiiSharp), which was originally created by `Leathl` and is now maintained by [@TheShadowEevee](https://github.com/TheShadowEevee). If you're looking for a Wii library that isn't in Python, then go check it out!


# Features
This list will expand as libWiiPy is developed, but these features are currently available:
- TMD and Ticket parsing/editing (`.tmd`, `.tik`)
- Title parsing/editing, including content encryption/decryption (both retail and development)
- WAD file parsing/editing (`.wad`)
- Downloading titles from the NUS
- Packing and unpacking U8 archives (`.app`, `.arc`)
- Decompressing ASH files (`.ash`, both the standard variants and the variants found in My Pokémon Ranch)
- IOS patching
- NAND-related functionality:
  - EmuNAND title management (currently requires an existing EmuNAND)
  - `content.map` parsing/editing
  - `uid.sys` parsing/editing
- Assorted miscellaneous features used to make the other core features possible

For a more detailed look at what's available in libWiiPy, check out our [API docs](https://ninjacheetah.github.io/libWiiPy).

# Usage
The easiest way to get libWiiPy for your project is to install the latest version of the library from PyPI, as shown below. 
```sh
pip install -U libWiiPy
```
Our PyPI project page can be found [here](https://pypi.org/project/libWiiPy/).

Because libWiiPy is very early in development, you may want to use the latest version of the package via git instead, so that you have the latest features available. You can do that like this:
```sh
pip install -U git+https://github.com/NinjaCheetah/libWiiPy
```
Please be aware that because libWiiPy is in a very early state right now, many features may be subject to change, and methods and properties available now have the potential to disappear in the future.
                               
For more tips on getting started, see our guide [here](https://ninjacheetah.github.io/libWiiPy/usage/installation.html).

# Building
To build this package locally, the steps are quite simple, and should apply to all platforms. Make sure you've set up your `venv` first!

First, install the dependencies from `requirements.txt`:
```sh
pip install -r requirements.txt
```

Then, build the package using the Python `build` module:
```sh
python -m build
```

And that's all! You'll find your compiled pip package in `dist/`.

# Special Thanks
This project wouldn't be possible without the amazing people behind its predecessors and all of the people who have contributed to the documentation of the Wii's inner workings over at [WiiBrew](https://wiibrew.org).

## Special Thanks to People Behind Related Projects
- Xuzz, SquidMan, megazig, Matt_P, Omega and The Lemon Man for creating Wii.py
- Leathl for creating libWiiSharp
- TheShadowEevee for maintaining libWiiSharp

## Special Thanks to WiiBrew Contributors
Thank you to all of the contributors to the documentation on the WiiBrew pages that make this all understandable! Some of the key articles referenced are as follows:
- [Title metadata](https://wiibrew.org/wiki/Title_metadata), for the documentation on how a TMD is structured
- [WAD files](https://wiibrew.org/wiki/WAD_files), for the documentation on how a WAD is structured
- [IOS history](https://wiibrew.org/wiki/IOS_history), for the documentation on IOS TIDs and how IOS is versioned

### One additional special thanks to [@DamiDoop](https://github.com/DamiDoop)!
She made the very cool banner you can see at the top of this README, and has also helped greatly with my sanity throughout debugging this library.

**Note:** While libWiiPy is directly inspired by libWiiSharp and aims to have feature parity with it, no code from either libWiiSharp or Wii.py was used in the making of this library. All code is original and is written by [@NinjaCheetah](https://github.com/NinjaCheetah), [@rvtr](https://github.com/rvtr), and any other GitHub contributors.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "libWiiPy",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "Wii, wii",
    "author": null,
    "author_email": "NinjaCheetah <ninjacheetah@ncxprogramming.com>, Lillian Skinner <lillian@randommeaninglesscharacters.com>",
    "download_url": "https://files.pythonhosted.org/packages/6c/c6/49ab9e7bb55d1a5f491e368a3580d50ac8362f3d3def4a3e4b3c49629a7e/libwiipy-0.5.2.tar.gz",
    "platform": null,
    "description": "![banner](https://github.com/NinjaCheetah/libWiiPy/assets/58050615/00ea4c41-673c-4a74-addb-fbb40b4313c8)\n# libWiiPy\nlibWiiPy is a modern Python 3 library for handling the various files and formats found on the Wii. It aims to be simple to use, well maintained, and offer as many features as reasonably possible in one library, so that a newly-written Python program could do 100% of its Wii-related work with just one library. It also aims to be fully cross-platform, so that any tools written with it can also be cross-platform.\n\nlibWiiPy is inspired by [libWiiSharp](https://github.com/TheShadowEevee/libWiiSharp), which was originally created by `Leathl` and is now maintained by [@TheShadowEevee](https://github.com/TheShadowEevee). If you're looking for a Wii library that isn't in Python, then go check it out!\n\n\n# Features\nThis list will expand as libWiiPy is developed, but these features are currently available:\n- TMD and Ticket parsing/editing (`.tmd`, `.tik`)\n- Title parsing/editing, including content encryption/decryption (both retail and development)\n- WAD file parsing/editing (`.wad`)\n- Downloading titles from the NUS\n- Packing and unpacking U8 archives (`.app`, `.arc`)\n- Decompressing ASH files (`.ash`, both the standard variants and the variants found in My Pok\u00e9mon Ranch)\n- IOS patching\n- NAND-related functionality:\n  - EmuNAND title management (currently requires an existing EmuNAND)\n  - `content.map` parsing/editing\n  - `uid.sys` parsing/editing\n- Assorted miscellaneous features used to make the other core features possible\n\nFor a more detailed look at what's available in libWiiPy, check out our [API docs](https://ninjacheetah.github.io/libWiiPy).\n\n# Usage\nThe easiest way to get libWiiPy for your project is to install the latest version of the library from PyPI, as shown below. \n```sh\npip install -U libWiiPy\n```\nOur PyPI project page can be found [here](https://pypi.org/project/libWiiPy/).\n\nBecause libWiiPy is very early in development, you may want to use the latest version of the package via git instead, so that you have the latest features available. You can do that like this:\n```sh\npip install -U git+https://github.com/NinjaCheetah/libWiiPy\n```\nPlease be aware that because libWiiPy is in a very early state right now, many features may be subject to change, and methods and properties available now have the potential to disappear in the future.\n                               \nFor more tips on getting started, see our guide [here](https://ninjacheetah.github.io/libWiiPy/usage/installation.html).\n\n# Building\nTo build this package locally, the steps are quite simple, and should apply to all platforms. Make sure you've set up your `venv` first!\n\nFirst, install the dependencies from `requirements.txt`:\n```sh\npip install -r requirements.txt\n```\n\nThen, build the package using the Python `build` module:\n```sh\npython -m build\n```\n\nAnd that's all! You'll find your compiled pip package in `dist/`.\n\n# Special Thanks\nThis project wouldn't be possible without the amazing people behind its predecessors and all of the people who have contributed to the documentation of the Wii's inner workings over at [WiiBrew](https://wiibrew.org).\n\n## Special Thanks to People Behind Related Projects\n- Xuzz, SquidMan, megazig, Matt_P, Omega and The Lemon Man for creating Wii.py\n- Leathl for creating libWiiSharp\n- TheShadowEevee for maintaining libWiiSharp\n\n## Special Thanks to WiiBrew Contributors\nThank you to all of the contributors to the documentation on the WiiBrew pages that make this all understandable! Some of the key articles referenced are as follows:\n- [Title metadata](https://wiibrew.org/wiki/Title_metadata), for the documentation on how a TMD is structured\n- [WAD files](https://wiibrew.org/wiki/WAD_files), for the documentation on how a WAD is structured\n- [IOS history](https://wiibrew.org/wiki/IOS_history), for the documentation on IOS TIDs and how IOS is versioned\n\n### One additional special thanks to [@DamiDoop](https://github.com/DamiDoop)!\nShe made the very cool banner you can see at the top of this README, and has also helped greatly with my sanity throughout debugging this library.\n\n**Note:** While libWiiPy is directly inspired by libWiiSharp and aims to have feature parity with it, no code from either libWiiSharp or Wii.py was used in the making of this library. All code is original and is written by [@NinjaCheetah](https://github.com/NinjaCheetah), [@rvtr](https://github.com/rvtr), and any other GitHub contributors.\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A modern Python library for handling files used by the Wii",
    "version": "0.5.2",
    "project_urls": {
        "Documentation": "https://ninjacheetah.github.io/libWiiPy/",
        "Homepage": "https://github.com/NinjaCheetah/libWiiPy",
        "Issues": "https://github.com/NinjaCheetah/libWiiPy/issues",
        "Repository": "https://github.com/NinjaCheetah/libWiiPy.git"
    },
    "split_keywords": [
        "wii",
        " wii"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "4e310c6018127c76db55f769be685b3a29b9c9ffc7ce73579a292bb7fb9c5eb5",
                "md5": "e4d28de47b6a7d5d6a15a0b4787a4501",
                "sha256": "8079b94acca02b70b8cdabbecacb1122a20e2461deb6752d56cb02596899b56d"
            },
            "downloads": -1,
            "filename": "libWiiPy-0.5.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e4d28de47b6a7d5d6a15a0b4787a4501",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 50671,
            "upload_time": "2024-10-21T02:28:59",
            "upload_time_iso_8601": "2024-10-21T02:28:59.446888Z",
            "url": "https://files.pythonhosted.org/packages/4e/31/0c6018127c76db55f769be685b3a29b9c9ffc7ce73579a292bb7fb9c5eb5/libWiiPy-0.5.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6cc649ab9e7bb55d1a5f491e368a3580d50ac8362f3d3def4a3e4b3c49629a7e",
                "md5": "3b99a404074a03db83f671de004b5e36",
                "sha256": "a3366d70dc37d866b5875f0905e546ac05068c42f281c65f95bc37af2b8e6670"
            },
            "downloads": -1,
            "filename": "libwiipy-0.5.2.tar.gz",
            "has_sig": false,
            "md5_digest": "3b99a404074a03db83f671de004b5e36",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 43147,
            "upload_time": "2024-10-21T02:29:01",
            "upload_time_iso_8601": "2024-10-21T02:29:01.221255Z",
            "url": "https://files.pythonhosted.org/packages/6c/c6/49ab9e7bb55d1a5f491e368a3580d50ac8362f3d3def4a3e4b3c49629a7e/libwiipy-0.5.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-21 02:29:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "NinjaCheetah",
    "github_project": "libWiiPy",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "libwiipy"
}
        
Elapsed time: 0.62504s