<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: manu</title>
    <description>The latest articles on DEV Community by manu (@__manucodes).</description>
    <link>https://dev.to/__manucodes</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F567979%2F60198281-76f2-4b19-b965-06844c1faddc.png</url>
      <title>DEV Community: manu</title>
      <link>https://dev.to/__manucodes</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/__manucodes"/>
    <language>en</language>
    <item>
      <title>I launched an app to the App Store and Google Play!</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Fri, 15 Aug 2025 00:39:57 +0000</pubDate>
      <link>https://dev.to/__manucodes/i-launched-an-app-to-the-app-store-and-google-play-38a0</link>
      <guid>https://dev.to/__manucodes/i-launched-an-app-to-the-app-store-and-google-play-38a0</guid>
      <description>&lt;p&gt;After 6+ years in the making, Dysperse (dysperse.com) is officially live on the App Store &amp;amp; Google Play.&lt;/p&gt;

&lt;p&gt;What started as a simple home inventory app for my mom in middle school has grown into a fully featured, cross-platform productivity tool — now approved for use across IUSD schools and featured in my high school’s newspaper.&lt;/p&gt;

&lt;p&gt;Over the years, Dysperse evolved through multiple rewrites, eventually being rebuilt with Expo and deployed using EAS, making it fast, polished, and scalable for users everywhere. Along the way, I learned not just how to ship code, but how to design for accessibility, create intuitive user experiences, and keep an open-source project alive through continuous iteration. This wouldn’t have been possible without the support of amazing sponsors like Vercel, Cloudflare, and Neon.&lt;/p&gt;

&lt;p&gt;As a free, open-source project, Dysperse makes productivity intuitive, colorful, and accessible. The best is yet to come.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://c.dysperse.com/7XNI8k" rel="noopener noreferrer"&gt;Get it on iOS&lt;/a&gt;&lt;br&gt;
&lt;a href="https://c.dysperse.com/5FlWPZ" rel="noopener noreferrer"&gt;Get it on Android&lt;/a&gt;&lt;/p&gt;

</description>
      <category>ios</category>
      <category>android</category>
    </item>
    <item>
      <title>Factsify: Your Spotify listening habits in a nutrition facts label</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Sun, 28 Jul 2024 07:01:00 +0000</pubDate>
      <link>https://dev.to/__manucodes/factsify-your-spotify-listening-habits-in-a-nutrition-facts-label-2mhh</link>
      <guid>https://dev.to/__manucodes/factsify-your-spotify-listening-habits-in-a-nutrition-facts-label-2mhh</guid>
      <description>&lt;p&gt;&lt;a href="https://factsify.pages.dev?ref=dev.to"&gt;TLDR: Convert your Spotify listening habits into a nutrition facts label&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm excited to announce the launch of my latest project: Factsify!&lt;/p&gt;

&lt;p&gt;Factsify leverages the Spotify API to analyze your listening habits and present them in a fun and unique way—through a nutrition facts label format. Users can customize the time range for their listening data and display their top songs, artists, or genres.&lt;/p&gt;

&lt;p&gt;Key features include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Customizable Time Range: Select your preferred timeframe for analyzing your listening habits.&lt;/li&gt;
&lt;li&gt;Detailed Insights: Get a nutrition facts style display of your top songs, artists, and genres.&lt;/li&gt;
&lt;li&gt;High-Quality Design: Uses Adobe Typekit for professional fonts.&lt;/li&gt;
&lt;li&gt;Modern Tech Stack: Built with Next.js and deployed on Cloudflare.&lt;/li&gt;
&lt;li&gt;Shareable Format: Export your results as a PNG and share them on social media.&lt;/li&gt;
&lt;li&gt;Analytics: Integrated with Google Analytics for detailed user insights.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Looking forward to your feedback and seeing how you enjoy using Factsify!&lt;/p&gt;

&lt;h1&gt;
  
  
  &lt;a href="https://factsify.pages.dev?ref=dev.to"&gt;Create my label now&lt;/a&gt;
&lt;/h1&gt;

</description>
    </item>
    <item>
      <title>I published a package on NPM for the first time - and here's how to do it yourself! (Via replit.com)</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Tue, 01 Feb 2022 00:22:14 +0000</pubDate>
      <link>https://dev.to/__manucodes/i-published-a-package-on-npm-for-the-first-time-and-heres-how-to-do-it-yourself-via-replitcom-3k4m</link>
      <guid>https://dev.to/__manucodes/i-published-a-package-on-npm-for-the-first-time-and-heres-how-to-do-it-yourself-via-replitcom-3k4m</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;npm is the package manager for the Node JavaScript platform. It puts modules in place so that node can find them, and manages dependency conflicts intelligently. ... Most commonly, it is used to publish, discover, install, and develop node programs.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Source: Google&lt;/p&gt;

&lt;h3&gt;
  
  
  Step 1
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Create an account at NPM, and verify your email&lt;/li&gt;
&lt;li&gt;Then, create an account at &lt;a href="https://replit.com" rel="noopener noreferrer"&gt;https://replit.com&lt;/a&gt;, and click the * "Create" button at the the top left corner of the page !&lt;/li&gt;
&lt;li&gt;Select "NodeJS"
&lt;a href="https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1hg5fz261973csir7boc.png" rel="noopener noreferrer"&gt;Image description&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Step 2
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;You should see something like this: &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F735qg1q9sz0ihf85wkr8.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F735qg1q9sz0ihf85wkr8.png" alt="Image description" width="800" height="402"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Now, click on the "Shell button"&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fds4z5y8955zdvr1rkq2r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fds4z5y8955zdvr1rkq2r.png" alt="Image description" width="525" height="249"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Run the following command:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm init
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;This will help you generate a &lt;code&gt;package.json&lt;/code&gt; file. This will be useful later.&lt;/p&gt;
&lt;h3&gt;
  
  
  Step 3 - Generating a package.json file
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Fill in the name: 
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg9d8rut6ds1nlxhnwlbz.png" alt="Image description" width="507" height="73"&gt;
&lt;/li&gt;
&lt;li&gt;Fill in the version number: 
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fet91dxwbi9dtb3imt1uo.png" alt="Image description" width="507" height="24"&gt;
&lt;/li&gt;
&lt;li&gt;Fill in the description: 
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz72ibf3lz5ktbgzii9et.png" alt="Image description" width="507" height="24"&gt;
&lt;/li&gt;
&lt;li&gt;Fill in the entry point (The main file)
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffbbjcml839m4lcvynyvp.png" alt="Image description" width="507" height="24"&gt;
&lt;/li&gt;
&lt;li&gt;Fill in the test command, git repository, keywords, and author. These parameters are optional 
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkqb1d5t6n13f6d6rfwyd.png" alt="Image description" width="507" height="89"&gt;
&lt;/li&gt;
&lt;li&gt;Type "Yes" &lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fih4uoceuggo0k1xxhzdv.png" alt="Image description" width="507" height="89"&gt;
&lt;/li&gt;
&lt;li&gt;You should now see another file &lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjwsk5sw52qq9p6izvih8.png" alt="Image description" width="162" height="83"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Step 4 - Logging in to NPM
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Type &lt;code&gt;npm login&lt;/code&gt; in the shell&lt;/li&gt;
&lt;li&gt;Enter your username and password
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcw2e0q3xa34p3cu7xgyq.png" alt="Image description" width="480" height="41"&gt;
&lt;/li&gt;
&lt;li&gt;Don't worry if you don't see anything when you type your password. This is for security purposes&lt;/li&gt;
&lt;li&gt;Type your email
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdx9j2ndsjl6txd5lroxg.png" alt="Image description" width="480" height="22"&gt;
&lt;/li&gt;
&lt;li&gt;You might have to verify your email
&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frkjcgzf33r6fm0ufozth.png" alt="Image description" width="480" height="55"&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Step 5 - Let's write some code!
&lt;/h3&gt;

&lt;p&gt;Type the following your code in the &lt;code&gt;index.js&lt;/code&gt; file&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="c1"&gt;// Taken from StackOverflow for demo purposes&lt;/span&gt;
&lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;_genId&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt;           &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;''&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;characters&lt;/span&gt;       &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;charactersLength&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;characters&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="k"&gt;for &lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt; &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;&lt;/span&gt; &lt;span class="nx"&gt;length&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; &lt;span class="nx"&gt;i&lt;/span&gt;&lt;span class="o"&gt;++&lt;/span&gt; &lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;result&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="nx"&gt;characters&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;charAt&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;floor&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;Math&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;random&lt;/span&gt;&lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; 
 &lt;span class="nx"&gt;charactersLength&lt;/span&gt;&lt;span class="p"&gt;));&lt;/span&gt;
   &lt;span class="p"&gt;}&lt;/span&gt;
   &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nx"&gt;module&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;exports&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;_genId&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h3&gt;
  
  
  Step 6 - Let's publish our code
&lt;/h3&gt;

&lt;p&gt;Run &lt;code&gt;npm publish&lt;/code&gt; in the console&lt;br&gt;
You should see something like this: &lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwbememebq3maeycockd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flwbememebq3maeycockd.png" alt="Image description" width="507" height="555"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now, you can search your package on npm and install the npm package. Check out the &lt;code&gt;example.js&lt;/code&gt; in the demo code&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;uuid&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nf"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;awesome-string-generator&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;uuid&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;100&lt;/span&gt;&lt;span class="p"&gt;))&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;


&lt;div class="ltag__replit"&gt;
  &lt;iframe height="550px" src="https://repl.it/@ManuTheCoder/npm-package-test?lite=true"&gt;&lt;/iframe&gt;
&lt;/div&gt;



</description>
      <category>npm</category>
      <category>node</category>
      <category>javascript</category>
    </item>
    <item>
      <title>What are you doing for data privacy day?</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Fri, 28 Jan 2022 22:51:32 +0000</pubDate>
      <link>https://dev.to/__manucodes/what-are-you-doing-for-data-privacy-day-2g6d</link>
      <guid>https://dev.to/__manucodes/what-are-you-doing-for-data-privacy-day-2g6d</guid>
      <description>&lt;p&gt;Data Privacy Day is an international event that occurs every year on 28 January. The purpose of Data Privacy Day is to raise awareness and promote privacy and data protection best practices. It is currently observed in the United States, Canada, Nigeria, Israel and 44 European countries&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Discuss: What security measures will you take/already for your project/app/website?&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>privacy</category>
      <category>programming</category>
      <category>discuss</category>
    </item>
    <item>
      <title>Hey! Did you know Dev.to has an API??</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Fri, 14 Jan 2022 16:22:09 +0000</pubDate>
      <link>https://dev.to/__manucodes/hey-did-you-know-devto-has-an-api-3api</link>
      <guid>https://dev.to/__manucodes/hey-did-you-know-devto-has-an-api-3api</guid>
      <description>&lt;p&gt;Have you ever wanted to embed a "Recent Posts" in your website? DEV.to has an API for this.&lt;/p&gt;

&lt;p&gt;Check out this example: &lt;a href="https://manuthecoder.ml" rel="noopener noreferrer"&gt;https://manuthecoder.ml&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Just make a simple HTTP request to this URL:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;https://dev.to/api/articles?username=____YOUR_USERNAME_HERE____&amp;amp;per_page=5
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Example JS usage:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nf"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://dev.to/api/articles?username=manuthecoder&amp;amp;per_page=10&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;res&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;json&lt;/span&gt;&lt;span class="p"&gt;())&lt;/span&gt;
  &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;then&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;res&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;forEach&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;article&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;item&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;createElement&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;div&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nx"&gt;item&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;innerHTML&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;`&amp;lt;b&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;article&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;title&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;&amp;lt;/b&amp;gt;&amp;lt;p&amp;gt;&amp;lt;/p&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;article&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;description&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;&amp;lt;/p&amp;gt;`&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
    &lt;span class="nx"&gt;item&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;classList&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;add&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;card&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="nb"&gt;document&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;body&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;appendChild&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;item&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
  &lt;span class="p"&gt;})&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ul&gt;
&lt;li&gt;screw IE. nobody uses it lol&lt;/li&gt;
&lt;/ul&gt;

</description>
    </item>
    <item>
      <title>#bringBackHackerTheme</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Sat, 25 Dec 2021 08:38:20 +0000</pubDate>
      <link>https://dev.to/__manucodes/bring-back-hacker-theme-338g</link>
      <guid>https://dev.to/__manucodes/bring-back-hacker-theme-338g</guid>
      <description>&lt;p&gt;This is an attempt to bring back the hacker theme to Forem&lt;/p&gt;

&lt;p&gt;please vote here:&lt;br&gt;
&lt;a href="https://www.edpoll.ga/v/18/" rel="noopener noreferrer"&gt;https://www.edpoll.ga/v/18/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>programming memes that are refreshing</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Sat, 25 Dec 2021 08:29:48 +0000</pubDate>
      <link>https://dev.to/__manucodes/programming-memes-that-are-refreshing-9nd</link>
      <guid>https://dev.to/__manucodes/programming-memes-that-are-refreshing-9nd</guid>
      <description>&lt;p&gt;Time to take a short break from coding all day..&lt;/p&gt;

&lt;p&gt;lol this one is funny: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwkjewzo63cus42tefu8f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwkjewzo63cus42tefu8f.png" alt="Image description" width="710" height="600"&gt;&lt;/a&gt;&lt;br&gt;
Same for this:&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhybbj60u2sma9bvtl9o1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhybbj60u2sma9bvtl9o1.png" alt="Image description" width="750" height="500"&gt;&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fltmp7mu4w9c4grk2zmai.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fltmp7mu4w9c4grk2zmai.png" alt="Image description" width="800" height="800"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fenfqfu9em5hlyf2w96hl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fenfqfu9em5hlyf2w96hl.png" alt="Image description" width="500" height="734"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiaw2iu8o81q0d4ps27cp.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fiaw2iu8o81q0d4ps27cp.png" alt="Image description" width="680" height="574"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fldyvwnt62juvj2k4ypwj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fldyvwnt62juvj2k4ypwj.png" alt="Image description" width="320" height="180"&gt;&lt;/a&gt;&lt;br&gt;
 &lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsfnb7fpexpgv7mqlhwsh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsfnb7fpexpgv7mqlhwsh.png" alt="Image description" width="484" height="323"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6po7pug86ip8w8lfz09y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F6po7pug86ip8w8lfz09y.png" alt="Image description" width="800" height="848"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1z5kefpq0w9kjdtdgpfs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1z5kefpq0w9kjdtdgpfs.png" alt="Image description" width="500" height="564"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc031rtm1yneyx23dwmk7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fc031rtm1yneyx23dwmk7.png" alt="Image description" width="750" height="367"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frbxb64bkeqcvvhs3qfij.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frbxb64bkeqcvvhs3qfij.png" alt="Image description" width="606" height="602"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Firn6rwe7ac4picwk9ovb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Firn6rwe7ac4picwk9ovb.png" alt="Image description" width="500" height="681"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flobhzywwaqime7ipgsxf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flobhzywwaqime7ipgsxf.png" alt="Image description" width="500" height="661"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdav2h7jym7dsf6q3ij6i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdav2h7jym7dsf6q3ij6i.png" alt="Image description" width="500" height="458"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgh79fs9bj11iou7srzgr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgh79fs9bj11iou7srzgr.png" alt="Image description" width="800" height="646"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnaisfqs5zrnz5am71ajv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fnaisfqs5zrnz5am71ajv.png" alt="Image description" width="800" height="420"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1amk5nfz2yvm90m1tizx.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1amk5nfz2yvm90m1tizx.png" alt="Image description" width="640" height="449"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzplb1kg0xojnm8ejw9wf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzplb1kg0xojnm8ejw9wf.png" alt="Image description" width="700" height="465"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl2v6ye5q9qqluk5qa1nq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl2v6ye5q9qqluk5qa1nq.png" alt="Image description" width="800" height="640"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl259uxr53mz12d3b5qsf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fl259uxr53mz12d3b5qsf.png" alt="Image description" width="735" height="498"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fivbapasrauy5kawkxy18.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fivbapasrauy5kawkxy18.png" alt="Image description" width="500" height="564"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhvzbxeedw4llg3u6vdw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdhvzbxeedw4llg3u6vdw.png" alt="Image description" width="650" height="416"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0llfo6b8i8fdrmpxer5n.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0llfo6b8i8fdrmpxer5n.png" alt="Image description" width="800" height="420"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa8yxaeq3r1lg07i3c9e5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa8yxaeq3r1lg07i3c9e5.png" alt="Image description" width="450" height="387"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvwecwnwv5xe8gr0r6jx7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvwecwnwv5xe8gr0r6jx7.png" alt="Image description" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4bi69pb8ye66eo4knvh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz4bi69pb8ye66eo4knvh.png" alt="Image description" width="768" height="720"&gt;&lt;/a&gt;&lt;/p&gt;



&lt;p&gt;Dad joke:&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff0bw8cqa0iyxecg92pbj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ff0bw8cqa0iyxecg92pbj.png" alt="Image description" width="424" height="486"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also Merry Christmas to those who celebrate it! (Pacific standard time)  &lt;/p&gt;

</description>
    </item>
    <item>
      <title>what algorithm do you use to store your passwords?</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Wed, 15 Dec 2021 06:48:38 +0000</pubDate>
      <link>https://dev.to/__manucodes/what-algorithm-do-you-use-to-store-your-passwords-5ci9</link>
      <guid>https://dev.to/__manucodes/what-algorithm-do-you-use-to-store-your-passwords-5ci9</guid>
      <description>&lt;p&gt;Yes, technically, you should be using Argon2 or Bcrypt or PBKDF2.&lt;/p&gt;

&lt;p&gt;Argon2 is actually really secure. &lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;​Argon2 is modern ASIC-resistant and GPU-resistant secure key derivation function. It has better password cracking resistance (when configured correctly) than PBKDF2, Bcrypt and Scrypt (for similar configuration parameters for CPU and RAM usage).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;If anyone here uses md5, sha512, sha256, or any weird hashing algorithms, I'll be upset.&lt;/p&gt;

&lt;p&gt;This was me when i started PHP:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$password&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;md5&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;md5&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;md5&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;md5&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$_GET&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'password'&lt;/span&gt;&lt;span class="p"&gt;]))));&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The correct way:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$password&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nb"&gt;password_hash&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nv"&gt;$_POST&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;"password"&lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt; &lt;span class="no"&gt;PASSWORD_ARGON2I&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>How to create a sleek "baseline" animation in CSS under 15 lines of code</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Mon, 29 Nov 2021 17:24:26 +0000</pubDate>
      <link>https://dev.to/__manucodes/how-to-create-a-sleek-baseline-animation-in-css-under-15-lines-of-code-386o</link>
      <guid>https://dev.to/__manucodes/how-to-create-a-sleek-baseline-animation-in-css-under-15-lines-of-code-386o</guid>
      <description>&lt;p&gt;Off late, I've been obsessed with this trend in web pages. I saw this animation in Canva. Here's how to make it: &lt;/p&gt;

&lt;h4&gt;
  
  
  Step 1
&lt;/h4&gt;

&lt;p&gt;Let's create some HTML. We'll need a &lt;code&gt;span&lt;/code&gt; element.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;h1&amp;gt;&lt;/span&gt;
  &lt;span class="nt"&gt;&amp;lt;span&lt;/span&gt; &lt;span class="na"&gt;class=&lt;/span&gt;&lt;span class="s"&gt;"text"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Hello, World!&lt;span class="nt"&gt;&amp;lt;/span&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;/h1&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  Step 2
&lt;/h3&gt;

&lt;p&gt;Let's create some CSS&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;h1&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;overflow&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;hidden&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nt"&gt;h1&lt;/span&gt; &lt;span class="nc"&gt;.text&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;font-family&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="n"&gt;-apple-system&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;BlinkMacSystemFont&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s1"&gt;"Segoe UI"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;Roboto&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;Oxygen-Sans&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;Ubuntu&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="n"&gt;Cantarell&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="s1"&gt;"Helvetica Neue"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="nb"&gt;sans-serif&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;inline-block&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;animation&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;baseline&lt;/span&gt; &lt;span class="m"&gt;0.5s&lt;/span&gt; &lt;span class="n"&gt;forwards&lt;/span&gt; &lt;span class="n"&gt;cubic-bezier&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;.4&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;.39&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="m"&gt;1.04&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="k"&gt;@keyframes&lt;/span&gt; &lt;span class="nb"&gt;baseline&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="err"&gt;0&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;transform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;translateY&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;140%&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
  &lt;span class="err"&gt;100&lt;/span&gt;&lt;span class="o"&gt;%&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nl"&gt;transform&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;translateY&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;

&lt;span class="c"&gt;/* Just for basic styles */&lt;/span&gt;
&lt;span class="nt"&gt;html&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;height&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;100vh&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;display&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;flex&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;justify-content&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;center&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;align-items&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;center&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="nt"&gt;body&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="nl"&gt;color&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="no"&gt;white&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="nl"&gt;background&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="m"&gt;#37474f&lt;/span&gt;
  &lt;span class="p"&gt;;&lt;/span&gt; 
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Explained&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif;&lt;/code&gt; - This is just for fancy stuff&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;display: inline-block;&lt;/code&gt; - We'll need this to animate the transform property&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;@keyframes baseline&lt;/code&gt; - This is the defined animation&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;overflow:hidden&lt;/code&gt; - Hides the overflow of the header&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Great! You've successfully made a baseline CSS animation. Hit the ❤️ button if you liked this post!&lt;br&gt;
Demo: &lt;a href="https://jsfiddle.net/ManuTheCoder/xao1s6kd/68/" rel="noopener noreferrer"&gt;https://jsfiddle.net/ManuTheCoder/xao1s6kd/68/&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Crazy TLDs</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Mon, 29 Nov 2021 06:41:24 +0000</pubDate>
      <link>https://dev.to/__manucodes/crazy-tlds-32kl</link>
      <guid>https://dev.to/__manucodes/crazy-tlds-32kl</guid>
      <description>&lt;p&gt;Check out these weird domain extensions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;.eurovision - No seriously. Imagine typing "google.eurovision"&lt;/li&gt;
&lt;li&gt;.genting&lt;/li&gt;
&lt;li&gt;.gent&lt;/li&gt;
&lt;li&gt;.george&lt;/li&gt;
&lt;li&gt;.sucks&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;.computer&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;.meme&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;.wtf&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;.online&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;.website&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;.dot - Yes, I know. &lt;em&gt;facepalm&lt;/em&gt;
&lt;/li&gt;
&lt;li&gt;.rehab&lt;/li&gt;
&lt;li&gt;.democrat&lt;/li&gt;
&lt;li&gt;.republican&lt;/li&gt;
&lt;li&gt;.ooo&lt;/li&gt;
&lt;li&gt;.goo&lt;/li&gt;
&lt;li&gt;.off&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And check out: &lt;a href="http://EE.EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE.EE" rel="noopener noreferrer"&gt;http://EE.EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE.EE&lt;/a&gt;&lt;br&gt;
and&lt;br&gt;
&lt;a href="http://3.141592653589793238462643383279502884197169399375105820974944592.com/" rel="noopener noreferrer"&gt;http://3.141592653589793238462643383279502884197169399375105820974944592.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you liked this post, make sure to hit the like button ❤️&lt;br&gt;
Follow me on GitHub: &lt;a href="https://github.com/manuthecoder" rel="noopener noreferrer"&gt;https://github.com/manuthecoder&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Yes, these are emoji buttons</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Sat, 20 Nov 2021 23:07:52 +0000</pubDate>
      <link>https://dev.to/__manucodes/yes-these-are-emoji-buttons-1pf8</link>
      <guid>https://dev.to/__manucodes/yes-these-are-emoji-buttons-1pf8</guid>
      <description>&lt;p&gt;Take a look at this horrid button in CSS. Click on it.&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/ManuTheCoder/embed/JjyVdPr?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt; &lt;span class="nt"&gt;style&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"padding:0;border:0;background:transparent;outline:0;font-size: 100px"&lt;/span&gt; &lt;span class="nt"&gt;onclick&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s1"&gt;"if(this.innerText=='🔲'){this.innerText='🔳'}else {this.innerText='🔲'}"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;&lt;span class="err"&gt;🔲&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;button&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The purpose of this post is to let you know that you can use emojis in JavaScript, CSS, and HTML.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>What's your favorite time to code?</title>
      <dc:creator>manu</dc:creator>
      <pubDate>Fri, 05 Nov 2021 04:27:54 +0000</pubDate>
      <link>https://dev.to/__manucodes/whats-your-favorite-time-to-code-4091</link>
      <guid>https://dev.to/__manucodes/whats-your-favorite-time-to-code-4091</guid>
      <description>&lt;p&gt;Many developers love to code during the night (like me), early in the morning, or even mid-afternoon. What's your favorite time?&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
