diff --git a/.yaspeller.json b/.yaspeller.json
index d9a94bd3..f032190a 100644
--- a/.yaspeller.json
+++ b/.yaspeller.json
@@ -58,6 +58,8 @@
"gulpjs",
"Gómez",
"https",
+ "instagram",
+ "Instagram",
"iOS",
"iranzo",
"Jinja",
diff --git a/documentation/content/Components/photoswipe-instagram-gallery.md b/documentation/content/Components/photoswipe-instagram-gallery.md
new file mode 100644
index 00000000..85f04d0f
--- /dev/null
+++ b/documentation/content/Components/photoswipe-instagram-gallery.md
@@ -0,0 +1,61 @@
+---
+Title: Gallery -- Embed Instagram Post
+authors: Talha Mansoor, Pablo Iranzo Gómez
+Tags: nuances, images, gallery, instagram
+Date: 2020-02-07 13:17
+Slug: gallery-embed-instagram-post
+Category: Components
+---
+
+Pelican-Elegant has built in support for Instagram post.
+
+## Article contents
+
+To embed Instagram post, just define a div in this manner,
+
+```html
+
+```
+
+`
` class should be `elegant-instagram`.
+
+Value of `data-instagram-id` attribute is taken from Instagram post URL, for example:
+
+If URL is then set `data-instagram-id` to `OzF8OwS43q`.
+
+Instagram URL can be a single or multiple pictures post.
+
+Here is how Elegant will render your Instagram posts.
+
+## A Post With Multiple Images
+
+
+
+It's code is
+
+```html
+
+```
+
+## Single Image Post
+
+
+
+It's code is
+
+```html
+
+```
+
+## A combined single + multiple post
+
+
+
+It's code is
+
+```html
+
+```
diff --git a/gulpfile.babel.js b/gulpfile.babel.js
index 1a4315d5..b4c84ab7 100644
--- a/gulpfile.babel.js
+++ b/gulpfile.babel.js
@@ -94,6 +94,7 @@ const minifyJS = () => {
"static/photoswipe/photoswipe-array-from-dom.js",
"static/lunr/lunr.js",
"static/clipboard/clipboard.js",
+ "static/js/create-instagram-gallery.js",
"static/js/copy-to-clipboard.js",
"static/js/lunr-search-result.js",
"!static/js/elegant.prod.9e9d5ce754.js"
diff --git a/static/js/create-instagram-gallery.js b/static/js/create-instagram-gallery.js
new file mode 100644
index 00000000..73c3bc74
--- /dev/null
+++ b/static/js/create-instagram-gallery.js
@@ -0,0 +1,115 @@
+const convertInstagramToPhotoSwipe = () => {
+ // inner function to return figure html
+ const getFigureHTML = (
+ image,
+ height,
+ width,
+ thumbnail,
+ username,
+ name,
+ instagramId
+ ) => `
+
+ `;
+
+ // Get div.elegant-instagram
+ document.querySelectorAll(".elegant-instagram").forEach(ele => {
+ // Get instagram-id
+ const instagramIds = ele.dataset.instagramId;
+ let divHTML = `
`;r.insertAdjacentHTML("beforeend",t)}}return!1}function getQueryVariable(e){for(var t=window.location.search.substring(1).split("&"),n=0;n{e.trigger.innerText=copyToClipboardSuccessText.innerText,e.trigger.setAttribute("aria-label",copyToClipboardSuccessText.ariaLabel),e.clearSelection(),setTimeout(()=>{e.trigger.innerText=copyToClipboardDefaultText.innerText,e.trigger.setAttribute("aria-label",copyToClipboardDefaultText.ariaLabel)},400)});var searchTerm=getQueryVariable("q");searchTerm&&lunr_search(searchTerm);
\ No newline at end of file