28 releases
new 0.0.53 | Mar 3, 2025 |
---|---|
0.0.52 | Mar 3, 2025 |
0.0.47 | Feb 28, 2025 |
#1174 in Web programming
1,638 downloads per month
36KB
884 lines
Tempesta
The fastest and lightest bookmark manager CLI writte in Rust.
[Heavily inspired by pass
]
Bookmark management should be simple and follow Unix philosophy.
With Tempesta all bookmarks live in ~/.bookmark-store
, and tempesta
provides
some intuitive commands for adding, updating, editing and open URLs.
It can also track all the changes using git
.
How to use it
Add a bookmark
tempesta add <url> <local-path>
tempesta add "http://google.com/" search-engines/google
Update a bookmark
tempesta update <local-path> <url>
tempesta update search-engines/google "https://google.com"
Edit a bookmark in your editor (it check $EDITOR variable)
tempesta edit <local-path>
tempesta edit search-engines/google
Open the URL in the browser
tempesta open <local-path>
tempesta open search-engines/google
Remove a bookmark
tempesta remove <local-path>
tempesta remove search-engines/google
Shortcut
You can use the initial of the methods instead of their full identifier:
[a]dd -- Add a new bookmark
[e]dit -- Edit an existing bookmark
[o]pen -- Open a bookmark
[r]emove -- Remove a bookmark
[u]pdate -- Update an existing bookmark
For example
tempesta o search-engines/google
tempesta r search-engines/google
Install
MacOS (Homebrew)
brew install x71c9/x71c9/tempesta
Arch Linux (AUR)
yay -S tempesta
Download binaries
Download the latest compatible binaries for your system and architecture: https://github.com/x71c9/tempesta/releases/latest
Build from source
Install Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
After installation, ensure your environment is updated (or restart your terminal) so that the cargo and rustc commands are in your PATH.
git clone https://github.com/x71c9/tempesta
cd tempesta
cargo build --release
./target/release/tempesta
If you want to install the CLI tool so that it’s available in your PATH, you can use in the repo directory:
cargo install --path .
Alias
ZSH Alias
Most likely you will alias the command with
alias t='tempesta'
In order to make completion in bash to work with alias you can add the following:
complete -o default -o nospace -F _tempesta t
where the final t
is the name of the alias.
Bash Alias
Autocompletion do not work for bash alias but works when using functions, therefore is recommended to use a function instead, for example:
t() {
tempesta "$@"
}
complete -o default -o nospace -F _tempesta t
FZF
If fzf
is installed on your system and the
the method open
is called without arguments:
tempesta open
it will start a fuzzy find of the bookmark.
A usefull alias can be made for this:
alias to='tempesta o'
Dependencies
~4–15MB
~179K SLoC