Saravanan666/pypi-org huggingface dataset:
Package: shpaml
SHPAML is a mini language that can help you to build web pagesmore quickly. It leverages familiar concepts from HTML and CSS,
while striving to bring brevity and clarity to the primary
documents that you edit. It plays nice with templating languages.SHPAML allows you to produce HTML with cleaner syntax, without
introducing any other layer of abstraction. It does so in the
following ways:Reduce punctuationReduce the need for end tagsMimic CSS selector syntaxAllow well-formed HTML to pass throughPlay nice with templating languages
Package: shparkley
ContentsInstallationRequirementsExample UsageShparkley is a PySpark implementation ofShapley valueswhich uses amonte-carlo approximationalgorithm.Given a dataset and machine learning model, Shparkley can compute Shapley values for all features for a feature vector.
Shparkley also handles training weights and is model-agnostic.Installationpip install shparkleyRequirementsYou must have Apache Spark installed on your machine/cluster.Example UsagefromtypingimportListfromsklearn.baseimportClassifierMixinfromaffirm.model_interpretation.shparkley.estimator_interfaceimportOrderedSet,ShparkleyModelfromaffirm.model_interpretation.shparkley.spark_shapleyimportcompute_shapley_for_sampleclassMyShparkleyModel(ShparkleyModel):"""
    You need to wrap your model with this interface (by subclassing ShparkleyModel)
    """def__init__(self,model:ClassifierMixin,required_features:OrderedSet):self._model=modelself._required_features=required_featuresdefpredict(self,feature_matrix:List[OrderedDict])->List[float]:"""
        Generates one prediction per row, taking in a list of ordered dictionaries (one per row).
        """pd_df=pd.DataFrame.from_dict(feature_matrix)preds=self._model.predict_proba(pd_df)[:,1]returnpredsdef_get_required_features(self)->OrderedSet:"""
        An ordered set of feature column names
        """returnself._required_featuresrow=dataset.filter(dataset.row_id=='xxxx').rdd.first()shparkley_wrapped_model=MyShparkleyModel(my_model)# You need to sample your dataset based on convergence criteria.# More samples results in more accurate shapley values.# Repartitioning and caching the sampled dataframe will speed up computation.sampled_df=training_df.sample(0.1,True).repartition(75).cache()shapley_scores_by_feature=compute_shapley_for_sample(df=sampled_df,model=shparkley_wrapped_model,row_to_investigate=row,weight_col_name='training_weight_column_name')
Package: shPassGenerator
shPassGeneratorVersion 1.0.6<div align="center">

    <img src="https://img.shields.io/github/license/shervinbdndev/shPassGenerator.svg"></img>

</div>

<img src="https://img.shields.io/github/forks/shervinbdndev/shPassGenerator.svg"></img>

<img src="https://img.shields.io/github/stars/shervinbdndev/shPassGenerator.svg"></img>

<img src="https://img.shields.io/github/watchers/shervinbdndev/shPassGenerator.svg"></img>

<img src="https://img.shields.io/github/issues-pr/shervinbdndev/shPassGenerator.svg"></img>

<img src="https://img.shields.io/github/issues-pr-closed/shervinbdndev/shPassGenerator.svg"></img>

<img src="https://img.shields.io/github/downloads/shervinbdndev/shPassGenerator/total.svg"></img><img style="display:block;margin-left:auto;margin-right:auto;width:70%;" src="https://github-readme-stats.vercel.app/api/pin/?username=shervinbdndev&repo=shPassGenerator&theme=dracula"></img>Ready To UseDeveloped by Shervin Badanara (shervinbdndev) on Github<img src="https://forthebadge.com/images/badges/made-with-python.svg"></img>Language and technologies used in This ProjectWorkSpaceUpdate Your InterpreterWindows / CMDpy-mpipinstall--upgradepipLinux / Terminalpython-mpipinstall--upgradepipInstallationWindows / CMD , Linux / TerminalpipinstallshPassGeneratororpy-mpipinstallshPassGeneratorUpdate LibraryWindows / CMD , Linux / Terminalpipinstall-UshPassGeneratororpy-mpipinstall--upgradeshPassGeneratorUsageArgs  |  Type   |  Efficiency------------- | ------------- | -------------length  | Integer | Set The Length of your Password (Max Length is Unlimited)chars  |  Boolean  | Use Lowercase & Uppercase Characters in Your Passwordlowercase  |  Boolean  |  Use Lowercase Characters in Your Passworduppercase  |  Boolean  |  Use Uppercase Characters in Your Passwordnumbers  |  Boolean  |  Use Numbers in Your Passwordsymbols  |  Boolean  |  Use Symbols in Your Passwordoctal  |  Boolean  |  Use Octal Characters in Your Passwordhexa  |  Boolean  |  Use Hexa Characters in Your PasswordGenerate Strong PasswordsfromshPassGeneratorimportGeneratePassprint(f"This Password is Strong :{GeneratePass(length=16,lowercase=True)}")print(f"This Password is Strong too :{GeneratePass(length=50,chars=True,symbols=True)}")OutputThis Password is Strong : umvgfarzfirmuesc

This Password is Strong too : aU;/k.ofD-d@ZoCeLgaOui/=zdr)n#o@KKi%e[D'`I>$vpHNzTEnjoy :)Package Uploaded in PYPI :Here
Package: shpaste
Source Hub Paste CLI - paste.sr.htThis simple script utilizes the new GraphQL API to offer the ability to upload files directly from the command line!UsageFirst you have to login to the service. To do this simply runshpaste loginit will give you directions on how to login:$shpastelogin
Pleasenavigateto:https://meta.sr.ht/oauth2/personal-tokentogenerateapersonalauthtoken
Grantstring:"paste.sr.ht/PROFILE paste.sr.ht/PASTES:RW":YOUR_TOKEN_HEREThen you can start sending some files! Runcat my_file.txt | shpasteand you will receive the link:$cattest.txt|shpaste
https://paste.sr.ht/~joshmulliken/6c5494f6984bf515ee92f1a534d9d866f02de73dInstallationInstallation is really simple! Just runpip3 install shpaste.Additional DocsUsing the main CLI:$shpaste--help
usage:shpaste[-h][-fFILENAME][-vVISIBILITY]{login}...

paste.sr.htcommandlineutility

positionalarguments:{login}optionalarguments:-h,--helpshowthishelpmessageandexit-fFILENAME,--filenameFILENAMEOptionalfilename-vVISIBILITY,--visibilityVISIBILITYPUBLIC,PRIVATE,orUNLISTEDLogging in:$shpastelogin--help
usage:shpastelogin[-h][-tTOKEN]Logintopaste.sr.htwithyourpersonalaccesstoken

optionalarguments:-h,--helpshowthishelpmessageandexit-tTOKEN,--tokenTOKENpersonalaccesstokenfromhttps://meta.sr.ht/oauth2
Package: shpg
Installationfor now shpg is available through GitHub. You can install by cloning the project and renning setup.py:gitclonehttps://github.com/BastienCagna/shpg.gitcdshpgpythonsetup.pyinstallN.B: replace “install” by “develop” if you want to contribute to development or customize the package.
N.B2: use –user to install the package only for you (might be mandatory depending of the rights you have)Basic exampleimportshpg# Create the HTML Pagepage=shpg.Page(title="My Page")page.content.append(shpg.Heading1("Hello world!"))page.content.append(shpg.Paragraph('This is my first page using SHPG.'))# Generate the HTML pagereport_path="/tmp/my_page.html"page.save(report_path,portable=True)DocumentationThe auto-generated online documentation is hosted at [https://bastiencagna.github.io/shpg/](https://bastiencagna.github.io/shpg).
Package: shpinfo
A command line program to print meta information about the given shapefile.Free software: MIT licenseDocumentation:https://pythonhosted.org/shpinfo/.Install$ pip install shpinfoUsage$ shpinfo myfile.shpHistory0.2.0 (2015-06-28)Faster processing of large files by iterating with iterShapes.Use comma as thounds separator.0.1.1 (2015-06-27)Include requirements.txt.0.1.0 (2015-06-27)First release on PyPI.
Package: shpkpr
shpkpr is a tool for controlling and observing applications/tasks running on Marathon and Chronos. shpkpr is designed to provide a simple command-line interface to Marathon and Chronos (similiar to theherokucommand-line tool) for use both manually and with CI tools like jenkins.Free software: MIT licenseDocumentation:https://shpkpr.readthedocs.org.Quick start guide:https://shpkpr.readthedocs.io/en/latest/contributing.html#get-startedFeaturesList/show detailed application infoDeploy applications (usingJinja2templates)Zero-downtime application deploys when used withMarathon-LBList/show detailed cron task infoDeploy cron tasks (usingJinja2templates)
Package: shplotmissing
contourpy==1.0.6
cycler==0.11.0
fonttools==4.38.0
kiwisolver==1.4.4
matplotlib==3.6.2
missingno==0.5.1
numpy==1.23.5
packaging==21.3
pandas==1.5.2
Pillow==9.3.0
pyparsing==3.0.9
python-dateutil==2.8.2
pytz==2022.6
scipy==1.9.3
seaborn==0.12.1
six==1.16.0
Package: shp-way
# ShpWay: A Shapefile NavigatorShpWay is a simple Python library that converts shapefiles into a navigation system by the conversion of shapefiles to graph.## Getting Started### Requirements* Python 2.7+* Two shapefiles- a shapefile containing _**polyline**_ shapes to outline the pathways- a shapefile containing all potential visitation objects _**polygon shapes is currently only supported**_### InstallationShpWay can be installed with pip:```$ pip install shp-way-bbrownrichardson```or directly from the source code:```$ git clone https://github.com/bbrownrichardson/ShpWay.git$ cd ShpWay$ python setup.py install```### Basic UsageThe usage of the library's interface is simple.```pythonfrom shp_way.shapefile_navigator import ShapefileNavigatorpathways = "shapefiles/roads.shp"visitation = "shapefiles/buildings.shp"sn = ShapefileNavigator(pathways, visitation)```ShpWay allows users to have control of efficiency in terms of determining spatial grid size. Users can provide a fixed value for the number of rows and columns used in the conversion process. See documentation for more information.```pythonfrom shp_way.shapefile_navigator import ShapefileNavigatorpathways = "shapefiles/roads.shp"visitation = "shapefiles/buildings.shp"sn = ShapefileNavigator(pathways, visitation, rows=15, cols=30)```The `sn` object can then be used as described in the `ShpWay-ShapefileNavigator` docs [link here]
Package: shpy
# Shpy
Make your shell python supportive[![PyPI](https://img.shields.io/badge/pypi-v3.12.0-green.svg?style=flat)](https://pypi.python.org/pypi/shpy/)
[![Twitter](https://img.shields.io/badge/twitter-ZviWex-4099FF.svg?style=flat)](https://twitter.com/ZviWex)
[![GNU License](https://img.shields.io/badge/license-GNU-blue.svg?style=flat)](https://www.gnu.org/licenses/gpl-3.0.en.html)
[![WebSite](https://img.shields.io/website-down-red/http/shields.io.svg?label=website)](https://ZviWex.com)
# Usage
## Running shell
Execute this command`sh shpy.bat # on windows shpy # on linux `or embed this command as your default shellNote - this file will be on the default python scripts folder, considure adding this folder to PATH## Using the shell
In the shell itself, just write your commandsIf the command has no python-meaning, we will try to run it in shell context.If you want the shell to force-run command in shell context, execute`pythoncommand("<insertcommandhere>")`within the shell
# Installation`sh python-mpip install--upgradepip python-mpip install--upgradeshpy `# Contact
If you have any questions feel free to ping me
at [here](https://ZviWex.com/) to connect.
There is also a [mail address](mailto:zvikizviki@gmail.com) for higher latency discussion.
Package: shrebx
Thomas LevineRead and write secrets from a configuration file.Install from PyPI.pip install shrebxI originally made this for secret settings in a Django project,
so here’s the example from that.First, load the secrets.import os

from shrebx import shrebx

BASE_DIR = os.path.dirname(os.path.dirname(__file__))
SECRETS = shrebx(os.path.join(BASE_DIR, '.secrets'),
                 manual_fields = ['DATABASE_PASSWORD'],
                 random_fields = ['SECRET_KEY'])Then set them to things.SECRET_KEY = SECRETS['SECRET_KEY']
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'dadaportal',
        'USER': 'www-data',
        'HOST': 'localhost',
        'PASSWORD': SECRETS['DATABASE_PASSWORD'],
    }
}If you have a lot of secrets, consider usinglocals.locals().update(shrebx(random_fields = ['THIS_PASSWORD', 'THAT_PASSWORD'],
                       manual_fields = ['EMAIL_ADDRESS' ))
Package: shrep
shrep lets you run a shell command repeatedly, or until it fails. It’s
intended for diagnosing intermittent failures – e.g. say you have a C
program that seg faults once every hundred runs or so, and you need to
reproduce it to fix it:shrep -n 100 ./myprogshrep can also run your program until it fails rather than a fixed
number of repetitions. It can capture stdout and stderr to avoid
cluttering your terminal. It can run child processes in parallel. See
the man page for the full story:groff -man -Tascii shrep.1 | lessInstallationshrep is currently a single-file Python script. The easiest way to
install it is:pip install --user shrepThat will put the executable in~/.local/bin.It also installs a man page, which you can read withMANPATH=~/.local/share/man man shrep(At least, that works for me on Ubuntu.)Author, copyright, licenseshrep was written by Greg Ward <greg@gerg.ca>.Copyright © 2018–2021 Gregory P. Ward. All rights reserved.Use of this software is governed by a BSD-style license that can be
found in the LICENSE.txt file.ContributingFind a bug? Want to implement a feature? Send me email! If a lot of
people like it, I’ll put it on github or something.
Package: shreqt
ShreQT⢀⡴⠑⡄⠀⠀⠀⠀⠀⠀⠀⣀⣀⣤⣤⣤⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠸⡇⠀⠿⡀⠀⠀⠀⣀⡴⢿⣿⣿⣿⣿⣿⣿⣿⣷⣦⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠑⢄⣠⠾⠁⣀⣄⡈⠙⣿⣿⣿⣿⣿⣿⣿⣿⣆⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⢀⡀⠁⠀⠀⠈⠙⠛⠂⠈⣿⣿⣿⣿⣿⠿⡿⢿⣆⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢀⡾⣁⣀⠀⠴⠂⠙⣗⡀⠀⢻⣿⣿⠭⢤⣴⣦⣤⣹⠀⠀⠀⢀⢴⣶⣆
⠀⠀⢀⣾⣿⣿⣿⣷⣮⣽⣾⣿⣥⣴⣿⣿⡿⢂⠔⢚⡿⢿⣿⣦⣴⣾⠁⠸⣼⡿
⠀⢀⡞⠁⠙⠻⠿⠟⠉⠀⠛⢹⣿⣿⣿⣿⣿⣌⢤⣼⣿⣾⣿⡟⠉⠀⠀⠀⠀⠀
⠀⣾⣷⣶⠇⠀⠀⣤⣄⣀⡀⠈⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀  Tests have layers
⠀⠉⠈⠉⠀⠀⢦⡈⢻⣿⣿⣿⣶⣶⣶⣶⣤⣽⡹⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀  Ogres have layers
⠀⠀⠀⠀⠀⠀⠀⠉⠲⣽⡻⢿⣿⣿⣿⣿⣿⣿⣷⣜⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀        ~ Anonymous
⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣷⣶⣮⣭⣽⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⣀⣀⣈⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠇⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠛⠻⠿⠿⠿⠿⠛⠉OverviewQuery testing framework.Currently supports only Exasol DB.This project usesPoetryfor dependency management and packaging.DevelopmentTo setup your virtual environment run the following command. The default location for poetry venvs is~/Library/Caches/pypoetry/virtualenvspoetryinstallTo run tests and lint checks:makechecksTo format on all files:makefmtUsagePrequisiteCurrently we only support Exasol connections.
To run local instance of Exasol as docker container run:dockerrun-p8999:8888--detach--privileged--stop-timeout120exasol/docker-db:6.0.13-d1(MacOS)Keep in mind that Exasol is memory-heavy and you need to increase docker memory limit to at least4GBCredentialsShreQT uses following environment variables to connect to database.VariableDefault ValueSHREQT_DSNlocalhost:8999SHREQT_USERsysSHREQT_PASSexasolExampleTheexampledirectory contains simple example which illustrates the example usage.conftest.pyincludes simple User schema and code which sets up the database for test session.example.pyincludes a tested function.example_test.pyinclude example test function.You can run the example with:makerun-exampleBuild && DeploySetup~/.pypircwith credentials.Run checks and build package:makebuildDeploy package to pypi using poetry:makedeployTODOAutomate deployment step with travisDecorator functionality for temporary layer
Package: shrew
shrewshrew 0.1.0A handy way to manage your bash environment across machines.AboutA handy way to manage your bash environment across machines.InstallationInstall viapip:$ pip install shrewInstall from source:$ git clone git://github.com/litters/shrew.git
$ cd shrew
$ python setup.py installDocumentationFull Documentation:http://shrew.readthedocs.org/en/latest.You will needsphinxinstalled to generate the
documentation. Documentation can be generated by runningpython setup.py doc. Generated documentation can be found in thedoc/build/html/directory.TestingThe easiest way to run the tests is to installnose(pip intall nose) and runnosetestsorpython setup.py testin the root
of the distribution. Tests are located in thetests/directory.
Package: shrimp-http
🦐 ShrimpShrimp🦐 is a batteries-included zero-dependency WSGI/ASGI web-framework forPythonExamplefromshrimpimportShrimp,Requestfromshrimp.responseimportHTMLResponseserver=Shrimp()@server.get("/")defindex(req:Request)->HTMLResponse:returnHTMLResponse("<h1>Hello, World!</h1>")server.serve()Simple HTTP server usingShrimp🦐RequirementsPython 3.10.xor above withpipTo installPythonwithpip, checkthis file.Install ShrimpTo installShrimp🦐, run the followingpipcommand.$ pip install -U shrimp-httpShrimp🦐 is fully made with built-in packages. There's no dependencies, hence being batteries-included.
Package: shrimpy
:fried_shrimp: shrimpyA minimal engine for choose-your-own-adventure games.InstallInstalling shrimpy is easy. To install shrimpy on your computer, open your terminal and enter:sudo pip3 install shrimpyAboutIn shrimpy,a game is simply a folder that contains scene files.Scene files are written in JSON.CreateTo create your first shrimpy game, make a new folder somewhere on your computer. Name your new folderhello-shrimpy.Next, create a new file calledstart.jsoninsidehello-shrimpy. Copy the following code intostart.json:{
  "id": "start",
  "text": "You lose!",
  "options": [
    {
      "text": "What? Already?",
      "scene": "end"
    }
  ]
}Once you have savedstart.jsoninside of thehello-shrimpyfolder, create a second file inhello-shrimpyand name itend.json. Copy the following code intoend.json:{
  "id": "end",
  "text": "GAME OVER. Enter q to quit.",
  "options": [
    {
      "text": "(play again)",
      "scene": ""
    }
  ]
}At this point, you should have a folder calledhello-shrimpythat contains two files:start.jsonandend.json.That's it! Your new shrimpy game is finished and ready to play.PlayTo play the game you just created, navigate into thehello-shrimpyfolder and run:shrimpy playQuitTo quit playing a shrimpy game, you can always enterqwhen prompted for an option number.UpdateShrimpy keeps getting better. To update shrimpy to the latest version, enter:sudo pip3 install shrimpy -UUninstallDown with shrimpy! To uninstall shrimpy from your computer, enter:sudo pip3 uninstall shrimpyScene SchemaFor your reference, the following JSON schema is used to validate scene files:{
	"$schema": "http://json-schema.org/draft-04/schema#",
	"type": "object",
	"properties": {
		"id": {
			"type": "string"
		},
		"text": {
			"type": "string"
		},
		"options": {
			"type": "array",
			"items": [
				{
					"type": "object",
					"properties": {
						"text": {
							"type": "string"
						},
						"scene": {
							"type": "string"
						}
					},
					"required": [
						"text",
						"scene"
					]
				}
			]
		}
	},
	"required": [
		"id",
		"text",
		"options"
	]
}To learn more about JSON Schema,click here.
Package: shrim-py
Shrim.py, the Better Shrimpy Python APIThis API connect toShrimpy Developers APIin a more flexible way thanthe official API.It also covers aShrimpy Users APIthat wasn't available until now.Signature headers and hashing are fully covered, no hassle.Benefits Over the Official Shrimpy Python LibThis Shrimpy library has the following features:Connect to the User API in order to drive your Shrimpy account and portfoliosTested (yes, Shrimpy official is totally untested ¯_(ツ)_/¯)Access all endpoints explicitely as documented. eg:client.get("/list_exchanges")instead of searching for corresponding method when they existAccess latest endpoints with the current lib version, not need to upgrade and get the corresponding methodInstallationYou probablywant a virtualenvfirst, then:pip install shrim-pyUsageThis API allows you to connect to theShrimpy Developers APIor theShrimpy User API.fromshrimpyimportShrimpyDevClientclient=ShrimpyDevClient("myapikey","myapisecret")client.get("/list_exchanges")if you want to connect to the Shrimpy User API instead just import and useShrimpyUserClientinstead:fromshrimpyimportShrimpyUserClientclient=ShrimpyUserClient("myapikey","myapisecret")client.get("/binance/ticker")Shrimpy Client Methodswhen creating aclientyou can then call the following methods:get,postanddelete.Retrieve a Resourceclient.get(endpoint)Create a Resourceclient.post(endpoint)Delete a Resourceclient.delete(endpoint)There's no other method used in Shrimpy. However if you needed to manually call an endpoint with a different method you could shortcut usingclient.call(method, endpoint).List of EndpointsThe full list of endpointsfor the User APIfor accessing public resources, account, portfolios and data types is available on the official doc:https://www.shrimpy.io/docsWith theDevelopers APIendpoint you can manage public, trading, historical, user info, management and analytics data:https://developers.shrimpy.io/docsRunning testsWith your virtualenv activated simply run:make testIt's a handy shortcut for launching unittest.
Package: shrincols
CLI for making a text to fit in a max number of columns. It is possible to
especify the max number of columns as well as to juntify it.It is possible to write output to a file and to pipe a text for the script’s
standard input.Preparing for DevelopmentEnsurepipandpipenvare installed.Clone repository:https://github.com/thiagolcmelo/desafio-idwallFetch development dependencies:make installUsageThe input might be a filename:$ shrincols filename.txt -c 80or a string:$ shrincols "some text goes here ..." -c 80The option-jforces the text to be justified:$ shrincols filename.txt -c 80 -jAltough the result will always be printed on the standard output, the option-omight be used for writing the result to a file.$ shrincols filename.txt -c 40 -o output.txtIt is also possible to pipe standard output into the script’s standard input:$ cat filename.txt | shrincols -c 40Running TestsRun tests locally usingmakeif virtualenv is active:$ makeIf virtualenv isn’t active then use$ pipenv run make
Package: shrinktunes
shrinktunesshrinktunesis a convenience wrapper forffmpegbatch jobs. It was originally created for batch converting audio files in a large asset library to various formats, containers, and compression levels.UsageOnce installed, you can use theshrinktunescommand to convert files specified individually or with a glob pattern. Below are some examples.Convert a Single Fileshrinktunesconvert"path/to/your/file.wav"-omp3Convert Files to Multiple Formatsshrinktunesconvert"path/to/your/files/*.wav"-omp3-ooggConvert with Verbose Loggingshrinktunesconvert-v"path/to/your/files/*.wav"-omp3Force Overwrite Existing Filesshrinktunesconvert"path/to/your/files/*.wav"-omp3-fInstallationYou'll need to haveFFmpeginstalled on your machine to use shrinktunes. If you don't have it installed, the CLI will provide instructions on how to get it based on your platform.This project usespoetryfor dependency management and packaging. To install shrinktunes, firstget poetry, then run:poetryinstallCommandsshrinktunes convert<glob_pattern>: Aquotedglob pattern for files to convert, e.g. `"path/to/your/files/*.wav"(Note: If you forget to quote it, it won't be interpreted as a glob, but rather expanded by your shell, which will likely result in an error.`)-o <ext>: Output format by file extension; must be specified one or more times. Supported formats are dynamically determined fromffmpeg(seeshrinktunes infofor common formats orffmpeg -formatsfor all of them).-v: Enable verbose logging mode-f: Force overwrite of existing filesshrinktunes infoYou can also use shrinktunes to print information about the available codecs on your system with theinfocommand:$shrinktunesinfo
ffmpegisinstalled

Decoders:
aacrawADTSAAC(AdvancedAudioCoding)aviAVI(AudioVideoInterleaved)flacrawFLAC
m4aQuickTime/MOV
mp3MP3(MPEGaudiolayer3)mp4QuickTime/MOV
oggOgg
wavWAV/WAVE(WaveformAudio)webmMatroska/WebM

Encoders:
aviAVI(AudioVideoInterleaved)flacrawFLAC
mp3MP3(MPEGaudiolayer3)mp4MP4(MPEG-4Part14)oggOgg
wavWAV/WAVE(WaveformAudio)webmWebMNoteIt currently filters down to a few common ones (let me know of obvious oversights).Useffmpeg -formatsto see the full list (they will still work withshrinktunesif ffmpeg can do it; the list is just overwhelmingly long so we have made it short).DevelopmentClone the repository and install the dependencies with Poetry:gitclonehttps://github.com/your-username/shrinktunes.gitcdshrinktunes
poetryinstallTestsTests utilizepytest. After installing the dependencies, run the tests with:poetryrunpytestOr, inside a venv like I do:$source.venv/bin/activate(shrinktunes)$pytestContributingWe welcome contributions! Please open an issue or submit a pull request on GitHub.Licenseshrinktunesis open-source software, released underMIT License.AuthorBrian Jorgensen