Confetti in your TTY

ConfeTTY

confetty.mov

Confetti (or fireworks) inside your terminal.

Installation

go install github.com/maaslalani/confetty

Usage

confetty
confetty fireworks

Press any key to cause more confetti / fireworks to appear. Ctrl-C or q to exit.

Why?

¯\_(ツ)_/¯

Comments
  • [IDEA] using │and ▄ to make the fireworks fly before exploding

    [IDEA] using │and ▄ to make the fireworks fly before exploding

    It would look like this:

    ▄ │ │ │ │ │ │ │ │ │ │ │ │ │

    it seems as though Github doesn't connect the lines, but the characters use up the full space so there would be no gaps

    I have a screenshot although I had to use Discord for filesharing example

  • integrate goreleaser and update readme with installation instructions

    integrate goreleaser and update readme with installation instructions

    Fixes #12

    Every time you tag a version, artifacts for mac, windows and linux get generated automagically :-)

    Things to do before merge for automated publish of automated taps homebrew taps

    • Create a new repository titled homebrew-tap in your account
    • Create a personal access token with push access
    • Configure it as a secret environment named GA_GORELEASER_TOKEN
    • More info https://goreleaser.com/customization/homebrew/
  • [Feature request] Publish binaries, brew packages, deb and rpm packages :-)

    [Feature request] Publish binaries, brew packages, deb and rpm packages :-)

    This will make is cool confetty highly accessible for everyone :-)

    I use goreleaser for all my go projects to acheive the same

    https://goreleaser.com/

    Example repo (my repo): https://github.com/kishaningithub/shopify-csv-download/releases

    Let me know if you are fine with this, i can work on a PR for the same :-)

  • Support Windows

    Support Windows

    Current implementation makes panic on Windows

    panic: The handle is invalid.
    
    goroutine 1 [running]:
    github.com/maaslalani/confetty/confetti.InitialModel()
    	C:/Users/mattn/go/src/github.com/maaslalani/confetty/confetti/confetti.go:65 +0xb2
    github.com/maaslalani/confetty/cmd.glob..func1(0x66d780?, {0x50bb18?, 0x0?, 0x0?})
    	C:/Users/mattn/go/src/github.com/maaslalani/confetty/cmd/root.go:19 +0x19
    github.com/spf13/cobra.(*Command).execute(0x66d780, {0xc000052220, 0x0, 0x0})
    	C:/Users/mattn/go/pkg/mod/github.com/spf13/[email protected]/command.go:856 +0x67c
    github.com/spf13/cobra.(*Command).ExecuteC(0x66d780)
    	C:/Users/mattn/go/pkg/mod/github.com/spf13/[email protected]/command.go:974 +0x3b4
    github.com/spf13/cobra.(*Command).Execute(...)
    	C:/Users/mattn/go/pkg/mod/github.com/spf13/[email protected]/command.go:902
    github.com/maaslalani/confetty/cmd.Execute()
    	C:/Users/mattn/go/src/github.com/maaslalani/confetty/cmd/root.go:50 +0x25
    main.main()
    	C:/Users/mattn/go/src/github.com/maaslalani/confetty/main.go:8 +0x17
    

    Since the term.GetSize(0) this 0 is not correct value of standard output handle on Windows.

    Changes Introduced

    This change fixes to pass the correct stdout handle.

    screenshot

  • Remove custom physics package in favour of harmonica

    Remove custom physics package in favour of harmonica

    charmbracelet/harmonica now has 2D + 3D projectile motion https://github.com/charmbracelet/harmonica/pull/6

    This allows us to remove the physics package in confetty and solely rely on harmonica for the physics code.

  • [Feature] Moving starting point (e.g. using arrow keys)

    [Feature] Moving starting point (e.g. using arrow keys)

    I was just a bit confused when I found out that pressing any key casts a new confetti, but pressing arrow keys doesn't do anything different from any other key.

    I'd intuitively expect arrow keys to move the confettis in any direction. Or at least left/right, which would be even more expectable from fireworks since they're launched from bottom to top. By the way, moving fireworks horizontally "mid-air" just sounds dynamic and cool.

    I have not tried to implement this myself (yet?), but since fireworks are launched from a random point that is (!) available on the screen, and the confettis are centered relative to the screen, I take it as not too hard of a task.

    P.S. The confettis remind me of cmatrix

Are you programming and suddenly your stomach is rumbling? No problem, order your Ifood without leaving your favorite text editor ❤️

vim-ifood Você ta programando e de repente bateu aquela fome? Sem problemas, peça seu Ifood sem sair do seu editor de texto favorito ❤️ Are you progra

Jun 2, 2022
Display a message in morse code on your capslock LED, keyboard backlight or using your screen brightness!
Display a message in morse code on your capslock LED, keyboard backlight or using your screen brightness!

halp halp is a command line utility that lets you display messages in morse code on your capslock LED, keyboard backlight (if you have it) or using yo

Jan 26, 2022
Lightweight CLI tool to programmatically rescale your Hetzner virtual server daily to optimize your budget spending

Lightweight CLI tool to programmatically rescale your Hetzner virtual server daily to optimize your budget spending

Nov 28, 2022
A command line tool that builds and (re)starts your web application everytime you save a Go or template fileA command line tool that builds and (re)starts your web application everytime you save a Go or template file

# Fresh Fresh is a command line tool that builds and (re)starts your web application everytime you save a Go or template file. If the web framework yo

Nov 22, 2021
Watch your favourite anime using the video player of your choice directly from the command line

anime-cli Watch your favourite anime using the video player of your choice direc

Feb 10, 2022
Pi-fetch - get a summary of your pi-hole stats from your terminal

pi-fetch get a summary of your pi-hole stats from your terminal _ ___ _ _ ___|_|___| _|___| |_ ___| |_ | . | |___| _| -_| _

Jan 9, 2022
A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem
A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem

COMMIT CLI A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem. And yes, it is bui

Feb 9, 2022
Allows you to use the magic remote on your webOS LG TV as a keyboard/mouse for your Linux machine

magic4linux Allows you to use the magic remote on your webOS LG TV as a keyboard/mouse for your PC Linux machine. This is a Linux implementation of th

Nov 25, 2022
JOB, make your short-term command as a long-term job. 将命令行规划成任务的工具

job make your short-term command as a long-term job Install Shell Install (Linux & MacOS) # binary will be $(go env GOPATH)/bin/job $: curl -sfL https

Nov 12, 2022
Make Highly Customized Boxes for your CLI
Make Highly Customized Boxes for your CLI

Box CLI Maker ?? Box CLI Maker is a Highly Customized Terminal Box Creator. Features Make Terminal Box in 8️⃣ inbuilt different styles 16 Inbuilt Colo

Jan 1, 2023
Manage your gists from the command-line.
Manage your gists from the command-line.

Gister Manage your gists from the command-line. You can even manage your gists using your favorite editor. Demo Create a github access token https://h

Nov 28, 2022
Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration
Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration

TerraCognita Imports your current Cloud infrastructure to an Infrastructure As Code Terraform configuration (HCL) or/and to a Terraform State. At Cycl

Dec 30, 2022
gomerge is a tool to quickly bulk merge several pull requests from your terminal.
gomerge is a tool to quickly bulk merge several pull requests from your terminal.

Gomerge is a tool to quickly enable you to bulk merge Github pull requests from your terminal. The intention of this tool is to simplfy, and eventually automate the merging of github pull requests. This tool should be able to run on most systems.

Dec 28, 2022
A CLI Tool to easily generate your Terraform configuration

Tf Tf is a command line tool to easily generate your Terraform configuration with an interactive prompt. Inspiration Boredom in Covid-19 Installation

Sep 30, 2022
YouTube client on your terminal

MeowTube YouTube client on your terminal Table of Contents About Getting Started Usage Contributing About MeowTube is a CLI (Command Line Interface) t

Jul 29, 2022
🎄 A Christmas tree right from your terminal!
🎄 A Christmas tree right from your terminal!

ctree ?? A Christmas tree right from your terminal! ?? Demo ⌛ No Refresh Don't want the tree to refresh every 2 seconds? Easy! Just add the --no-refre

Dec 20, 2022
❓🖼 Find the anime scene by image using your terminal
❓🖼 Find the anime scene by image using your terminal

What Anime CLI ❓ ?? > This application is basically a ?? wrapper around trace.moe PREVIEW Usage ?? Get Anime By Image File ?? what-anime file anime.jp

Jan 2, 2023
Pi-hole data right from your terminal. Live updating view, query history extraction and more!
Pi-hole data right from your terminal. Live updating view, query history extraction and more!

Pi-CLI Pi-CLI is a command line program used to view data from a Pi-Hole instance directly in your terminal.

Dec 12, 2022
A simple way of sending messages from the CLI output to your Discord channel with webhook.
A simple way of sending messages from the CLI output to your Discord channel with webhook.

discat A simple way of sending messages from the CLI output to your Discord channel with webhook. Actually, this is a fork version of slackcat that I

Nov 15, 2022