diff options
Diffstat (limited to 'posts')
-rw-r--r-- | posts/2020-12-1-HTML-JS-RSS-Feed/index.html | 196 | ||||
-rw-r--r-- | posts/index.html | 2 |
2 files changed, 197 insertions, 1 deletions
diff --git a/posts/2020-12-1-HTML-JS-RSS-Feed/index.html b/posts/2020-12-1-HTML-JS-RSS-Feed/index.html new file mode 100644 index 0000000..14f9a0d --- /dev/null +++ b/posts/2020-12-1-HTML-JS-RSS-Feed/index.html @@ -0,0 +1,196 @@ +<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"/><meta name="og:site_name" content="Navan Chauhan"/><link rel="canonical" href="https://navanchauhan.github.io/posts/2020-12-1-HTML-JS-RSS-Feed"/><meta name="twitter:url" content="https://navanchauhan.github.io/posts/2020-12-1-HTML-JS-RSS-Feed"/><meta name="og:url" content="https://navanchauhan.github.io/posts/2020-12-1-HTML-JS-RSS-Feed"/><title>RSS Feed written in HTML + JavaScript | Navan Chauhan</title><meta name="twitter:title" content="RSS Feed written in HTML + JavaScript | Navan Chauhan"/><meta name="og:title" content="RSS Feed written in HTML + JavaScript | Navan Chauhan"/><meta name="description" content="Short code-snippet for an RSS feed, written in HTML and JavaScript"/><meta name="twitter:description" content="Short code-snippet for an RSS feed, written in HTML and JavaScript"/><meta name="og:description" content="Short code-snippet for an RSS feed, written in HTML and JavaScript"/><meta name="twitter:card" content="summary"/><link rel="stylesheet" href="/styles.css" type="text/css"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><link rel="shortcut icon" href="/images/favicon.png" type="image/png"/><link rel="alternate" href="/feed.rss" type="application/rss+xml" title="Subscribe to Navan Chauhan"/><meta name="twitter:image" content="https://navanchauhan.github.io/images/logo.png"/><meta name="og:image" content="https://navanchauhan.github.io/images/logo.png"/></head><head><script async src="//gc.zgo.at/count.js" data-goatcounter="https://navanchauhan.goatcounter.com/count"></script></head><body class="item-page"><header><div class="wrapper"><a class="site-name" href="/">Navan Chauhan</a><nav><ul><li><a href="/about">About Me</a></li><li><a class="selected" href="/posts">Posts</a></li><li><a href="/publications">Publications</a></li><li><a href="/assets/résumé.pdf">Résumé</a></li><li><a href="https://navanchauhan.github.io/repo">Repo</a></li></ul></nav></div></header><div class="wrapper"><article><div class="content"><span class="reading-time">5 minute read</span><span class="reading-time">Created on December 1, 2020</span><h1>RSS Feed written in HTML + JavaScript</h1><p>If you want to directly open the HTML file in your browser after saving, don't forget to set <code>CORS_PROXY=""</code></p><pre><code><div class="highlight"><span></span><span class="cp"><!doctype html></span> +<span class="p"><</span><span class="nt">html</span> <span class="na">lang</span><span class="o">=</span><span class="s">"en"</span><span class="p">></span> +<span class="p"><</span><span class="nt">head</span><span class="p">></span> + <span class="p"><</span><span class="nt">meta</span> <span class="na">charset</span><span class="o">=</span><span class="s">"utf-8"</span><span class="p">></span> + <span class="p"><</span><span class="nt">meta</span> <span class="na">name</span><span class="o">=</span><span class="s">"viewport"</span> <span class="na">content</span><span class="o">=</span><span class="s">"width=device-width, initial-scale=1"</span><span class="p">></span> + <span class="p"><</span><span class="nt">title</span><span class="p">></span> + RSS Feed + <span class="p"></</span><span class="nt">title</span><span class="p">></span> + <span class="p"><</span><span class="nt">link</span> <span class="na">rel</span><span class="o">=</span><span class="s">"stylesheet"</span> <span class="na">href</span><span class="o">=</span><span class="s">"https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"</span> <span class="na">integrity</span><span class="o">=</span><span class="s">"sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO"</span> <span class="na">crossorigin</span><span class="o">=</span><span class="s">"anonymous"</span><span class="p">></span> +<span class="p"></</span><span class="nt">head</span><span class="p">></span> +<span class="p"><</span><span class="nt">body</span><span class="p">></span> + +<span class="p"><</span><span class="nt">h1</span> <span class="na">align</span><span class="o">=</span><span class="s">"center"</span> <span class="na">class</span><span class="o">=</span><span class="s">"display-1"</span><span class="p">></span>RSS Feed<span class="p"></</span><span class="nt">h1</span><span class="p">></span> +<span class="p"><</span><span class="nt">main</span><span class="p">></span> + <span class="p"><</span><span class="nt">div</span> <span class="na">class</span><span class="o">=</span><span class="s">"container"</span><span class="p">></span> + <span class="p"><</span><span class="nt">div</span> <span class="na">class</span><span class="o">=</span><span class="s">"list-group pb-4"</span> <span class="na">id</span><span class="o">=</span><span class="s">"contents"</span><span class="p">></</span><span class="nt">div</span><span class="p">></span> +<span class="p"><</span><span class="nt">div</span> <span class="na">id</span><span class="o">=</span><span class="s">"feed"</span><span class="p">></span> +<span class="p"></</span><span class="nt">div</span><span class="p">></</span><span class="nt">div</span><span class="p">></span> +<span class="p"></</span><span class="nt">main</span><span class="p">></span> + +<span class="p"><</span><span class="nt">script</span> <span class="na">src</span><span class="o">=</span><span class="s">"https://gitcdn.xyz/repo/rbren/rss-parser/master/dist/rss-parser.js"</span><span class="p">></</span><span class="nt">script</span><span class="p">></span> +<span class="p"><</span><span class="nt">script</span><span class="p">></span> + +<span class="kr">const</span> <span class="nx">feeds</span> <span class="o">=</span> <span class="p">{</span> + <span class="s2">"BuzzFeed - India"</span><span class="o">:</span> <span class="p">{</span> + <span class="s2">"link"</span><span class="o">:</span><span class="s2">"https://www.buzzfeed.com/in.xml"</span><span class="p">,</span> + <span class="s2">"summary"</span><span class="o">:</span><span class="kc">true</span> + <span class="p">},</span> + <span class="s2">"New Yorker"</span><span class="o">:</span> <span class="p">{</span> + <span class="s2">"link"</span><span class="o">:</span><span class="s2">"http://www.newyorker.com/feed/news"</span><span class="p">,</span> + <span class="p">},</span> + <span class="s2">"Vox"</span><span class="o">:</span><span class="p">{</span> + <span class="s2">"link"</span><span class="o">:</span><span class="s2">"https://www.vox.com/rss/index.xml"</span><span class="p">,</span> + <span class="s2">"limit"</span><span class="o">:</span> <span class="mf">3</span> + <span class="p">},</span> + <span class="s2">"r/Jokes"</span><span class="o">:</span><span class="p">{</span> + <span class="s2">"link"</span><span class="o">:</span><span class="s2">"https://reddit.com/r/Jokes/hot/.rss?sort=hot"</span><span class="p">,</span> + <span class="s2">"ignore"</span><span class="o">:</span> <span class="p">[</span><span class="s2">"repost"</span><span class="p">,</span><span class="s2">"discord"</span><span class="p">]</span> + <span class="p">}</span> +<span class="p">}</span> + +<span class="kr">const</span> <span class="nx">config_extra</span> <span class="o">=</span> <span class="p">{</span> +<span class="s2">"Responsive-Images"</span><span class="o">:</span> <span class="kc">true</span><span class="p">,</span> +<span class="s2">"direct-link"</span><span class="o">:</span> <span class="kc">false</span><span class="p">,</span> +<span class="s2">"show-date"</span><span class="o">:</span><span class="kc">false</span><span class="p">,</span> +<span class="s2">"left-column"</span><span class="o">:</span><span class="kc">false</span><span class="p">,</span> +<span class="s2">"defaults"</span><span class="o">:</span> <span class="p">{</span> + <span class="s2">"limit"</span><span class="o">:</span> <span class="mf">5</span><span class="p">,</span> + <span class="s2">"summary"</span><span class="o">:</span> <span class="kc">true</span> +<span class="p">}</span> +<span class="p">}</span> + +<span class="kr">const</span> <span class="nx">CORS_PROXY</span> <span class="o">=</span> <span class="s2">"https://cors-anywhere.herokuapp.com/"</span> + +<span class="kd">var</span> <span class="nx">contents_title</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"h2"</span><span class="p">)</span> +<span class="nx">contents_title</span><span class="p">.</span><span class="nx">textContent</span> <span class="o">=</span> <span class="s2">"Contents"</span> +<span class="nx">contents_title</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"pb-1"</span><span class="p">)</span> +<span class="nb">document</span><span class="p">.</span><span class="nx">getElementById</span><span class="p">(</span><span class="s2">"contents"</span><span class="p">).</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">contents_title</span><span class="p">)</span> + +<span class="nx">async</span> <span class="kd">function</span> <span class="nx">myfunc</span><span class="p">(</span><span class="nx">key</span><span class="p">){</span> + + <span class="kd">var</span> <span class="nx">count_lim</span> <span class="o">=</span> <span class="nx">feeds</span><span class="p">[</span><span class="nx">key</span><span class="p">][</span><span class="s2">"limit"</span><span class="p">]</span> + <span class="kd">var</span> <span class="nx">count_lim</span> <span class="o">=</span> <span class="p">(</span><span class="nx">count_lim</span> <span class="o">===</span> <span class="kc">undefined</span><span class="p">)</span> <span class="o">?</span> <span class="nx">config_extra</span><span class="p">[</span><span class="s2">"defaults"</span><span class="p">][</span><span class="s2">"limit"</span><span class="p">]</span> <span class="o">:</span> <span class="nx">count_lim</span> + + <span class="kd">var</span> <span class="nx">show_summary</span> <span class="o">=</span> <span class="nx">feeds</span><span class="p">[</span><span class="nx">key</span><span class="p">][</span><span class="s2">"summary"</span><span class="p">]</span> + <span class="kd">var</span> <span class="nx">show_summary</span> <span class="o">=</span> <span class="p">(</span><span class="nx">show_summary</span> <span class="o">===</span> <span class="kc">undefined</span><span class="p">)</span> <span class="o">?</span> <span class="nx">config_extra</span><span class="p">[</span><span class="s2">"defaults"</span><span class="p">][</span><span class="s2">"summary"</span><span class="p">]</span> <span class="o">:</span> <span class="nx">show_summary</span> + + <span class="kd">var</span> <span class="nx">ignore_tags</span> <span class="o">=</span> <span class="nx">feeds</span><span class="p">[</span><span class="nx">key</span><span class="p">][</span><span class="s2">"ignore"</span><span class="p">]</span> + <span class="kd">var</span> <span class="nx">ignore_tags</span> <span class="o">=</span> <span class="p">(</span><span class="nx">ignore_tags</span> <span class="o">===</span> <span class="kc">undefined</span><span class="p">)</span> <span class="o">?</span> <span class="p">[]</span> <span class="o">:</span> <span class="nx">ignore_tags</span> + + <span class="kd">var</span> <span class="nx">contents</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"a"</span><span class="p">)</span> + <span class="nx">contents</span><span class="p">.</span><span class="nx">href</span> <span class="o">=</span> <span class="s2">"#"</span> <span class="o">+</span> <span class="nx">key</span> + <span class="nx">contents</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"list-group-item"</span><span class="p">,</span><span class="s2">"list-group-item-action"</span><span class="p">)</span> + <span class="nx">contents</span><span class="p">.</span><span class="nx">textContent</span> <span class="o">=</span> <span class="nx">key</span> + <span class="nb">document</span><span class="p">.</span><span class="nx">getElementById</span><span class="p">(</span><span class="s2">"contents"</span><span class="p">).</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">contents</span><span class="p">)</span> + <span class="kd">var</span> <span class="nx">feed_div</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">)</span> + <span class="nx">feed_div</span><span class="p">.</span><span class="nx">id</span> <span class="o">=</span> <span class="nx">key</span> + <span class="nx">feed_div</span><span class="p">.</span><span class="nx">setAttribute</span><span class="p">(</span><span class="s2">"id"</span><span class="p">,</span> <span class="nx">key</span><span class="p">);</span> + <span class="kd">var</span> <span class="nx">title</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"h2"</span><span class="p">);</span> + <span class="nx">title</span><span class="p">.</span><span class="nx">textContent</span> <span class="o">=</span> <span class="s2">"From "</span> <span class="o">+</span> <span class="nx">key</span><span class="p">;</span> + <span class="nx">title</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"pb-1"</span><span class="p">)</span> + <span class="nx">feed_div</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">title</span><span class="p">)</span> + <span class="nb">document</span><span class="p">.</span><span class="nx">getElementById</span><span class="p">(</span><span class="s2">"feed"</span><span class="p">).</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">feed_div</span><span class="p">)</span> + <span class="kd">var</span> <span class="nx">parser</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">RSSParser</span><span class="p">();</span> + <span class="kd">var</span> <span class="nx">countPosts</span> <span class="o">=</span> <span class="mf">0</span> + <span class="nx">parser</span><span class="p">.</span><span class="nx">parseURL</span><span class="p">(</span><span class="nx">CORS_PROXY</span> <span class="o">+</span> <span class="nx">feeds</span><span class="p">[</span><span class="nx">key</span><span class="p">][</span><span class="s2">"link"</span><span class="p">],</span> <span class="kd">function</span><span class="p">(</span><span class="nx">err</span><span class="p">,</span> <span class="nx">feed</span><span class="p">)</span> <span class="p">{</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">err</span><span class="p">)</span> <span class="k">throw</span> <span class="nx">err</span><span class="p">;</span> + <span class="nx">feed</span><span class="p">.</span><span class="nx">items</span><span class="p">.</span><span class="nx">forEach</span><span class="p">(</span><span class="kd">function</span><span class="p">(</span><span class="nx">entry</span><span class="p">)</span> <span class="p">{</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">countPosts</span> <span class="o"><</span> <span class="nx">count_lim</span><span class="p">)</span> <span class="p">{</span> + + <span class="kd">var</span> <span class="nx">skip</span> <span class="o">=</span> <span class="kc">false</span> + <span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mf">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">ignore_tags</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">entry</span><span class="p">.</span><span class="nx">title</span><span class="p">.</span><span class="nx">includes</span><span class="p">(</span><span class="nx">ignore_tags</span><span class="p">[</span><span class="nx">i</span><span class="p">])){</span> + <span class="kd">var</span> <span class="nx">skip</span> <span class="o">=</span> <span class="kc">true</span> + <span class="p">}</span> <span class="k">else</span> <span class="k">if</span> <span class="p">(</span><span class="nx">entry</span><span class="p">.</span><span class="nx">content</span><span class="p">.</span><span class="nx">includes</span><span class="p">(</span><span class="nx">ignore_tags</span><span class="p">[</span><span class="nx">i</span><span class="p">])){</span> + <span class="kd">var</span> <span class="nx">skip</span> <span class="o">=</span> <span class="kc">true</span> + <span class="p">}</span> + <span class="p">}</span> + + <span class="k">if</span> <span class="p">(</span><span class="o">!</span><span class="nx">skip</span><span class="p">)</span> <span class="p">{</span> + + <span class="kd">var</span> <span class="nx">node</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">);</span> + <span class="nx">node</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card"</span><span class="p">,</span><span class="s2">"mb-3"</span><span class="p">);</span> + <span class="kd">var</span> <span class="nx">row</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">)</span> + <span class="nx">row</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"row"</span><span class="p">,</span><span class="s2">"no-gutters"</span><span class="p">)</span> + + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"left-column"</span><span class="p">]){</span> + <span class="kd">var</span> <span class="nx">left_col</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">)</span> + <span class="nx">left_col</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"col-md-2"</span><span class="p">)</span> + <span class="kd">var</span> <span class="nx">left_col_body</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">)</span> + <span class="nx">left_col_body</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card-body"</span><span class="p">)</span> + <span class="p">}</span> + + <span class="kd">var</span> <span class="nx">right_col</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">)</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"left-column"</span><span class="p">]){</span> + <span class="nx">right_col</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"col-md-10"</span><span class="p">)</span> + <span class="p">}</span> + <span class="kd">var</span> <span class="nx">node_title</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"h5"</span><span class="p">)</span> + + <span class="nx">node_title</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card-header"</span><span class="p">)</span> + <span class="nx">node_title</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">entry</span><span class="p">.</span><span class="nx">title</span> + + <span class="nx">node_body</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"div"</span><span class="p">)</span> + <span class="nx">node_body</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card-body"</span><span class="p">)</span> + + <span class="nx">node_content</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"p"</span><span class="p">)</span> + + <span class="k">if</span> <span class="p">(</span><span class="nx">show_summary</span><span class="p">){</span> + <span class="nx">node_content</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="nx">entry</span><span class="p">.</span><span class="nx">content</span> + <span class="p">}</span> + <span class="nx">node_content</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card-text"</span><span class="p">)</span> + + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"direct-link"</span><span class="p">]){</span> + <span class="nx">node_link</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"p"</span><span class="p">)</span> + <span class="nx">node_link</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card-text"</span><span class="p">)</span> + <span class="nx">node_link</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s2">"<b>Link:</b> <a href='"</span> <span class="o">+</span> <span class="nx">entry</span><span class="p">.</span><span class="nx">link</span> <span class="o">+</span><span class="s2">"'>Direct Link</a>"</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"left-column"</span><span class="p">]){</span> + <span class="nx">left_col_body</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_link</span><span class="p">)</span> + <span class="p">}</span> <span class="k">else</span> <span class="p">{</span> + <span class="nx">node_content</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_link</span><span class="p">)</span> + <span class="p">}</span> + <span class="p">}</span> + + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"show-date"</span><span class="p">]){</span> + <span class="nx">node_date</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">createElement</span><span class="p">(</span><span class="s2">"p"</span><span class="p">)</span> + <span class="nx">node_date</span><span class="p">.</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"card-text"</span><span class="p">)</span> + <span class="nx">node_date</span><span class="p">.</span><span class="nx">innerHTML</span> <span class="o">=</span> <span class="s2">"<p><b>Date: </b>"</span> <span class="o">+</span> <span class="nx">entry</span><span class="p">.</span><span class="nx">pubDate</span> <span class="o">+</span> <span class="s2">"</p>"</span> + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"left-column"</span><span class="p">]){</span> + <span class="nx">left_col_body</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_date</span><span class="p">)</span> + <span class="p">}</span> <span class="k">else</span> <span class="p">{</span> + <span class="nx">node_content</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_date</span><span class="p">)</span> + + <span class="p">}</span> + <span class="p">}</span> + + <span class="nx">node</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_title</span><span class="p">)</span> + + <span class="nx">node_body</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_content</span><span class="p">)</span> + + <span class="nx">right_col</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node_body</span><span class="p">)</span> + + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"left-column"</span><span class="p">]){</span> + <span class="nx">left_col</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">left_col_body</span><span class="p">)</span> + <span class="nx">row</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">left_col</span><span class="p">)</span> + <span class="p">}</span> + + <span class="nx">row</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">right_col</span><span class="p">)</span> + + <span class="nx">node</span><span class="p">.</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">row</span><span class="p">)</span> + + <span class="nb">document</span><span class="p">.</span><span class="nx">getElementById</span><span class="p">(</span><span class="nx">key</span><span class="p">).</span><span class="nx">appendChild</span><span class="p">(</span><span class="nx">node</span><span class="p">)</span> + <span class="nx">countPosts</span><span class="o">+=</span><span class="mf">1</span> + <span class="p">}</span> + <span class="p">}</span> + <span class="p">})</span> + + <span class="k">if</span> <span class="p">(</span><span class="nx">config_extra</span><span class="p">[</span><span class="s2">"Responsive-Images"</span><span class="p">]){</span> + <span class="kd">var</span> <span class="nx">inputs</span> <span class="o">=</span> <span class="nb">document</span><span class="p">.</span><span class="nx">getElementsByTagName</span><span class="p">(</span><span class="s1">'img'</span><span class="p">)</span> + <span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">i</span> <span class="o">=</span> <span class="mf">0</span><span class="p">;</span> <span class="nx">i</span> <span class="o"><</span> <span class="nx">inputs</span><span class="p">.</span><span class="nx">length</span><span class="p">;</span> <span class="nx">i</span><span class="o">++</span><span class="p">)</span> <span class="p">{</span> + <span class="nx">inputs</span><span class="p">[</span><span class="nx">i</span><span class="p">].</span><span class="nx">classList</span><span class="p">.</span><span class="nx">add</span><span class="p">(</span><span class="s2">"img-fluid"</span><span class="p">)</span> + <span class="p">}</span> + <span class="p">}</span> + + <span class="p">})</span> + + <span class="k">return</span> <span class="kc">true</span> +<span class="p">}</span> +<span class="p">(</span><span class="nx">async</span> <span class="p">()</span> <span class="p">=></span> <span class="p">{</span> +<span class="k">for</span><span class="p">(</span><span class="kd">var</span> <span class="nx">key</span> <span class="k">in</span> <span class="nx">feeds</span><span class="p">)</span> <span class="p">{</span> + <span class="kd">let</span> <span class="nx">result</span> <span class="o">=</span> <span class="nx">await</span> <span class="nx">myfunc</span><span class="p">(</span><span class="nx">key</span><span class="p">);</span> +<span class="p">}})();</span> + +<span class="p"></</span><span class="nt">script</span><span class="p">></span> +<span class="p"><</span><span class="nt">noscript</span><span class="p">></span>Uh Oh! Your browser does not support JavaScript or JavaScript is currently disabled. Please enable JavaScript or switch to a different browser.<span class="p"></</span><span class="nt">noscript</span><span class="p">></span> +<span class="p"></</span><span class="nt">body</span><span class="p">></</span><span class="nt">html</span><span class="p">></span> +</div></code></pre></div><span>Tagged with: </span><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/html">HTML</a></li><li><a href="/tags/javascript">JavaScript</a></li></ul></article></div><footer><p>Made with ❤️ using <a href="https://github.com/johnsundell/publish">Publish</a></p><p><a href="/feed.rss">RSS feed</a></p></footer></body></html>
\ No newline at end of file diff --git a/posts/index.html b/posts/index.html index fc5c20e..da1c6d3 100644 --- a/posts/index.html +++ b/posts/index.html @@ -1 +1 @@ -<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"/><meta name="og:site_name" content="Navan Chauhan"/><link rel="canonical" href="https://navanchauhan.github.io/posts"/><meta name="twitter:url" content="https://navanchauhan.github.io/posts"/><meta name="og:url" content="https://navanchauhan.github.io/posts"/><title>Posts | Navan Chauhan</title><meta name="twitter:title" content="Posts | Navan Chauhan"/><meta name="og:title" content="Posts | Navan Chauhan"/><meta name="description" content="Welcome to my personal fragment of the internet. Majority of the posts should be complete."/><meta name="twitter:description" content="Welcome to my personal fragment of the internet. Majority of the posts should be complete."/><meta name="og:description" content="Welcome to my personal fragment of the internet. Majority of the posts should be complete."/><meta name="twitter:card" content="summary"/><link rel="stylesheet" href="/styles.css" type="text/css"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><link rel="shortcut icon" href="/images/favicon.png" type="image/png"/><link rel="alternate" href="/feed.rss" type="application/rss+xml" title="Subscribe to Navan Chauhan"/><meta name="twitter:image" content="https://navanchauhan.github.io/images/logo.png"/><meta name="og:image" content="https://navanchauhan.github.io/images/logo.png"/></head><head><script async src="//gc.zgo.at/count.js" data-goatcounter="https://navanchauhan.goatcounter.com/count"></script></head><body><header><div class="wrapper"><a class="site-name" href="/">Navan Chauhan</a><nav><ul><li><a href="/about">About Me</a></li><li><a class="selected" href="/posts">Posts</a></li><li><a href="/publications">Publications</a></li><li><a href="/assets/résumé.pdf">Résumé</a></li><li><a href="https://navanchauhan.github.io/repo">Repo</a></li></ul></nav></div></header><div class="wrapper"><h1>Posts</h1><p>Tips, tricks and tutorials which I think might be useful.</p><ul class="item-list"><li><article><h1><a href="/posts/2010-01-24-experiments">Experiments</a></h1><ul class="tag-list"><li><a href="/tags/experiment">Experiment</a></li></ul><span>🕑 1 minute read. January 24, 2010</span><p>Just a markdown file for all experiments related to the website</p></article></li><li><article><h1><a href="/posts/2019-05-05-Custom-Snowboard-Anemone-Theme">Creating your own custom theme for Snowboard or Anemone</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/jailbreak">Jailbreak</a></li><li><a href="/tags/designing">Designing</a></li><li><a href="/tags/snowboard">Snowboard</a></li><li><a href="/tags/anemone">Anemone</a></li></ul><span>🕑 5 minute read. May 5, 2019</span><p>Tutorial on creating your own custom theme for Snowboard or Anemone</p></article></li><li><article><h1><a href="/posts/2019-12-04-Google-Teachable-Machines">Image Classifier With Teachable Machines</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li></ul><span>🕑 2 minute read. December 4, 2019</span><p>Tutorial on creating a custom image classifier quickly with Google Teachable Machines</p></article></li><li><article><h1><a href="/posts/2019-12-08-Image-Classifier-Tensorflow">Creating a Custom Image Classifier using Tensorflow 2.x and Keras for Detecting Malaria</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/tensorflow">Tensorflow</a></li><li><a href="/tags/colab">Colab</a></li></ul><span>🕑 4 minute read. December 8, 2019</span><p>Tutorial on creating an image classifier model using TensorFlow which detects malaria</p></article></li><li><article><h1><a href="/posts/2019-12-08-Splitting-Zips">Splitting ZIPs into Multiple Parts</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/tutorial">Tutorial</a></li></ul><span>🕑 1 minute read. December 8, 2019</span><p>Short code snippet for splitting zips.</p></article></li><li><article><h1><a href="/posts/2019-12-10-TensorFlow-Model-Prediction">Making Predictions using Image Classifier (TensorFlow)</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/tensorflow">Tensorflow</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li></ul><span>🕑 1 minute read. December 10, 2019</span><p>Making predictions for image classification models built using TensorFlow</p></article></li><li><article><h1><a href="/posts/2019-12-16-TensorFlow-Polynomial-Regression">Polynomial Regression Using TensorFlow</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/tensorflow">Tensorflow</a></li><li><a href="/tags/colab">Colab</a></li></ul><span>🕑 17 minute read. December 16, 2019</span><p>Polynomial regression using TensorFlow</p></article></li><li><article><h1><a href="/posts/2019-12-22-Fake-News-Detector">Building a Fake News Detector with Turicreate</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/colab">Colab</a></li><li><a href="/tags/swiftui">SwiftUI</a></li><li><a href="/tags/turicreate">Turicreate</a></li></ul><span>🕑 7 minute read. December 22, 2019</span><p>In this tutorial we will build a fake news detecting app from scratch, using Turicreate for the machine learning model and SwiftUI for building the app</p></article></li><li><article><h1><a href="/posts/2020-01-14-Converting-between-PIL-NumPy">Converting between image and NumPy array</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/tutorial">Tutorial</a></li></ul><span>🕑 1 minute read. January 14, 2020</span><p>Short code snippet for converting between PIL image and NumPy arrays.</p></article></li><li><article><h1><a href="/posts/2020-01-15-Setting-up-Kaggle-to-use-with-Colab">Setting up Kaggle to use with Google Colab</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/colab">Colab</a></li><li><a href="/tags/turicreate">Turicreate</a></li><li><a href="/tags/kaggle">Kaggle</a></li></ul><span>🕑 1 minute read. January 15, 2020</span><p>Tutorial on setting up kaggle, to use with Google Colab</p></article></li><li><article><h1><a href="/posts/2020-01-16-Image-Classifier-Using-Turicreate">Creating a Custom Image Classifier using Turicreate to detect Smoke and Fire</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/colab">Colab</a></li><li><a href="/tags/turicreate">Turicreate</a></li></ul><span>🕑 6 minute read. January 16, 2020</span><p>Tutorial on creating a custom Image Classifier using Turicreate and a dataset from Kaggle</p></article></li><li><article><h1><a href="/posts/2020-01-19-Connect-To-Bluetooth-Devices-Linux-Terminal">How to setup Bluetooth on a Raspberry Pi</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/tutorial">tutorial</a></li><li><a href="/tags/raspberrypi">Raspberry-Pi</a></li><li><a href="/tags/linux">Linux</a></li></ul><span>🕑 1 minute read. January 19, 2020</span><p>Connecting to Bluetooth Devices using terminal, tested on Raspberry Pi Zero W</p></article></li><li><article><h1><a href="/posts/2020-03-03-Playing-With-Android-TV">Tinkering with an Android TV</a></h1><ul class="tag-list"><li><a href="/tags/androidtv">Android-TV</a></li><li><a href="/tags/android">Android</a></li></ul><span>🕑 1 minute read. March 3, 2020</span><p>Tinkering with an Android TV</p></article></li><li><article><h1><a href="/posts/2020-03-08-Making-Vaporwave-Track">Making My First Vaporwave Track (Remix)</a></h1><ul class="tag-list"><li><a href="/tags/vaporwave">Vaporwave</a></li><li><a href="/tags/music">Music</a></li></ul><span>🕑 2 minute read. March 8, 2020</span><p>I made my first vaporwave remix</p></article></li><li><article><h1><a href="/posts/2020-04-13-Fixing-X11-Error-AmberTools-macOS">Fixing X11 Error on macOS Catalina for AmberTools 18/19</a></h1><ul class="tag-list"><li><a href="/tags/moleculardynamics">Molecular-Dynamics</a></li><li><a href="/tags/macos">macOS</a></li></ul><span>🕑 2 minute read. April 13, 2020</span><p>Fixing Could not find the X11 libraries; you may need to edit config.h, AmberTools macOS Catalina</p></article></li><li><article><h1><a href="/posts/2020-05-31-compiling-open-babel-on-ios">Compiling Open Babel on iOS</a></h1><ul class="tag-list"><li><a href="/tags/ios">iOS</a></li><li><a href="/tags/jailbreak">Jailbreak</a></li><li><a href="/tags/cheminformatics">Cheminformatics</a></li><li><a href="/tags/openbabel">Open-Babel</a></li></ul><span>🕑 5 minute read. May 31, 2020</span><p>Compiling Open Babel on iOS</p></article></li><li><article><h1><a href="/posts/2020-06-01-Speeding-Up-Molecular-Docking-Workflow-AutoDock-Vina-and-PyMOL">Workflow for Lightning Fast Molecular Docking Part One</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/moleculardocking">Molecular-Docking</a></li><li><a href="/tags/cheminformatics">Cheminformatics</a></li><li><a href="/tags/openbabel">Open-Babel</a></li><li><a href="/tags/autodock-vina">AutoDock Vina</a></li></ul><span>🕑 2 minute read. June 1, 2020</span><p>This is my workflow for lightning fast molecular docking.</p></article></li><li><article><h1><a href="/posts/2020-06-02-Compiling-AutoDock-Vina-on-iOS">Compiling AutoDock Vina on iOS</a></h1><ul class="tag-list"><li><a href="/tags/ios">iOS</a></li><li><a href="/tags/jailbreak">Jailbreak</a></li><li><a href="/tags/cheminformatics">Cheminformatics</a></li><li><a href="/tags/autodock-vina">AutoDock Vina</a></li><li><a href="/tags/moleculardocking">Molecular-Docking</a></li></ul><span>🕑 3 minute read. June 2, 2020</span><p>Compiling AutoDock Vina on iOS</p></article></li><li><article><h1><a href="/posts/2020-07-01-Install-rdkit-colab">Installing RDKit on Google Colab</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/colab">Colab</a></li></ul><span>🕑 2 minute read. July 1, 2020</span><p>Install RDKit on Google Colab with one code snippet.</p></article></li><li><article><h1><a href="/posts/2020-08-01-Natural-Feature-Tracking-ARJS">Introduction to AR.js and Natural Feature Tracking</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/arjs">AR.js</a></li><li><a href="/tags/javascript">JavaScript</a></li><li><a href="/tags/augmentedreality">Augmented-Reality</a></li></ul><span>🕑 7 minute read. August 1, 2020</span><p>An introduction to AR.js and NFT</p></article></li><li><article><h1><a href="/posts/2020-10-11-macOS-Virtual-Cam-OBS">Trying Different Camera Setups</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/review">Review</a></li><li><a href="/tags/webcam">Webcam</a></li></ul><span>🕑 3 minute read. October 11, 2020</span><p>Comparison of different cameras setups for using as a webcam and tutorials for the same.</p></article></li><li><article><h1><a href="/posts/2020-11-17-Lets-Encrypt-DuckDns">Generating HTTPS Certificate using DNS a Challenge through Let's Encrypt</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/webdevelopment">Web-Development</a></li></ul><span>🕑 3 minute read. November 17, 2020</span><p>Short code-snippet to generate HTTPS certificates using the DNS Challenge through Lets Encrypt for a web-server using DuckDNS.</p></article></li><li><article><h1><a href="/posts/hello-world">Hello World</a></h1><ul class="tag-list"><li><a href="/tags/helloworld">hello-world</a></li></ul><span>🕑 1 minute read. April 16, 2019</span><p>My first post.</p></article></li></ul></div><footer><p>Made with ❤️ using <a href="https://github.com/johnsundell/publish">Publish</a></p><p><a href="/feed.rss">RSS feed</a></p></footer></body></html>
\ No newline at end of file +<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"/><meta name="og:site_name" content="Navan Chauhan"/><link rel="canonical" href="https://navanchauhan.github.io/posts"/><meta name="twitter:url" content="https://navanchauhan.github.io/posts"/><meta name="og:url" content="https://navanchauhan.github.io/posts"/><title>Posts | Navan Chauhan</title><meta name="twitter:title" content="Posts | Navan Chauhan"/><meta name="og:title" content="Posts | Navan Chauhan"/><meta name="description" content="Welcome to my personal fragment of the internet. Majority of the posts should be complete."/><meta name="twitter:description" content="Welcome to my personal fragment of the internet. Majority of the posts should be complete."/><meta name="og:description" content="Welcome to my personal fragment of the internet. Majority of the posts should be complete."/><meta name="twitter:card" content="summary"/><link rel="stylesheet" href="/styles.css" type="text/css"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><link rel="shortcut icon" href="/images/favicon.png" type="image/png"/><link rel="alternate" href="/feed.rss" type="application/rss+xml" title="Subscribe to Navan Chauhan"/><meta name="twitter:image" content="https://navanchauhan.github.io/images/logo.png"/><meta name="og:image" content="https://navanchauhan.github.io/images/logo.png"/></head><head><script async src="//gc.zgo.at/count.js" data-goatcounter="https://navanchauhan.goatcounter.com/count"></script></head><body><header><div class="wrapper"><a class="site-name" href="/">Navan Chauhan</a><nav><ul><li><a href="/about">About Me</a></li><li><a class="selected" href="/posts">Posts</a></li><li><a href="/publications">Publications</a></li><li><a href="/assets/résumé.pdf">Résumé</a></li><li><a href="https://navanchauhan.github.io/repo">Repo</a></li></ul></nav></div></header><div class="wrapper"><h1>Posts</h1><p>Tips, tricks and tutorials which I think might be useful.</p><ul class="item-list"><li><article><h1><a href="/posts/2010-01-24-experiments">Experiments</a></h1><ul class="tag-list"><li><a href="/tags/experiment">Experiment</a></li></ul><span>🕑 1 minute read. January 24, 2010</span><p>Just a markdown file for all experiments related to the website</p></article></li><li><article><h1><a href="/posts/2019-05-05-Custom-Snowboard-Anemone-Theme">Creating your own custom theme for Snowboard or Anemone</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/jailbreak">Jailbreak</a></li><li><a href="/tags/designing">Designing</a></li><li><a href="/tags/snowboard">Snowboard</a></li><li><a href="/tags/anemone">Anemone</a></li></ul><span>🕑 5 minute read. May 5, 2019</span><p>Tutorial on creating your own custom theme for Snowboard or Anemone</p></article></li><li><article><h1><a href="/posts/2019-12-04-Google-Teachable-Machines">Image Classifier With Teachable Machines</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li></ul><span>🕑 2 minute read. December 4, 2019</span><p>Tutorial on creating a custom image classifier quickly with Google Teachable Machines</p></article></li><li><article><h1><a href="/posts/2019-12-08-Image-Classifier-Tensorflow">Creating a Custom Image Classifier using Tensorflow 2.x and Keras for Detecting Malaria</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/tensorflow">Tensorflow</a></li><li><a href="/tags/colab">Colab</a></li></ul><span>🕑 4 minute read. December 8, 2019</span><p>Tutorial on creating an image classifier model using TensorFlow which detects malaria</p></article></li><li><article><h1><a href="/posts/2019-12-08-Splitting-Zips">Splitting ZIPs into Multiple Parts</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/tutorial">Tutorial</a></li></ul><span>🕑 1 minute read. December 8, 2019</span><p>Short code snippet for splitting zips.</p></article></li><li><article><h1><a href="/posts/2019-12-10-TensorFlow-Model-Prediction">Making Predictions using Image Classifier (TensorFlow)</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/tensorflow">Tensorflow</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li></ul><span>🕑 1 minute read. December 10, 2019</span><p>Making predictions for image classification models built using TensorFlow</p></article></li><li><article><h1><a href="/posts/2019-12-16-TensorFlow-Polynomial-Regression">Polynomial Regression Using TensorFlow</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/tensorflow">Tensorflow</a></li><li><a href="/tags/colab">Colab</a></li></ul><span>🕑 17 minute read. December 16, 2019</span><p>Polynomial regression using TensorFlow</p></article></li><li><article><h1><a href="/posts/2019-12-22-Fake-News-Detector">Building a Fake News Detector with Turicreate</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/colab">Colab</a></li><li><a href="/tags/swiftui">SwiftUI</a></li><li><a href="/tags/turicreate">Turicreate</a></li></ul><span>🕑 7 minute read. December 22, 2019</span><p>In this tutorial we will build a fake news detecting app from scratch, using Turicreate for the machine learning model and SwiftUI for building the app</p></article></li><li><article><h1><a href="/posts/2020-01-14-Converting-between-PIL-NumPy">Converting between image and NumPy array</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/tutorial">Tutorial</a></li></ul><span>🕑 1 minute read. January 14, 2020</span><p>Short code snippet for converting between PIL image and NumPy arrays.</p></article></li><li><article><h1><a href="/posts/2020-01-15-Setting-up-Kaggle-to-use-with-Colab">Setting up Kaggle to use with Google Colab</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/colab">Colab</a></li><li><a href="/tags/turicreate">Turicreate</a></li><li><a href="/tags/kaggle">Kaggle</a></li></ul><span>🕑 1 minute read. January 15, 2020</span><p>Tutorial on setting up kaggle, to use with Google Colab</p></article></li><li><article><h1><a href="/posts/2020-01-16-Image-Classifier-Using-Turicreate">Creating a Custom Image Classifier using Turicreate to detect Smoke and Fire</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/colab">Colab</a></li><li><a href="/tags/turicreate">Turicreate</a></li></ul><span>🕑 6 minute read. January 16, 2020</span><p>Tutorial on creating a custom Image Classifier using Turicreate and a dataset from Kaggle</p></article></li><li><article><h1><a href="/posts/2020-01-19-Connect-To-Bluetooth-Devices-Linux-Terminal">How to setup Bluetooth on a Raspberry Pi</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/tutorial">tutorial</a></li><li><a href="/tags/raspberrypi">Raspberry-Pi</a></li><li><a href="/tags/linux">Linux</a></li></ul><span>🕑 1 minute read. January 19, 2020</span><p>Connecting to Bluetooth Devices using terminal, tested on Raspberry Pi Zero W</p></article></li><li><article><h1><a href="/posts/2020-03-03-Playing-With-Android-TV">Tinkering with an Android TV</a></h1><ul class="tag-list"><li><a href="/tags/androidtv">Android-TV</a></li><li><a href="/tags/android">Android</a></li></ul><span>🕑 1 minute read. March 3, 2020</span><p>Tinkering with an Android TV</p></article></li><li><article><h1><a href="/posts/2020-03-08-Making-Vaporwave-Track">Making My First Vaporwave Track (Remix)</a></h1><ul class="tag-list"><li><a href="/tags/vaporwave">Vaporwave</a></li><li><a href="/tags/music">Music</a></li></ul><span>🕑 2 minute read. March 8, 2020</span><p>I made my first vaporwave remix</p></article></li><li><article><h1><a href="/posts/2020-04-13-Fixing-X11-Error-AmberTools-macOS">Fixing X11 Error on macOS Catalina for AmberTools 18/19</a></h1><ul class="tag-list"><li><a href="/tags/moleculardynamics">Molecular-Dynamics</a></li><li><a href="/tags/macos">macOS</a></li></ul><span>🕑 2 minute read. April 13, 2020</span><p>Fixing Could not find the X11 libraries; you may need to edit config.h, AmberTools macOS Catalina</p></article></li><li><article><h1><a href="/posts/2020-05-31-compiling-open-babel-on-ios">Compiling Open Babel on iOS</a></h1><ul class="tag-list"><li><a href="/tags/ios">iOS</a></li><li><a href="/tags/jailbreak">Jailbreak</a></li><li><a href="/tags/cheminformatics">Cheminformatics</a></li><li><a href="/tags/openbabel">Open-Babel</a></li></ul><span>🕑 5 minute read. May 31, 2020</span><p>Compiling Open Babel on iOS</p></article></li><li><article><h1><a href="/posts/2020-06-01-Speeding-Up-Molecular-Docking-Workflow-AutoDock-Vina-and-PyMOL">Workflow for Lightning Fast Molecular Docking Part One</a></h1><ul class="tag-list"><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/moleculardocking">Molecular-Docking</a></li><li><a href="/tags/cheminformatics">Cheminformatics</a></li><li><a href="/tags/openbabel">Open-Babel</a></li><li><a href="/tags/autodock-vina">AutoDock Vina</a></li></ul><span>🕑 2 minute read. June 1, 2020</span><p>This is my workflow for lightning fast molecular docking.</p></article></li><li><article><h1><a href="/posts/2020-06-02-Compiling-AutoDock-Vina-on-iOS">Compiling AutoDock Vina on iOS</a></h1><ul class="tag-list"><li><a href="/tags/ios">iOS</a></li><li><a href="/tags/jailbreak">Jailbreak</a></li><li><a href="/tags/cheminformatics">Cheminformatics</a></li><li><a href="/tags/autodock-vina">AutoDock Vina</a></li><li><a href="/tags/moleculardocking">Molecular-Docking</a></li></ul><span>🕑 3 minute read. June 2, 2020</span><p>Compiling AutoDock Vina on iOS</p></article></li><li><article><h1><a href="/posts/2020-07-01-Install-rdkit-colab">Installing RDKit on Google Colab</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/colab">Colab</a></li></ul><span>🕑 2 minute read. July 1, 2020</span><p>Install RDKit on Google Colab with one code snippet.</p></article></li><li><article><h1><a href="/posts/2020-08-01-Natural-Feature-Tracking-ARJS">Introduction to AR.js and Natural Feature Tracking</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/arjs">AR.js</a></li><li><a href="/tags/javascript">JavaScript</a></li><li><a href="/tags/augmentedreality">Augmented-Reality</a></li></ul><span>🕑 7 minute read. August 1, 2020</span><p>An introduction to AR.js and NFT</p></article></li><li><article><h1><a href="/posts/2020-10-11-macOS-Virtual-Cam-OBS">Trying Different Camera Setups</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/review">Review</a></li><li><a href="/tags/webcam">Webcam</a></li></ul><span>🕑 3 minute read. October 11, 2020</span><p>Comparison of different cameras setups for using as a webcam and tutorials for the same.</p></article></li><li><article><h1><a href="/posts/2020-11-17-Lets-Encrypt-DuckDns">Generating HTTPS Certificate using DNS a Challenge through Let's Encrypt</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/webdevelopment">Web-Development</a></li></ul><span>🕑 3 minute read. November 17, 2020</span><p>Short code-snippet to generate HTTPS certificates using the DNS Challenge through Lets Encrypt for a web-server using DuckDNS.</p></article></li><li><article><h1><a href="/posts/2020-12-1-HTML-JS-RSS-Feed">RSS Feed written in HTML + JavaScript</a></h1><ul class="tag-list"><li><a href="/tags/tutorial">Tutorial</a></li><li><a href="/tags/codesnippet">Code-Snippet</a></li><li><a href="/tags/html">HTML</a></li><li><a href="/tags/javascript">JavaScript</a></li></ul><span>🕑 5 minute read. December 1, 2020</span><p>Short code-snippet for an RSS feed, written in HTML and JavaScript</p></article></li><li><article><h1><a href="/posts/hello-world">Hello World</a></h1><ul class="tag-list"><li><a href="/tags/helloworld">hello-world</a></li></ul><span>🕑 1 minute read. April 16, 2019</span><p>My first post.</p></article></li></ul></div><footer><p>Made with ❤️ using <a href="https://github.com/johnsundell/publish">Publish</a></p><p><a href="/feed.rss">RSS feed</a></p></footer></body></html>
\ No newline at end of file |