I started with this tweet by @seanallen where he added a URL into a YouTube video description.
The URL became compromised within the week of adding it, and his channel was flagged with strike 1.
I realised there isn't anything out there to prevent this from happening to anyone's repository.
-
Install the module from
npm
# locally npm i @markbattistella/markdown-safe-link # globally npm i @markbattistella/markdown-safe-link -g
-
Run it from your terminal
markdown-safe-link \ --api="<YOUR_API_KEY_HERE>" \ --dir="~/projects/my-docs/" \ --replace="~~UNSAFE~~"
If you want to use this as part of your repository there is also an action you can use.
You need to get your own API for Google Safe Browsing as there are limits to the number of calls made.
Name | Description |
---|---|
dir |
The directory to scan md files |
api |
Google API for scanning URLs |
replace |
What to replace the URLs with |
proxy |
Are you behind a proxy server |
url |
Proxy url address or IP address |
port |
Proxy port number |
username |
Username if your proxy has auth |
password |
Password if your proxy has auth |
dry |
Don't actually re-write files |
help |
Display the help screen |
markdown-safe-link \
--api="<YOUR_API_KEY_HERE>" \
--dir="~/projects/my-docs/" \
--replace="~~UNSAFE~~" \
--proxy \
--url="127.0.0.1" \
--port="3128" \
--username="jdoe" \
--password="MyPassword" \
--dry
-
Clone the repo:
git clone https://github.com/markbattistella/markdown-safe-link.git
-
Create your feature branch:
git checkout -b my-feature
-
Commit your changes:
git commit -am 'Add some feature'
-
Push
to the branch:git push origin my-new-feature
-
Submit the
pull
request