Skip to main content

A flying saucer terminal animation tool (like sl meets cowsay)

Project description

ufosay

A flying saucer terminal animation tool — like sl meets cowsay.

 ┌──────────────────────────────┐
 │ We will conquer the earth!!  │
 └──────────────────────────────┘
        _.---._
      .'       '.
  _.-~===========~-._
 (___O___O___O___O___)    ← blinking windows
       \_______/
        ·|·               ← pulsing tractor beam
       ·/|\·
      ·/ | \·
~~~~~~~~~~~~~~~~~~~~~~~~~~  ← fixed terrain
  • Flies right to left at 60fps (butter smooth)
  • Pauses mid-screen to let you read the message
  • Shows a cowsay-style speech bubble
  • Blinking windows, pulsing tractor beam, floating motion, stars, terrain

Install

Via pip (recommended)

pip install ufosay

From source

git clone https://github.com/YOUR_USERNAME/ufosay.git
cd ufosay
pip install .

Usage

ufosay                          # UFO flies by silently
ufosay "Hello from space!"      # UFO with speech bubble
echo "hi" | ufosay              # Pipe input like cowsay
ufosay --msg "text"             # Explicit message flag
ufosay --help                   # Show usage

Examples

ufosay "We will conquer the earth!!"
 ________________________________________
/ We will conquer                        \
| the earth!!                            |
\                                        /
 ----------------------------------------
        _.---._
      .'       '.
  _.-~===========~-._
 (___________________)
       \_______/

Animation details

Feature Detail
Frame rate 60 fps
Movement 30 cols/sec (1 col per 2 frames)
Direction Right to left
Mid-screen pause 0.5 seconds per word
Vertical float Frozen during pause for readability
Window blink Alternates every ~0.33s
Tractor beam Pulses every ~0.27s
Bubble style Cowsay-style, word-wrapped at 40 chars
Bubble visibility Only during mid-screen pause
Terrain Fixed ~ row at bottom
Clean exit Ctrl+C restores cursor, no leftover text

Mistype triggers (optional)

If you frequently mistype ls, run one of the install scripts to set up automatic triggers:

Linux / macOS

./install.sh

This adds aliases to ~/.bashrc or ~/.zshrc:

Typo Triggers
ks ufosay "Did you mean ls?"
cl ufosay "Did you mean ls?"
xl ufosay "Did you mean ls?"
lw ufosay "Did you mean ls?"
lz ufosay "Did you mean ls?"

Windows PowerShell

.\install.ps1

Windows CMD

install.bat

Requirements

  • Python 3.8 or later
  • Any terminal that supports ANSI escape codes (all modern terminals do)

License

MIT

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

ufosay-1.0.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

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

ufosay-1.0.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file ufosay-1.0.0.tar.gz.

File metadata

  • Download URL: ufosay-1.0.0.tar.gz
  • Upload date:
  • Size: 5.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for ufosay-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e8b0d11abe577aedaa48646325f475f45201956cd2bc6a952358c6e58d9cd594
MD5 599ce1cb20c5c5717ca35dfb90088f0e
BLAKE2b-256 e490e5b57f7ce1270af2765d0a4e2bcfc2ce4d8675f608c512117c08b1248c9a

See more details on using hashes here.

File details

Details for the file ufosay-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: ufosay-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for ufosay-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 87706d26c115bcbf1056594c787d567e7912b350c6399403d936db01d80c84bd
MD5 13fa7a8e13daec12598f26f73a0f4195
BLAKE2b-256 266ff7c3a05aa078fe8121e4e7de7147f69e7cfcbd89331ec80f8cdc87b33935

See more details on using hashes here.

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