Skip to main content

No project description provided

Project description


title: xi-cli description: A rich CLI template for pastebin CLI tools pypi_url: https://pypi.org/project/ix-cli/#files tar_url: https://pypi.org/project/ix-cli/#files github_url: https://github.com/arnos-stuff/ix

A rich CLI template for pastebin CLI tools

ix is a command line interface for ix.io, a pastebin service.

I tried to make this CLI as "reusable" as possible, so that you can clone this repository and use it as a template for your own pastebin CLI tool.

How to use this template

  1. Clone this repository
  2. Rename the ix_cli directory to the name of your pastebin service
  3. Replace the variable PROVIDER_URL in ix_cli/utils.py with the URL of your pastebin service (e.g. https://paste.example.com)
  4. Replace the name of the app in pyproject.toml with the name of your pastebin service in both the name and [tool.poetry.scripts] sections
  5. Install poetry and run poetry install to install the dependencies
  6. Run a basic command to make sure everything works: <new-app-name> s "Hello, world!"
  7. Edit the README to your liking
  8. Commit your changes and push them to your repository
  9. Publish your app to PyPI using poetry build and poetry publish

Installation

Using pip

pip install ix-cli

Cloning the repository

git clone https://github.com/arnos-stuff/ix.git

Basic usage

As a Python module

from ix_cli import uploadFromFile, uploadFromStdin, download, getHistory

# Upload from stdin
url = uploadFromStdin("Hello, world!")
print(url)

# Upload from file
url = uploadFromFile("README.md")
print(url)

# Download
data = download(url)
print(data)

As a CLI tool

Using ix is simple. Just pipe some text into it:

echo "Hello, world!" | ix s

This will print the URL of the paste to stdout. You can also use ix to upload files:

ix f README.md

This CLI has an extra feature: it stores the past 100 URLs in a local cache. You can use this to quickly access your pastes:

ix h

This will print a list of your pastes, with the most recent at the top. You also have the option to limit the number of pastes shown:

ix h -n 3

This will print the 3 most recent pastes.

Getting the data back

You can use ix to retrieve the data from a paste by using the g command:

ix g https://ix.io/1QZp

or simply

ix g 1QZp

This will print the contents of the paste to stdout.

License

This project is licensed under the MIT License - see the LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ix_cli-0.1.3.tar.gz (5.5 kB view hashes)

Uploaded Source

Built Distribution

ix_cli-0.1.3-py3-none-any.whl (6.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page