feat: add Wayback Machine / Internet Archive command (
wayback/archive) (#44)
- feat: add WaybackCommand for Internet Archive / Wayback Machine shortcuts
Agent-Logs-Url: https://github.com/facebook/bunnylol.rs/sessions/cd93bae3-3eba-4a6f-b6ef-72749cd56645
Co-authored-by: alichtman 20600565+alichtman@users.noreply.github.com
- fix: URL-encode query in WaybackCommand using build_path_url
Agent-Logs-Url: https://github.com/facebook/bunnylol.rs/sessions/cd93bae3-3eba-4a6f-b6ef-72749cd56645
Co-authored-by: alichtman 20600565+alichtman@users.noreply.github.com
- fix: sort wayback module alphabetically before whatsapp in mod.rs
Agent-Logs-Url: https://github.com/facebook/bunnylol.rs/sessions/f1556ced-1e88-412c-9f99-21f9fc3f15d1
Co-authored-by: alichtman 20600565+alichtman@users.noreply.github.com
Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com Co-authored-by: alichtman 20600565+alichtman@users.noreply.github.com
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802032778号
bunnylol.rs— Smart browser bookmarks with RustA modern rust clone of bunny1.
Demo
Enter
gh facebook/reactin your browser’s address bar to open the React repository on GitHub.Or run the CLI:
Installation
Install from crates.io:
Or build from source:
CLI Quickstart
Use
bunnylolto open URLs directly from your terminal!Basic Usage
Quick Examples
bunnylol ghbunnylol gh facebook/reactbunnylol ig reelsbunnylol tw @facebookbunnylol r r/rustbunnylol --dry-run meta aibunnylol --helpbunnylol --versionbunnylol listRecommended: Create a Shell Alias
For even faster access, add an alias to your shell configuration:
CLI Configuration
The bunnylol CLI supports optional configuration via a TOML file following the XDG Base Directory Specification.
Configuration File Location
Bunnylol uses different config file locations depending on how it’s run:
For CLI and manual server usage (
bunnylol serve):~/.config/bunnylol/config.toml(or$XDG_CONFIG_HOME/bunnylol/config.tomlif set)%APPDATA%\bunnylol\config.tomlFor system service (
sudo bunnylol service install):/etc/bunnylol/config.tomlThe config file is automatically created with sensible defaults when you first run bunnylol.
Configuration Features
The CLI works perfectly fine without any configuration file. However, you can customize the following features:
1. Default Browser Selection
Specify which browser to open URLs in:
If not specified, the system default browser is used.
2. Custom Command Aliases
Create your own personalized shortcuts:
Then use them like any built-in command:
3. Custom Default Search Engine
Override Google as the fallback search engine:
When a command isn’t recognized, it will search using your configured engine instead of Google.
4. Command History Tracking
Track your recently used commands (enabled by default):
History is stored at:
~/.local/share/bunnylol/history(or$XDG_DATA_HOME/bunnylol/historyif set)%APPDATA%\bunnylol\historyComplete Configuration Example
Here’s a full example with all available options:
Platform-Specific Directory Structure
The CLI uses platform-appropriate directories for configuration and data:
~/.config/bunnylol/config.toml(or
$XDG_CONFIG_HOME/bunnylol/config.toml)/etc/bunnylol/config.toml(when running as system service)
~/.local/share/bunnylol/(or
$XDG_DATA_HOME/bunnylol/)%APPDATA%\bunnylol\config.toml%APPDATA%\bunnylol\Quickstart - Web Server
After installing bunnylol, start the server:
Or use Docker:
Or build from source:
Installing as a System Service
For production use on Linux, install bunnylol as a
systemdservice that starts automatically on boot:Network Access:
--network(default): Binds to127.0.0.1(localhost only, secure default)--network: Binds to0.0.0.0(accessible from network, for production servers)The service installer works on:
systemd(Ubuntu 16.04+, Debian 8+, CentOS 7+, etc.)macOS and Windows: Use Docker instead (see above) or run
bunnylol servedirectly.For more details, see the Deployment Guide.
Open your web browser and navigate to
http://localhost:8000/?cmd=fbto get redirected to Facebook.Open
http://localhost:8000/?cmd=gh facebook/bunnylol.rsto be redirected to this repo.Setting
bunnylolto be your default search engineYou can set your default search engine to
http://localhost:8000/?cmd=%sand usebunnylol.rsfor everything. For this to work, you will need to have the server deployed and running locally or on a server.Note: For best results, deploy bunnylol on a networked server accessible from all your devices, rather than just running it locally.
Desktop Browsers
Mobile Browsers
Note: iOS Safari does not support custom search engines, so you’ll need to use Firefox (or another browser that does) instead.
iOS (Firefox)
Android (Firefox)
Command Reference
📚 Click to view all available commands (46 commands, 82+ bindings)
Development & Package Managers
ghgh facebook/reactgitlabglgitlab gitlab-org/gitlabcargocratescargo serdenpmnpmjsnpm reactpypipippypi requestsrubygemsgem,gemsgem railsgogolang,gopkggo httpnugetnuget newtonsoftpackagistcomposerpackagist symfonybrewhomebrewbrew wgetchocochocolateychoco gitdockerhubdockerdocker nginxProgramming Documentation
rustrust HashMappythonpydocs,pypython listnodenodejsnode fsgodocsgodocshackhack asyncmdnmdn flexboxstackoverflowsoso rust ownershipSocial Media
iginstagramig @instagramtwtw @MetaOpenSourcethreadsthreads @zuckfbfb Metalilinkedinli software engineerredditrr r/rustytyoutubestudio,subs)yt rust programmingwawhatsappwaGoogle Services
gg rust programminggmailmailmaildocsgdocdocsgsheetsgsheetsgslidesgslidesgchatgchatgmapsmapsgmaps san franciscoMeta / AI Services
metametaaimeta accountsclaudebilling,cost,artifacts,chats,projects)claude projectschatgptchatgptShopping & Finance
azamzn,azn,amazonaz headphonesreirei hiking bootsschwabbillpay,orders,trade,transfer,security,contact)schwab tradestockstocks,finance,lt;ticker>stock METAorstock finviz AAPLor$METAOther Services
1password1p,onepassword1psoundcloudsclikes)sc edmwikiwikipediawiki rust programmingddgduckduckgoddg rust programmingBunnylol Development Tools
bindingscommmands,list,bunny,cmd,cmds,helpbindingsSpecial Syntax
$→$AAPL@→tw @username@→ig @username@→threads @usernamer/prefix →r r/rustBuilt With
Getting Started
See the Installation section to install bunnylol from crates.io.
To build from source or contribute to the project, see Manual Setup below.
Manual Setup
Make sure you have Rust installed.
Deployment with Docker
Bunnylolis designed to be easy to deploy anywhere using Docker.The application will be running at
http://localhost:8000by default.Where to Deploy
Docker makes it easy to deploy anywhere:
For detailed deployment instructions, reverse proxy setup, and troubleshooting, see the Deployment Guide.
Contributing
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated. See
CONTRIBUTINGfor more information.License
Distributed under the MIT License. See
LICENSEfor more information.Acknowledgments