Skip to main content

itg-cli

itg-cli is a command line interface that automates & simplifies common administrative tasks for Stepmania or its derivatives. Its functionality can also be imported as a package for use in a Python project.

Setup

Make sure you have python 3.10 or newer installed.

$ python --version
Python 3.10.19

Install via pipx (recommended):

  1. Install pipx

  2. pipx install itg-cli
    

Install via pip (for use as a module):

pip install itg-cli
from itg_cli import *
from pathlib import Path

packs = Path("/path/to/packs")
courses = Path("/path/to/courses")

add_pack("https://omid.gg/THC", packs, courses)

Configuring

itg-cli will generate a config file if one is not found at the default location. This location and the default values vary depending on the platform. The location of the created config file will be output by after it's created.

The init-config command is used to write a default config file to a location of your choice (or the default location if none is supplied). You can supply this config file to other commands by passing it using the --config parameter.

If your itgmania data folder location is not listed below (e.g. you are using a portable install), you will need to manually edit this config file in the text editor of your choice.

Windows: %appdata%\ITGMania
Linux: ~/.itgmania
MacOS: ~/Library/Application Support/ITGMania
    MacOS cache: ~/Library/Caches/ITGMania

Usage

  • add-pack adds a pack from the supplied path or link to your configured packs directory.

    # Supports links to local .zip files
    itg-cli add-pack path/to/pack.zip
    # Or local directories:
    itg-cli add-pack path/to/pack/
    
    # Supports links to .zip files
    itg-cli add-pack https://omid.gg/THC
    # Google drive links sometimes contain special characters, so they should be surrounded in quotes
    itg-cli add-pack "https://drive.google.com/file/d/18XoCKcA7N4ptE6U7wOJIJgfVwTAyuA10/view"
    
  • add-song adds a song from the supplied path or link to your configured singles directory.

    # Supports links to local .zip files
    itg-cli add-song path/to/song.zip
    # Or local directories:
    itg-cli add-song path/to/song/
    # Supports links to .zip files
    itg-cli add-song "https://cdn.discordapp.com/attachments/529867916833718294/1286510412262805524/Love_Bomb.zip?ex=66ee2bb0&is=66ecda30&hm=6c6ac229657a01b0f48995ed236a22889502c5407478cfe6151596f4355ca7b4&"
    
  • censor Move a song in your packs folder to packs/.censored/[pack]/[SongFolder], hiding it from players.

    itg-cli censor "path/to/Songs/7gays1pack/Stupid Hoe/"
    
  • uncensor displays a list of songs that have been censored and prompts you to select a file to uncensor.

    $ itg-cli uncensor
    1. Monke Rave (Tech Heavy Charts)
    2. Stupid Hoe (7gays1pack)
    3. ME!ME!ME! (Anime Extravaganza 4)
    Select a song to uncensor (1-3): 1
    Uncensored Monke Rave from Tech Heavy Charts.
    

Contributing

This project is my first published/marketed open source project, so I'm still learning how all this works in practice. That being said, If you run into any bugs or have ideas for new features, please feel free to create an issue or pull request.

License

MIT

Metadata

Release files for itg-cli 1.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for itg-cli 1.0.8
File Size Uploaded
itg_cli-1.0.8.tar.gz 15.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for itg-cli 1.0.8
File Interpreter ABI Platform
itg_cli-1.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 30.5 kB

Release files / itg_cli-1.0.8.tar.gz

Download URL itg_cli-1.0.8.tar.gz
Size 15.2 kB
Tags Source
SHA-256 checksum
How to use checksums
878bde63ccfff3777169fb413a04afc2a8658a2eaf32e6d0c4fc6154c379f5b4
BLAKE2b-256 checksum
How to use checksums
7690a5cffb31fd07f2442115e2efb312b6081ff05d3e9594158a7a191917a91e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / itg_cli-1.0.8-py3-none-any.whl

Download URL itg_cli-1.0.8-py3-none-any.whl
Size 15.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
854e137ac61b2d0a3b182dba128a265c0f117658d2678590da6612605eaf2a3c
BLAKE2b-256 checksum
How to use checksums
4731db146c972d074d6dd2fcec0b5d04d70a84b78f076f69630388fb30b4e96e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"CachyOS Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

1.0.8 This release

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page