frankenstein checks for live URLs in a file, it can update links based on HTTP redirects in a README
This project uses
awesome_bot to validate links.
git clone https://github.com/dkhamsing/frankenstein.git cd frankenstein rake install
$ frankenstein https://fastlane.tools # URL $ frankenstein README.md # Path to file $ frankenstein ccgus/fmdb # GitHub repo README, https://github.com/ccgus/fmdb works too Found: master for ccgus/fmdb — A Cocoa / Objective-C wrapper around SQLite — 8935⭐️ — last updated today 🏃 Processing links for ccgus/fmdb ... 🔎 Checking 18 links ✅ https://www.zetetic.net/sqlcipher/ ✅ http://sqlite.org/ ✅ https://cocoapods.org/ ✅ https://github.com/marcoarment/FCModel ✅ https://github.com/layerhq/FMDBMigrationManager #... 🕐 Time elapsed: 4.07 seconds 🏃 No failures for ccgus/fmdb
✅ 200 ok 🔶 3xx redirect 🔴 4xx error ⚪ white list / other
Correct GitHub README Redirects
frankenstein can open a pull request to update README links based on HTTP redirects (this requires credentials set in .netrc).
$ frankenstein fastlane/sigh Finding default branch for fastlane/sigh Found: master for fastlane/sigh — Because you would rather spend your time building stuff than fighting provisioning — 864⭐️ — last updated 8 days ago 🏃 Processing links for https://raw.githubusercontent.com/fastlane/sigh/master/README.md ... 🔎 Checking 21 links 🔶 301 https://github.com/KrauseFx/fastlane 🔶 301 https://github.com/KrauseFx/deliver #... 🔶 10 redirects https://github.com/KrauseFx/fastlane redirects to https://github.com/fastlane/fastlane #... Next? (pull request | white list w=<s1^s2..> | gist | tweet [-h] [message] | enter to end) p Creating pull request on GitHub for fastlane/sigh ... Pull request created: https://github.com/fastlane/sigh/pull/195
URLs that are meant to be redirected (i.e. URL shortener, badge, authentication) are white listed and not corrected.
You can also white list links at the end of a run with option
$ frankenstein dkhamsing/forker Finding default branch for dkhamsing/forker Found: wip for dkhamsing/forker — Fork GitHub repos found on a page — 0⭐️ — last updated today 🏃 Processing links for dkhamsing/forker ... 🔎 Checking 10 links ✅ https://github.com/opensourceios #... 🔶 1 redirect http://gph.is/1768v38 redirects to http://giphy.com/gifs/loop-factory-how-its-made-n1JN4fSrXovJe #... 🕐 Time elapsed: 2.56 seconds 🏃 No failures for dkhamsing/forker Next? (pull request | white list w=<s1^s2..> | gist | tweet [-h] [message] | enter to end) w=gph #...
This project is available under the MIT license. See the LICENSE file for more info.