linker-cli

Crates.iolinker-cli
lib.rslinker-cli
version1.0.1
created_at2025-05-12 10:48:55.510141+00
updated_at2025-07-06 19:40:08.446497+00
descriptionLink manager from the terminal
homepagehttps://github.com/ChristianRegueiro/linker
repositoryhttps://github.com/ChristianRegueiro/linker
max_upload_size
id1670398
size51,642
Christian Regueiro (ChristianRegueiro)

documentation

README

🔗 linker

A terminal-based personal link manager written in Rust. Save links with tags, search them easily, and open them directly from the command line.

Crates.io

Buy Me a Coffee

🚀 Installation

Using yay

yay -S linker-cli

Using Cargo (recommended)

cargo install linker-cli

Make sure ~/.cargo/bin is in your $PATH.

Manual Build

git clone https://github.com/ChristianRegueiro/linker.git
cd linker
cargo build --release
./target/release/linker

🧰 Available Commands

linker-cli add <TITLE> <URL> --tags tag1,tag2 --description "Optional description"
linker-cli list
linker-cli search <TEXT>
linker-cli open <ID or TITLE>
linker-cli edit <ID or TITLE>
linker-cli remove <ID>

📦 Examples

Add a link

linker-cli add "Rust Docs" https://doc.rust-lang.org --tags rust,docs --description "Official Rust documentation"

List all saved links

linker-cli list

Search by text (title, URL, or tags)

linker-cli search rust

Open a link in the browser

linker-cli open 1
linker-cli open rust

Remove a link

linker-cli remove 1

Edit a link

linker-cli edit 1

📂 Storage

Links are stored locally in:

~/.linker/links.json

Simple JSON format. No external database required.


🛠 Key Dependencies

  • clap: CLI argument parser
  • serde: JSON serialization
  • colored: color output
  • open: open URLs in the browser
  • chrono: date and time handling
  • dirs: cross-platform user directories

📜 License

MIT © Christian Regueiro

Commit count: 24

cargo fmt