{"id":13930183,"url":"https://github.com/marirs/urlexpand","last_synced_at":"2025-04-23T23:44:26.378Z","repository":{"id":38248130,"uuid":"358467888","full_name":"marirs/urlexpand","owner":"marirs","description":"Expand / Unshorten an exhaustive list of Shortened URL's","archived":false,"fork":false,"pushed_at":"2024-02-17T09:27:25.000Z","size":64,"stargazers_count":18,"open_issues_count":1,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-18T08:39:36.774Z","etag":null,"topics":["link-expander","rust","rust-crate","rust-lang","rust-library","tiny","unshort-url","unshorten","url-expander"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marirs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2021-04-16T03:47:13.000Z","updated_at":"2024-09-21T06:26:47.000Z","dependencies_parsed_at":"2025-04-17T19:51:32.049Z","dependency_job_id":"99bad056-4059-44ba-9ba1-0068bcd01ed7","html_url":"https://github.com/marirs/urlexpand","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marirs%2Furlexpand","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marirs%2Furlexpand/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marirs%2Furlexpand/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marirs%2Furlexpand/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marirs","download_url":"https://codeload.github.com/marirs/urlexpand/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250535055,"owners_count":21446504,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["link-expander","rust","rust-crate","rust-lang","rust-library","tiny","unshort-url","unshorten","url-expander"],"created_at":"2024-08-07T18:05:04.173Z","updated_at":"2025-04-23T23:44:25.953Z","avatar_url":"https://github.com/marirs.png","language":"Rust","funding_links":[],"categories":["rust"],"sub_categories":[],"readme":"URLEXPAND\n==========\n![Crates.io](https://img.shields.io/crates/v/urlexpand)\n[![Documentation](https://docs.rs/urlexpand/badge.svg)](https://docs.rs/urlexpand)\n[![Build Status](https://travis-ci.com/marirs/urlexpand.svg?branch=main)](https://travis-ci.com/marirs/urlexpand)\n[![GitHub license](https://img.shields.io/github/license/marirs/urlexpand)](https://github.com/marirs/urlexpand/blob/main/LICENSE)\n\nExpand / Unshorten an exhaustive list of Shortened URL's.\n\n### Example Usage\n\n- async\n```toml\nurlexpand = \"0.2.3\"\n```\n\nand then\n\n```rust\nuse std::time::Duration;\nuse urlexpand::unshorten;\n\nfn main() {\n    let url = \"https://bit.ly/3alqLKi\";\n    assert!(unshorten(url, Some(Duration::from_secs(10))).await.is_ok());   // with timeout\n    assert!(unshorten(url, None).await.is_ok());    // without timeout\n}\n```\n\n- blocking\n```toml\nurlexpand = { version = \"0.2.0\", features = [\"blocking\"] }\n```\n\nand then\n\n```rust\nuse std::time::Duration;\nuse urlexpand::unshorten;\n\nfn main() {\n    let url = \"https://bit.ly/3alqLKi\";\n    assert!(unshorten_blocking(url, Some(Duration::from_secs(10))).is_ok());   // with timeout\n    assert!(unshorten_blocking(url, None).is_ok());    // without timeout\n}\n```\n\n### Running the example\n\n```bash\ncargo run --example unshorten https://bit.ly/3alqLKi\n```\n\n### Current list of URL Shortening services supported\n- `adf.ly` - Adfly\n- `adfoc.us` - AdFocus  \n- `amzn.to` - Amazon  \n- `atominik.com` - part of Adf.ly \n- `ay.gy` -   part of Adf.ly\n- `b.link` - BLINK\n- `bhpho.to` - BH Photo \u0026 Video\n- `bit.ly` - Bitly Url Shortner\n- `bit.do` - Bitdo\n- `bn.gy` - BNGY  \n- `branch.io` - Branch.io  \n- `buff.ly` - Buffer URL Shortner\n- `ceesty.com` - part of sh.st  \n- `chollo.to` - Chollo Ecommerce\n- `cli.re` - Capsulink\n- `cli.fm` - Capsulink  \n- `cutt.ly` - Cuttly\n- `cutt.us` - Cutt us  \n- `db.tt` - Dropbox  \n- `f.ls` - Free Link Shortener\n- `fa.by` - part of rebrand.ly\n- `fb.me` - Facebook  \n- `flip.it` - Flipboard  \n- `fumacrom.com` - part of Adf.ly\n- `git.io` - Github  \n- `geni.us` - Genius Link\n- `goo.gl` - Google Service has now stopped their url shortening service \n- `gns.io` - part of trim (tr.im)\n- `hmm.rs` - HMM.RS  \n- `ht.ly` - part of Hootsuite  \n- `hyperurl.co` - SmartUrl.It  \n- `ity.im` - ity.im (it'-ee-i-am)\n- `intamema.com` part of Adf.ly  \n- `is.gd` - IS GD\n- `j.gs` - part of Adf.ly\n- `j.mp` - part of Bitly  \n- `kutt.it` - Kutt\n- `ldn.im` - part of trim (tr.im)\n- `linklyhq.com` - Linkly HQ\n- `microify.com` - part of Adf.ly\n- `mzl.la` - Mozilla Org  \n- `nmc.sg` - instra corporation pty\n- `nowlinks.net` - Now Links  \n- `ow.ly` - part of Hootsuite  \n- `prf.hn` -  Partnerize\n- `plu.sh` - Plush  \n- `q.gs` - part of Adfly  \n- `qr.ae` - Quora  \n- `qr.net` - QR Code URL shortner \u0026 generator  \n- `rebrand.ly` - Rebrandly\n- `rb.gy` - RBGY Free URL Shortner  \n- `rlu.ru` - RLU.RU  \n- `rotf.lol` - part of tinyurl.com\n- `s.coop` - SCOOP  \n- `s.id` - SID (home.s.id)  \n- `sh.st` - shorte.st\n- `soo.gd` - Soo.Gd  \n- `shortcm.xyz` - part of SHORT.IO  \n- `short.gy` - SHORT.IO Service\n- `shortcm.xyz` - ShortCm\n- `shorturl.at` - ShortURL At  \n- `smu.sg` - Singapore Management University  \n- `smq.tc` - part of bit.ly  \n- `snip.ly` - Sniply.io  \n- `snipr.com`\n- `snipurl.com`\n- `snurl.com`\n- `split.to` - Linksplit  \n- `surl.li` - Hyperhost (Secom.com.ua)\n- `t.co` - Twitter\n- `t.ly` - T.LY Link Shortener  \n- `t2m.io` - T2M aka \"Text to Marketing\" (t2mio.com)\n- `tiny.cc` - TinyCC\n- `tiny.pl` - TinyPL  \n- `tinyium.com` - part of Adf.ly  \n- `tinyurl.com` - TinyURL\n- `tiny.one` - part of tinyurl.com\n- `tny.im` - TNY.IM  \n- `tny.sh` - Linksplit  \n- `tr.im` - trim (tr.im) by RedLotus\n- `trib.al` - Tribal links shortner  \n- `u.to` - U TO  \n- `v.gd` - V GD  \n- `virg.in` - Virgin  \n- `vzturl.com` - Vzt URL  \n- `waa.ai` - Akari Link Shortner  \n- `washex.am` - part of bit.ly  \n- `x.co` - GoDaddy URL Shortner (currently shutdown)  \n- `y2u.be` - YouTube URL Shortner by Firewrench inc.  \n- `yourwish.es` - Your Wishes  \n- `zpr.io` - Zapier\n\n### Contribution\n\nPlease feel free to contribute by making pull requests or even bug fixes.  \nThanks in advance.\n\n---\nLicense: MIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarirs%2Furlexpand","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarirs%2Furlexpand","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarirs%2Furlexpand/lists"}