Add videos to your markdown files easier - https://video-to-markdown.netlify.com.
How often did you find yourself googling ¨How to embed a video in markdown?¨
While its not possible to embed a video in markdown, the best and easiest way is to extract a frame from the video, add a layer with a play icon and link the video url on the image.
Speaking HTMLese, this is what you would do:
<a href="{video-url}" title="Link Title"><img src="{image-url}" alt="Alternate Text" /></a>
that translates into markdown as:
[![Alternate Text]({image-url})]({video-url} "Link Title")
To speed up the process I developped this tool that will do it for you.
You just need to paste the video url in the field above and you will get the markdown you need.
List of supported video providers:
- Youtube
- Facebook (low-quality)
- Dailymotion
- Vimeo
- Asciinema
- Google Drive
- Loom
- Wistia
- Streamable
First of all you need to create a Cloudinary account (I'm using this service to generate and host images) so that you can copy your personal CLOUDINARY_URL
from your dashboard. The url is something similar to cloudinary://my_key:my_secret@my_cloud_name
.
Now you can easily deploy your own copy on Netlify.
To run the project locally, here’s what you’ll need:
- Cloudinary account
- Node.js 10 or greater
cd
into your local copy of the repository and run npm install
cd video-to-markdown
npm install
npm start
This will start the client server on http://localhost:8080, and the netlify-lambda server on http://localhost:8081.
netlify-lambda isn’t required to deploy Lambda functions to Netlify, but it offers some handy features out of the box that make it quicker to get started, like the local dev server and nice defaults for transpiling and bundling functions in production.
The client server is configured to proxy /.netlify
requests to the Lambda server (see webpack.client.js). This is the same behavior the site has when it’s deployed to Netlify.
Google Analytics is used to record the following:
- Basic visit data.
referer
orvideo url
to track api usage.
All images are generated via Cloudinary and stored in it. In this way the generated images are cached so we can avoid to call Netlify functions again thus reducing the quota consumption.
By clicking on convert to markdown
or consuming api you accept this terms & condition; no additional data is sent to the server.