Skip to main content

A local-only URL shortener (˶˘ ³˘)♡

Project description

shortiepy 🌸

Your local URL shortener (˶˘ ³˘)♡

  • 🔒 100% offline - no data leaves your machine
  • 🌈 Cross-platform (Linux/macOS/Windows)
  • 📋 Auto-copies short URLs to clipboard
  • 🎀 Pastel colors & kaomojis everywhere!

Installation

  • Using pip
pip install shortiepy

Usage

  • Add a URL
shortiepy add https://example.com
  • Start server
shortiepy serve  # will run in forground
# OR
shortiepy start  # will run in background
  • View docs
shortiepy docs

Shell Completion

Get tab-completion with one command:

shortiepy completion

Restart your shell or reload config (source ~/.bashrc for bash OR source ~/.zshrc for zsh). Fish users: no restart needed!

That's it! Works for bash, zsh, and fish.

Why

For some reason, when I’m working on things or trying to learn something new, my browser ends up filled with tons of tabs—which makes my laptop-chan angry ~ ₍^. ̫.^₎

I don’t want to close them or bookmark them. I tried manually copying URLs into a .txt file, but then I wished there was a simple way to turn long links into short ones I could use later.

I didn’t want to send anything online, and existing self-hosted URL shorteners felt like overkill for such a small need.

So I made this: a minimal, local-only URL shortener. It started as a single script file and isn’t perfect—but it just works! ~ ദ്ദി/ᐠ。‸。ᐟ\

For Developers

Want to tinker with shortiepy or contribute? Here's how to set it up locally:

  • Clone the repository locally and change the directory into it:
git clone https://github.com/CheapNightbot/shortiepy.git && cd shortiepy
  • Install shortiepy:
# Create a virtual environment (keeps things clean!)
python -m venv .venv

# Activate it
source .venv/bin/activate  # Linux/macOS
# OR
.venv\Scripts\activate     # Windows

# Install in editable mode (changes reflect instantly!)
pip install -e .

Now you can run shortiepy from anywhere in your terminal! Made a change? It’ll work immediately—no reinstall needed!

Updating Shell Completions

If you modify CLI commands or options, regenerate completions:

./scripts/generate-completions.sh

This updates the files in shortiepy/completions/ directory.

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

shortiepy-0.2.3.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

shortiepy-0.2.3-py3-none-any.whl (11.9 kB view details)

Uploaded Python 3

File details

Details for the file shortiepy-0.2.3.tar.gz.

File metadata

  • Download URL: shortiepy-0.2.3.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shortiepy-0.2.3.tar.gz
Algorithm Hash digest
SHA256 da24f91f75b5500ecac201a37b3594e6575e595b62780544566333b87cac2828
MD5 cc0d5ef3050df2cbd0a209fca76a0647
BLAKE2b-256 9c6b736ca872a96090edb0b0f262f3d962bd302ba97dcd71b62440b43a63686b

See more details on using hashes here.

Provenance

The following attestation bundles were made for shortiepy-0.2.3.tar.gz:

Publisher: release.yml on CheapNightbot/shortiepy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file shortiepy-0.2.3-py3-none-any.whl.

File metadata

  • Download URL: shortiepy-0.2.3-py3-none-any.whl
  • Upload date:
  • Size: 11.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for shortiepy-0.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d676c8520587d112da157afb2661a0c407e9ce9d799236b4995708ba8fdb21c7
MD5 1c32257b65c4952907a56171881ae590
BLAKE2b-256 d8d1920ff05dee22b2613939595ccea364ad15fc531d70f5e60c46041037cd65

See more details on using hashes here.

Provenance

The following attestation bundles were made for shortiepy-0.2.3-py3-none-any.whl:

Publisher: release.yml on CheapNightbot/shortiepy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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