Skip to content

Instantly share code, notes, and snippets.

@demfabris
Created February 18, 2022 16:11
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save demfabris/e65c9b51f75dfdbe9db8b5fd702f2057 to your computer and use it in GitHub Desktop.
Save demfabris/e65c9b51f75dfdbe9db8b5fd702f2057 to your computer and use it in GitHub Desktop.

Gistit - Share user snippets

⚡️ Quick and easy code snippet sharing tool

Crates.io Crates.io

A feature packed, hash based code snippet sharing tool focused on ease of use and simplicity.

⭐ Features

send and fetch gif

  • TUI support - send and preview gistits without leaving the terminal. (uses bat) 🦇
  • Easy to use - command line API made for humans, shell completion and fancy spinners. 👨‍🎨
  • Open source - Independent web application and server, open source top to bottom.
  • Integrated - Integration with GitHub Gists.
  • Handy - system clipboard integration that actually works.
  • Peer to peer - peer to peer file sharing via libp2p. The network stach behind IPFS. 🌐

Feature requests

I want a feature

Windows support comming soon

CLI

Basic Usage

You can send a local file or stdin.

# Local file
$ gistit myfile.txt

# Stdin
$ ls | gistit

# Additional info
$ ls | gistit -a "Matthew McConaughey" -d "My ls, lol"

Post to GitHub Gists.

$ gistit myfile.txt --github
# A browser window will open to authorize Github OAuth.
# Hit **authorize** and wait for the CLI to resume automatically.

Copy hash to system clipboard.

$ gistit myfile.txt -c
# Hash is now on your clipboard

Fetching gistits

# Fetch and preview
$ gistit f 8765d324ddd800f1112e77fece3d3ff2

# Fetch and save to local data directory
$ gistit f 8765d324ddd800f1112e77fece3d3ff2 --save

P2p

Peer to peer file sharing is opt in. Simply install gistit-daemon and start the background process.

# Start
$ gistit node --start

# Check network status
$ gistit node --status

# Stop
$ gistit node --stop

If gistit-daemon is running sending and fetching gistits will be automatically done via IPFS network.

Installation

Compiled binaries

Check releases

With <my favorite package manager here>

  • AUR - Upcomming
  • You tell me

From crates.io

cargo install gistit gistit-daemon

From source (msrv 1.58)

# Clone
$ git clone https://github.com/fabricio7p/gistit.git

# Move
$ cd gistit

# Build
$ cargo build --release

Your binary will be inside target/release folder.

License

Licensed under either of MIT or Apache-2.0 at your option.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment