A feature packed, hash based code
snippet sharing tool focused on ease of use and simplicity.
- 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. 🌐
Windows support comming soon
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
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.
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.
Licensed under either of MIT or Apache-2.0 at your option.