<?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: Hao</title>
    <description>The latest articles on DEV Community by Hao (@wheatup).</description>
    <link>https://dev.to/wheatup</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%2F179430%2F7c1cbb27-a002-4e63-8876-2195b2d0b19b.jpeg</url>
      <title>DEV Community: Hao</title>
      <link>https://dev.to/wheatup</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/wheatup"/>
    <language>en</language>
    <item>
      <title>Pure CSS - Road Trip After Sunset</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Fri, 27 Aug 2021 02:43:06 +0000</pubDate>
      <link>https://dev.to/wheatup/pure-css-road-trip-after-sunset-22nf</link>
      <guid>https://dev.to/wheatup/pure-css-road-trip-after-sunset-22nf</guid>
      <description>&lt;p&gt;A small project for the latest &lt;a href="https://codepen.io/challenges/2021/august/"&gt;CodePen Challenge&lt;/a&gt;. Hope this one sparks some inspirations :D&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/bGRNZjb?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>css</category>
      <category>webdev</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Lollipop Loading with @property</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Mon, 12 Apr 2021 05:46:33 +0000</pubDate>
      <link>https://dev.to/wheatup/lollipop-loading-with-property-4ggo</link>
      <guid>https://dev.to/wheatup/lollipop-loading-with-property-4ggo</guid>
      <description>&lt;p&gt;Recently I created a lollipop loading circle using only css.&lt;/p&gt;

&lt;p&gt;Usually I would create it with SVG, but now &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@property"&gt;&lt;code&gt;@property&lt;/code&gt;&lt;/a&gt; is a thing so now it's possible with only css!&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/@property"&gt;&lt;code&gt;@property&lt;/code&gt;&lt;/a&gt; is still an experimental technology and currently only works for &lt;a href="https://caniuse.com/mdn-css_at-rules_property"&gt;Chrome, Edge and Opera&lt;/a&gt;.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;But hope soon it will be shipped to most major browsers!&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/qBRXzGZ?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/WNoBrVe?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Have fun coding!&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>css</category>
      <category>showdev</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Simple DIV Image Cropper</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Tue, 20 Oct 2020 07:02:08 +0000</pubDate>
      <link>https://dev.to/wheatup/simple-div-image-cropper-51e5</link>
      <guid>https://dev.to/wheatup/simple-div-image-cropper-51e5</guid>
      <description>&lt;p&gt;A rather simple image cropper. Using only js/css. No canvas/SVG included.&lt;/p&gt;

&lt;p&gt;Hope it brings inspiration :)&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/abZmoZN?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>css</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Exploiting the generator to make a pause/resumable flow.</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Thu, 05 Mar 2020 03:13:55 +0000</pubDate>
      <link>https://dev.to/wheatup/exploiting-the-javascript-generator-to-make-a-pause-resumable-flow-56e9</link>
      <guid>https://dev.to/wheatup/exploiting-the-javascript-generator-to-make-a-pause-resumable-flow-56e9</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Sorry English is not my primary language, please bear with me :p&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Recently I've come up with an idea that I've never seen anyone has used it before.&lt;/p&gt;

&lt;p&gt;That is, to use generators as a linear flow control. &lt;/p&gt;

&lt;p&gt;Such as you have a liner program, but sometimes you need to pause it somewhere and resume it later when some condition is met or waiting for an user input.&lt;/p&gt;

&lt;p&gt;You don't want to make that program separate functions since it's messy and can fall into the callback hell easily. Also, that not looks linear at all!&lt;/p&gt;

&lt;p&gt;So I came up with this monstrosity:&lt;br&gt;
&lt;/p&gt;

&lt;div class="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;next&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;_&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="kd"&gt;function&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="c1"&gt;// ...&lt;/span&gt;
&lt;span class="p"&gt;})())).&lt;/span&gt;&lt;span class="nx"&gt;next&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;bind&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;_&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Essentially it's just this, but in one line:&lt;br&gt;
&lt;/p&gt;

&lt;div class="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;generator&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="kd"&gt;function&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="c1"&gt;// ...&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;iterator&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;generator&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;next&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;iterator&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;next&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;bind&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;iterator&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;What does this thing do? Let's have an example.&lt;br&gt;
Such as this interactive dialog. The first time when you run &lt;code&gt;next()&lt;/code&gt;, it will print the first dialogue, and stops at &lt;code&gt;yield&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Then you call the &lt;code&gt;next()&lt;/code&gt; function again. It starts where it was before, and print out the next dialogue. how cool is that?&lt;br&gt;
&lt;/p&gt;

&lt;div class="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;sarahStyle&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;color: orangered; margin-right: 1em;&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;yourStyle&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;color: lime; margin-right: 1em;&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;next&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;_&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="kd"&gt;function&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;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cSarah:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sarahStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hello, my name is Sarah. What is your name?&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;yield&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cYou:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;yourStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hi, my name is James. Nice to meet you.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;yield&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cSarah:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sarahStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Wanna go out for a walk?&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cSarah:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sarahStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Since it&lt;/span&gt;&lt;span class="se"&gt;\'&lt;/span&gt;&lt;span class="s1"&gt;s such a nice weather outside.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="k"&gt;yield&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cYou:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;yourStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Sure, why not?&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="nx"&gt;next&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;bind&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;_&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nx"&gt;next&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;next&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;span class="nx"&gt;next&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;But you might ask, why not just use &lt;code&gt;await&lt;/code&gt; like this?&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cSarah:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sarahStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hello, my name is Sarah. What is your name?&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;somethingIsDone&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cYou:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;yourStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Hi, my name is James. Nice to meet you.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;somethingIsDone&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cSarah:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sarahStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Wanna go out for a walk?&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="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;%cSarah:&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;sarahStyle&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;Since it&lt;/span&gt;&lt;span class="se"&gt;\'&lt;/span&gt;&lt;span class="s1"&gt;s such a nice weather outside.&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;That's a very good question.&lt;/p&gt;

&lt;p&gt;I think the generator solution has 2 major advantages:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;the &lt;code&gt;next()&lt;/code&gt; function returns a state object, which looks like this: &lt;code&gt;{value: undefined, done: false}&lt;/code&gt;. So you can easily determine whether this flow is done or not. But for async functions, you have to get the instance of the promise first.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;It resumes itself by just calling the &lt;code&gt;next()&lt;/code&gt; function again. If you're using a promise instead, you have to find a way to resolve the promise to make the flow continue, which is less straightforward.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Here's an example that I use this technique to create an installation simulator:&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/rNaJaqX?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Hope you find this is useful, happy coding :)&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Light Switch</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Wed, 20 Nov 2019 08:09:49 +0000</pubDate>
      <link>https://dev.to/wheatup/light-switch-c7j</link>
      <guid>https://dev.to/wheatup/light-switch-c7j</guid>
      <description>&lt;p&gt;Using only css and html. A switch that turns the light on and off :)&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/KKKJJyo?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>css</category>
      <category>showdev</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Pascal's Grapes</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Tue, 18 Jun 2019 02:34:43 +0000</pubDate>
      <link>https://dev.to/wheatup/pascal-s-grape-1fim</link>
      <guid>https://dev.to/wheatup/pascal-s-grape-1fim</guid>
      <description>&lt;p&gt;A pen for CodePen Challenge: June 2019.&lt;/p&gt;

&lt;p&gt;FOOD FIGHT 🍔 - FRUITS AND VEGGIES&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/xoOXrK?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>fractal</category>
      <category>css</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Uninstall Boi</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Fri, 14 Jun 2019 04:08:29 +0000</pubDate>
      <link>https://dev.to/wheatup/uninstall-boi-3k4o</link>
      <guid>https://dev.to/wheatup/uninstall-boi-3k4o</guid>
      <description>&lt;p&gt;You monster!&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/XLmzbe?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>ui</category>
      <category>javascript</category>
      <category>css</category>
    </item>
    <item>
      <title>Interactive Wheel Menu</title>
      <dc:creator>Hao</dc:creator>
      <pubDate>Wed, 12 Jun 2019 09:37:21 +0000</pubDate>
      <link>https://dev.to/wheatup/interactive-wheel-menu-21gh</link>
      <guid>https://dev.to/wheatup/interactive-wheel-menu-21gh</guid>
      <description>&lt;p&gt;Using javascript and css(non-svg) to make an hold-and-drag wheel menu. Much like an Overwatch/League of Legends style menu.&lt;/p&gt;

&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/wheatup/embed/GbgyLY?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>codepen</category>
      <category>ui</category>
      <category>javascript</category>
      <category>css</category>
    </item>
  </channel>
</rss>
