<?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: sasasasasmmm</title>
    <description>The latest articles on DEV Community by sasasasasmmm (@mmm).</description>
    <link>https://dev.to/mmm</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%2F383142%2F8e2c03ce-3fe4-4ae7-b569-86b626902c35.jpg</url>
      <title>DEV Community: sasasasasmmm</title>
      <link>https://dev.to/mmm</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mmm"/>
    <language>en</language>
    <item>
      <title>How we achieved 1000 User in one Month </title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Tue, 23 Jun 2020 18:33:19 +0000</pubDate>
      <link>https://dev.to/mmm/how-we-achieved-1000-users-in-one-month-403e</link>
      <guid>https://dev.to/mmm/how-we-achieved-1000-users-in-one-month-403e</guid>
      <description>&lt;p&gt;snipbits was started at the end of Mai (last Month), Here are the most useful things I learned:&lt;br&gt;
1- SEO is superpower few devs have&lt;br&gt;
2- post's title is as important as the content&lt;br&gt;
3- Building a blog is like building a product. You can't just say, "I'm my own user" and expect what's interesting to you will be interesting to them. A combination of SEO + reader psychology is the key to writing what people want to read and share.&lt;br&gt;
4- people do use social sharing buttons (thanks for sharing our Blog Posts with your friends )&lt;br&gt;
5- Updating old posts is more efficient than writing new ones &lt;br&gt;
6- the number of posts is still important (most of the traffic is generated by only 2 posts) &lt;/p&gt;

&lt;p&gt;Finally thanks for visiting &lt;a href="https://www.snipbits.dev/"&gt;https://www.snipbits.dev/&lt;/a&gt; and sharing our articles with your friends &lt;/p&gt;

</description>
      <category>analytics</category>
      <category>seo</category>
      <category>writing</category>
    </item>
    <item>
      <title>Build a toggle Component with reactjs and hooks</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Sat, 30 May 2020 11:13:24 +0000</pubDate>
      <link>https://dev.to/mmm/build-a-toggle-component-with-reactjs-and-hooks-514a</link>
      <guid>https://dev.to/mmm/build-a-toggle-component-with-reactjs-and-hooks-514a</guid>
      <description>&lt;p&gt;&lt;a href="https://www.snipbits.dev/react-toggle-component"&gt;https://www.snipbits.dev/react-toggle-component&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>hooks</category>
      <category>beginners</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Async await Functions in Javascript</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Thu, 28 May 2020 14:32:40 +0000</pubDate>
      <link>https://dev.to/mmm/async-await-functions-in-javascript-2mdp</link>
      <guid>https://dev.to/mmm/async-await-functions-in-javascript-2mdp</guid>
      <description>&lt;p&gt;&lt;a href="https://www.snipbits.dev/js-async-await"&gt;https://www.snipbits.dev/js-async-await&lt;/a&gt;&lt;/p&gt;

</description>
      <category>async</category>
      <category>await</category>
      <category>promise</category>
      <category>javascript</category>
    </item>
    <item>
      <title>using the cache api of the browser</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Wed, 27 May 2020 16:17:57 +0000</pubDate>
      <link>https://dev.to/mmm/using-the-cache-api-of-the-browser-2641</link>
      <guid>https://dev.to/mmm/using-the-cache-api-of-the-browser-2641</guid>
      <description>&lt;p&gt;&lt;a href="https://www.snipbits.dev/cache-api-javascript"&gt;https://www.snipbits.dev/cache-api-javascript&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>cache</category>
      <category>browser</category>
      <category>api</category>
    </item>
    <item>
      <title>How to detect the Browser window Size with Hooks</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Tue, 26 May 2020 19:21:25 +0000</pubDate>
      <link>https://dev.to/mmm/how-to-detect-the-browser-window-size-with-hooks-4mn3</link>
      <guid>https://dev.to/mmm/how-to-detect-the-browser-window-size-with-hooks-4mn3</guid>
      <description>&lt;p&gt;&lt;a href="https://www.snipbits.dev/windowsize-reactjs"&gt;https://www.snipbits.dev/windowsize-reactjs&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>hooks</category>
      <category>reactnative</category>
      <category>browser</category>
    </item>
    <item>
      <title>Methods to Clone an Array in JS</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Sat, 16 May 2020 12:48:23 +0000</pubDate>
      <link>https://dev.to/mmm/methods-to-clone-an-array-in-js-2k3a</link>
      <guid>https://dev.to/mmm/methods-to-clone-an-array-in-js-2k3a</guid>
      <description>&lt;p&gt;&lt;a href="https://www.snipbits.dev/js-clone-array"&gt;https://www.snipbits.dev/js-clone-array&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>arrays</category>
      <category>webdev</category>
    </item>
    <item>
      <title>monitoring State with Usehover 
</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Tue, 12 May 2020 13:36:58 +0000</pubDate>
      <link>https://dev.to/mmm/monitoring-state-with-usehover-2k1f</link>
      <guid>https://dev.to/mmm/monitoring-state-with-usehover-2k1f</guid>
      <description>&lt;p&gt;monitor the hover state of any element that we attach a ref to !&lt;br&gt;&lt;br&gt;
&lt;a href="https://codesandbox.io/s/adoring-currying-gc023"&gt;https://codesandbox.io/s/adoring-currying-gc023&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>hooks</category>
      <category>hover</category>
    </item>
    <item>
      <title>Fetch in Reactjs</title>
      <dc:creator>sasasasasmmm</dc:creator>
      <pubDate>Sun, 10 May 2020 12:00:57 +0000</pubDate>
      <link>https://dev.to/mmm/fetch-in-reactjs-508n</link>
      <guid>https://dev.to/mmm/fetch-in-reactjs-508n</guid>
      <description>&lt;p&gt;A hook that implements &lt;code&gt;fetch&lt;/code&gt; in a declarative manner.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Create a custom hook that takes a &lt;code&gt;url&lt;/code&gt; and &lt;code&gt;options&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Use the &lt;code&gt;React.useState()&lt;/code&gt; hook to initialize the &lt;code&gt;response&lt;/code&gt; and &lt;code&gt;error&lt;/code&gt; state variables.&lt;/li&gt;
&lt;li&gt;Use the &lt;code&gt;React.useEffect()&lt;/code&gt; hook to anychronously call &lt;code&gt;fetch()&lt;/code&gt; and update the state variables accordingly.&lt;/li&gt;
&lt;li&gt;Return an object containting the &lt;code&gt;response&lt;/code&gt; and &lt;code&gt;error&lt;/code&gt; state variables.
&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;useFetch&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;options&lt;/span&gt;&lt;span class="p"&gt;)&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;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setResponse&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
  &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;error&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;setError&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;useState&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="nx"&gt;React&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;useEffect&lt;/span&gt;&lt;span class="p"&gt;(()&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;const&lt;/span&gt; &lt;span class="nx"&gt;fetchData&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;async&lt;/span&gt; &lt;span class="p"&gt;()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="k"&gt;try&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;res&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;fetch&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;url&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;options&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;json&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;await&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;json&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
        &lt;span class="nx"&gt;setResponse&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;json&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
      &lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;catch&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;error&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="nx"&gt;setError&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;error&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="nx"&gt;fetchData&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="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;error&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;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight jsx"&gt;&lt;code&gt;&lt;span class="c1"&gt;//Example&lt;/span&gt;
&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;ImageFetch&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;props&lt;/span&gt;&lt;span class="p"&gt;)&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;const&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;useFetch&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://dog.ceo/api/breeds/image/random&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="k"&gt;if&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="o"&gt;!&lt;/span&gt;&lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;response&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="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;Loading...&lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;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;imageUrl&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;res&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;message&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;gt;&lt;/span&gt;
      &lt;span class="p"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nt"&gt;img&lt;/span&gt; &lt;span class="na"&gt;src&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="nx"&gt;imageUrl&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; &lt;span class="na"&gt;alt&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"avatar"&lt;/span&gt; &lt;span class="na"&gt;width&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="mi"&gt;400&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt; &lt;span class="na"&gt;height&lt;/span&gt;&lt;span class="p"&gt;=&lt;/span&gt;&lt;span class="s"&gt;"auto"&lt;/span&gt; &lt;span class="p"&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class="p"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="nt"&gt;div&lt;/span&gt;&lt;span class="p"&gt;&amp;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;ReactDOM&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;render&lt;/span&gt;&lt;span class="p"&gt;(&amp;lt;&lt;/span&gt;&lt;span class="nc"&gt;ImageFetch&lt;/span&gt; &lt;span class="p"&gt;/&amp;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;getElementById&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;root&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;h4&gt;
  
  
  Live Demo
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://codesandbox.io/s/xenodochial-wind-z2djq?file=/src/index.js"&gt;https://codesandbox.io/s/xenodochial-wind-z2djq?file=/src/index.js&lt;/a&gt;&lt;/p&gt;

&lt;h4&gt;
  
  
  More Code Snippets
&lt;/h4&gt;

&lt;p&gt;&lt;a href="https://www.snipbits.dev/"&gt;https://www.snipbits.dev/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>fetch</category>
      <category>usestate</category>
      <category>useeffect</category>
    </item>
  </channel>
</rss>
