<?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: Natalia</title>
    <description>The latest articles on DEV Community by Natalia (@nerdy_girl).</description>
    <link>https://dev.to/nerdy_girl</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%2F199048%2F6c02b810-f605-48c5-8178-59b93b9adcc8.jpg</url>
      <title>DEV Community: Natalia</title>
      <link>https://dev.to/nerdy_girl</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nerdy_girl"/>
    <language>en</language>
    <item>
      <title>[Boost]</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Wed, 25 Feb 2026 12:01:29 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/-52k5</link>
      <guid>https://dev.to/nerdy_girl/-52k5</guid>
      <description>&lt;p&gt;

&lt;/p&gt;
&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/ismail9k/once-upon-a-time-writing-code-was-fun-62" class="crayons-story__hidden-navigation-link"&gt;Once Upon a Time, Writing Code Was Fun&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/ismail9k" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F49118%2Ffed17af7-5b8c-479f-a8cd-62df6a536fe2.jpg" alt="ismail9k profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/ismail9k" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Abdelrahman Ismail
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Abdelrahman Ismail
                
              
              &lt;div id="story-author-preview-content-3282235" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/ismail9k" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F49118%2Ffed17af7-5b8c-479f-a8cd-62df6a536fe2.jpg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Abdelrahman Ismail&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/ismail9k/once-upon-a-time-writing-code-was-fun-62" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Feb 24&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/ismail9k/once-upon-a-time-writing-code-was-fun-62" id="article-link-3282235"&gt;
          Once Upon a Time, Writing Code Was Fun
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/ai"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;ai&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/programming"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;programming&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/development"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;development&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/ismail9k/once-upon-a-time-writing-code-was-fun-62" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/fire-f60e7a582391810302117f987b22a8ef04a2fe0df7e3258a5f49332df1cec71e.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;131&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/ismail9k/once-upon-a-time-writing-code-was-fun-62#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              51&lt;span class="hidden s:inline"&gt; comments&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;




</description>
      <category>ai</category>
      <category>programming</category>
      <category>development</category>
    </item>
    <item>
      <title>box-decoration-break property</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Mon, 20 Jan 2020 23:31:40 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/box-decoration-break-property-4ka8</link>
      <guid>https://dev.to/nerdy_girl/box-decoration-break-property-4ka8</guid>
      <description>&lt;p&gt;Intro, motto, greeting or tagline. A brief paragraph is the first thing you can see on most of the websites when you enter them. Most of them are multi-lined but also boring and plain. While breaking the text into multiple pieces you can create interesting effects that can convince the recipient to stay longer on the page. By adding just one parameter to the CSS you can make it way more interesting.  Let's see how we can achieve it.&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;box-decoration-break&lt;/code&gt; property specifies how an element will be rendered across multiple lines, columns and pages. It is really important to wrap your text in &lt;code&gt;span&lt;/code&gt; tag instead of &lt;code&gt;div&lt;/code&gt; to make this attribute work properly. Depending on what value it will get - it may break the element into fragments with new borders and space or let it stay as a continuous box at a line break. The property takes five values - &lt;code&gt;initial&lt;/code&gt;, &lt;code&gt;inherit&lt;/code&gt;, &lt;code&gt;unset&lt;/code&gt;, &lt;code&gt;slice&lt;/code&gt; and &lt;code&gt;clone&lt;/code&gt;. For us two most important are:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;b&gt;Slice&lt;/b&gt; - default value - keeps the break very visible as it doesn't copy the decorations at the edges. They are applied to the element as a whole and break at the edges of its fragments. Additional properties like &lt;code&gt;border&lt;/code&gt;, &lt;code&gt;padding&lt;/code&gt; or &lt;code&gt;box-shadow&lt;/code&gt; are not inserted at a break.&lt;/li&gt;
&lt;li&gt;
&lt;b&gt;Clone&lt;/b&gt; - copies the decorations and applies them to the element as if they were individual parts. Each box fragment is rendered with specified properties wrapping each of it independently.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Both described values have a meaningful impact on the appearance of other properties. Different behaviour will have &lt;code&gt;background&lt;/code&gt;, &lt;code&gt;border&lt;/code&gt;, &lt;code&gt;box-shadow&lt;/code&gt;, &lt;code&gt;margin&lt;/code&gt; and &lt;code&gt;padding&lt;/code&gt; attributes. As playing with spacing may be pretty easy to imagine the rest of them are more difficult to visualise without examples. To make it more clear let's talk about the difference between each property separately. &lt;/p&gt;

&lt;p&gt;Let's start with the &lt;code&gt;background&lt;/code&gt; property first. While using slice value the whole text is treated as one line and cut it into sections without multiplying the colour effect. An interesting thing you can observe in this example are the spaces between the words. The spacing on the breaks behaves exactly the same as &lt;code&gt;background&lt;/code&gt; - the paddings are not applied to the edges. On the other hand, the &lt;code&gt;clone&lt;/code&gt; value clips the background to the shape of in each line and applies it across all the lined of the text. For a better comparison of the effect, I decided to use a gradient instead of a solid colour. See the example below:&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/ItsMeNatalie/embed/ymvEQB?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;&lt;code&gt;border&lt;/code&gt; is next really useful property that changes depending on &lt;code&gt;box-decoration-break&lt;/code&gt; value. With &lt;code&gt;clone&lt;/code&gt; the border is cropped in the edges. With &lt;code&gt;slice&lt;/code&gt; the shape is copied across the broken lines along with padding and margin. Additional customisation which you can add to this attribute is &lt;code&gt;border-image&lt;/code&gt;. By using it with image or gradient it will behave in the same way as colours in the previous example.&lt;br&gt;
&lt;iframe height="600" src="https://codepen.io/ItsMeNatalie/embed/WNbpmYN?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;As we've seen in the above examples &lt;code&gt;box-decorations-break&lt;/code&gt; property opens up a lot of possibilities in creating taglines and intros for websites. It lets us control how the box decorations will be drawn across the edges of the sliced element. Thanks to that we can create interesting designs across the lines of the text. It's really important to remember that despite using the &lt;code&gt;-webkit&lt;/code&gt; prefix - the property still lacks any support in Internet Explorer and Edge.  For more information please head over to &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/box-decoration-break" rel="noopener noreferrer"&gt;the official documentation in MDN&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>tutorial</category>
      <category>css</category>
      <category>beginners</category>
      <category>webdev</category>
    </item>
    <item>
      <title>September’s CodePen challenges</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Mon, 07 Oct 2019 21:39:38 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/september-s-codepen-challenges-3141</link>
      <guid>https://dev.to/nerdy_girl/september-s-codepen-challenges-3141</guid>
      <description>&lt;p&gt;&lt;a href="https://cdn.sanity.io/images/0ugmrqfk/production/5b08d820ffc6d09b06b1eb1b7d10388fbcb50230-1280x854.jpg?rect=0,67,1280,720&amp;amp;w=1200&amp;amp;h=675&amp;amp;auto=format" rel="noopener noreferrer"&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%2Fp372fwavaxeyhkl16pnh.jpg" alt="Limitations CodePen Challenge hero image" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;September’s &lt;a href="https://codepen.io/challenges" rel="noopener noreferrer"&gt;CodePen.io&lt;/a&gt; challenges brought us new fun opportunities to improve our programming skills. The theme was really unique – each week we had to follow a different type of a limitation. I’ll show you what I’ve designed with a short description. So sit comfortably and let’s embrace the limitations together!&lt;/p&gt;

&lt;p&gt;The first week of the challenges was called “Think small”. Its limitation was a specific size within which we had to design – 100 x 50 pixels. To avoid creating something simple like a button I started looking for inspiration. The theme reminded me about old retro games and pixel arts which had this type of restrictions. As a huge fan of PacMan – the choice was easy. My main idea was to create a loader where a character just appears on the left side and disappears on the right side. The difficulty I had to embrace was to find all the colours from the first edition of the game. With established colour palette I’ve created the basic animation of Pacman. But it wasn’t enough. After adding small bits like border on the top and the bottom I’ve decided to add running away ghosts and this was a nightmare. I’ve never expected that creating these creatures would be so difficult! But at the end of the day, I am satisfied with the result.&lt;/p&gt;

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

&lt;p&gt;Week 2 was focused around number 5. Participants had to create anything but the limitation was to use at most five lines of code for each language. “5 lines of HTML, 5 lines of CSS, 5 lines of JavaScript”. Of course, a line is a really subjective thing as you can minify your code – but there is no fun in bending the rules.&lt;/p&gt;

&lt;p&gt;The most challenging part this week was to come up with an idea. Each design I tried to create wouldn’t fit in 5 lines of code. Finally, I’ve decided to create an animated loader. Each dot had been created as SVG and looped in Slim. To use SCSS effectively I wrote only keyframes of the animation sequence. Styling elements was the last bit I struggled with. In order to do that I’ve created an array with colours in JavaScript and assigned each of them using loop function. Thanks to that I could also attach the delayed animation to every element.&lt;/p&gt;

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

&lt;p&gt;The 3rd week was the most difficult one so far. The visual output had to be reached by using black and white colours along with the letter “A”. My main idea was to use different types of font to create a landscape. In the beginning, I wanted to create a beach where &lt;a href="https://fonts.google.com/specimen/Turret+Road" rel="noopener noreferrer"&gt;Turret Road&lt;/a&gt; would be used to create houses and &lt;a href="https://fonts.google.com/specimen/Monoton" rel="noopener noreferrer"&gt;Monoton&lt;/a&gt; to form waves. Unfortunately, I couldn’t find enough free to use fonts to create everything I needed. I’ve decided to create a flower with animated butterflies after scrolling through Google Fonts for a long time. And here it is!🙂&lt;/p&gt;

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

&lt;p&gt;The last week’s challenge came up looser as the only restriction was to use arrows as a brush. And as you know there are a lot of types of arrows – twisty ones, long ones, short ones, etc. I started to look for inspiration in wallpapers (!) and I found &lt;a href="https://i.pinimg.com/originals/9b/94/0a/9b940a7567b15a1e5b03029c573e9c45.jpg" rel="noopener noreferrer"&gt;a blue Japanese pattern&lt;/a&gt; which I really liked. I decided to achieve it by rotating different colours of squares nested one inside the other. In the end, I’ve switched colours to greenish palette and add a small box-shadow below each arrow to create depth.&lt;/p&gt;

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

&lt;p&gt;It was my first participation in CodePen’s monthly challenge. I’m really surprised how much it allowed me to explore my imagination. I had always wanted to create a unique loader and finally, I had an opportunity and idea to do that. What’s more, I fell in love with patterns and I definitely will create more of them from now on. Today a new theme for October’s challenges has just been announced and I’m already thrilled with what’s coming next!&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>css</category>
      <category>productivity</category>
    </item>
    <item>
      <title>backdrop-filter property</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Tue, 10 Sep 2019 17:33:37 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/backdrop-filter-property-3bah</link>
      <guid>https://dev.to/nerdy_girl/backdrop-filter-property-3bah</guid>
      <description>&lt;p&gt;&lt;a href="https://cdn.sanity.io/images/0ugmrqfk/production/4b59318ec922a787645b6800c0ffe4407f713e2e-1440x744.png?rect=59,0,1323,744&amp;amp;w=1200&amp;amp;h=675&amp;amp;auto=format" rel="noopener noreferrer"&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%2Fzzn5yccyfi7e7n8u9nqg.png" alt="backdrop-filter property hero" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;“Frosted glass” effect kicked around the Internet more than 10 years ago and it’s still popular. You can create a faded background effect and other complex design effects with just a single line of CSS!&lt;/p&gt;

&lt;p&gt;The &lt;code&gt;backdrop-filter&lt;/code&gt; is an animatable CSS property which allows applying various graphical effects to the area behind an element. Thanks to this property you can achieve different effects such as blurring, colour shifting or frosted glass. The “backdrop” basically describes everything of the drawn content that lies behind the specified item. While using it in SVG it applies an effect to a container but excludes the &lt;code&gt;defs&lt;/code&gt; tags. Element or its background needs to be at least partially transparent to see them because they are applied to everything that is behind.&lt;/p&gt;

&lt;p&gt;While using the &lt;code&gt;backdrop-filter&lt;/code&gt; property you can choose from many filter values:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;blur()&lt;/code&gt; – applies a distance measurement within which pixels are scattered. It makes the element less clear. Strength is indicated by the number you use. The higher the value, the less distinct item will be.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--v8iKBrmj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://codemenatalie.com/wp-content/uploads/2019/09/backdrop-filter-blur-560x147.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--v8iKBrmj--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://codemenatalie.com/wp-content/uploads/2019/09/backdrop-filter-blur-560x147.png" alt="blur effect" width="560" height="147"&gt;&lt;/a&gt;blur effect&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;brightness()&lt;/code&gt; – adjusts the brightness of the element’s colour. If you set the value below 1 the result will be darkened and numbers above 1 will lighten it. The filter accepts percentage or any number from 0 to infinity. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;contrast()&lt;/code&gt; – defines the element’s contrast by increasing the already light areas and decreasing the darker ones. It takes every pixel of the item and adjusts the difference between the light and dark values.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;grayscale()&lt;/code&gt; – changes the amount of light of the element while intensifying its colours between black and white. When you set the value to 1 or 100% the element will be completely grayscaled.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--839D2Nuu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://codemenatalie.com/wp-content/uploads/2019/09/backdrop-filter-grayscale-560x137.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--839D2Nuu--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://codemenatalie.com/wp-content/uploads/2019/09/backdrop-filter-grayscale-560x137.png" width="560" height="137"&gt;&lt;/a&gt;grayscale effect&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;invert()&lt;/code&gt; – generates the opposite colour of the element. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;hue-rotate()&lt;/code&gt; – specifies an angle around the colour circle that the element will be adjusted by. You can provide value from 0 to 360 in either degrees or radians. Each degree has its own colour – 0 is red, 120 is green and 240 is blue. That means if you have green pixel in your element and set the value to 240 your red pixel will be blue.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;none&lt;/code&gt; – doesn’t apply any filter to the backdrop.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;opacity()&lt;/code&gt; – applies transparency to the element’s colour.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;code&gt;saturate()&lt;/code&gt; – changes the intensity of the element’s colour making it appear more or less vivid. Setting the value to 2 (or 200%) will double the saturation. Decreasing the value will make the item look more greyish and blend.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--yHuHDdHP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://codemenatalie.com/wp-content/uploads/2019/09/backdrop-filter-saturate-560x137.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--yHuHDdHP--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800/https://codemenatalie.com/wp-content/uploads/2019/09/backdrop-filter-saturate-560x137.png" alt="backdrop filter saturate example" width="560" height="137"&gt;&lt;/a&gt;saturate effect&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;sepia()&lt;/code&gt; – applies a sepia tinge to the element what gives a warmer and more antique feeling.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Check out an example of all of them below:&lt;/p&gt;

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

&lt;p&gt;Please note that this property is not compatible with Edge and Internet Explorer. For more information, you should check &lt;a href="https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter" rel="noopener noreferrer"&gt;the official documentation&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>tutorial</category>
      <category>css</category>
      <category>beginners</category>
    </item>
    <item>
      <title>What do you wish to know about JavaScript when you were in university?</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Thu, 05 Sep 2019 19:56:27 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/what-do-you-wish-to-know-about-javascript-when-you-were-in-university-4pip</link>
      <guid>https://dev.to/nerdy_girl/what-do-you-wish-to-know-about-javascript-when-you-were-in-university-4pip</guid>
      <description>&lt;p&gt;Hey guys!&lt;/p&gt;

&lt;p&gt;I was asked if I would like to make a couple of lectures at the university about plain JavaScript (basics). And I would love to but I'm not sure where to start.&lt;/p&gt;

&lt;p&gt;So here we are. Some of us are years after school/uni and some of us are still there. What do you wish to know about JavaScript when you were in university? And what would you like to say to students right now?&lt;/p&gt;

&lt;p&gt;Any tips, help, ideas or even articles are welcome! 😁&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>help</category>
      <category>javascript</category>
    </item>
    <item>
      <title>"Waiting times" at work.</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Mon, 19 Aug 2019 15:01:41 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/waiting-times-at-work-315o</link>
      <guid>https://dev.to/nerdy_girl/waiting-times-at-work-315o</guid>
      <description>&lt;p&gt;Hey guys. We all know that this happens - waiting for a new project, a new task... Sometimes it happens for days or weeks. What do you do then?&lt;br&gt;
Normally I read about my technology stack, do some challenges, look for inspirations on Dribbble or CodePen. But what do you do? Can you recommend something creative?&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>productivity</category>
    </item>
    <item>
      <title>background-blend-mode property</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Mon, 12 Aug 2019 08:52:54 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/background-blend-mode-property-iia</link>
      <guid>https://dev.to/nerdy_girl/background-blend-mode-property-iia</guid>
      <description>&lt;p&gt;Some people think that stunning image effects can be achieved only in graphic editors – nothing could be further from the truth. Adobe’s Photoshop did not invent blend modes and you can use them to style your image dynamically with CSS.&lt;/p&gt;

&lt;p&gt;In my new blog post I described CSS &lt;code&gt;background-blend-mode&lt;/code&gt; property with examples: &lt;a href="https://cdn.sanity.io/images/0ugmrqfk/production/7ef97cbe6c227789b6903afc6c978a48e72473b0-1796x977.png?rect=0,236,1796,504&amp;amp;w=1200&amp;amp;h=337&amp;amp;auto=format" rel="noopener noreferrer"&gt;background-blend-mode property&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;And small CodePen preview of all properties:&lt;/p&gt;

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

&lt;p&gt;Enjoy and let me know what you think :) &lt;/p&gt;

</description>
      <category>css</category>
      <category>tutorial</category>
      <category>beginners</category>
    </item>
    <item>
      <title>You music playlists for productivity?</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Fri, 09 Aug 2019 09:23:07 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/you-music-playlists-for-productivity-mfo</link>
      <guid>https://dev.to/nerdy_girl/you-music-playlists-for-productivity-mfo</guid>
      <description>&lt;p&gt;Some people like to listen to classical/ambient music while working, others to rock or dubstep. What is your type?&lt;br&gt;
Please share some playlists or artists! I'm looking for something fresh! :)&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>productivity</category>
      <category>help</category>
    </item>
    <item>
      <title>What type of developer are you - light theme or dark theme?</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Sat, 03 Aug 2019 14:54:40 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/what-type-of-developer-are-you-light-theme-or-dark-theme-2boi</link>
      <guid>https://dev.to/nerdy_girl/what-type-of-developer-are-you-light-theme-or-dark-theme-2boi</guid>
      <description>&lt;p&gt;A lot of people say frontend developers use dark themes for their code editors and light one are used by backend developers. Do you agree with that statement? And why do you like light/dark themes you are using?&lt;/p&gt;

</description>
      <category>discuss</category>
      <category>webdev</category>
      <category>ux</category>
    </item>
    <item>
      <title>What do you hate the most in CSS and why?</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Wed, 31 Jul 2019 20:28:19 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/what-do-you-the-hate-most-in-css-and-why-1af3</link>
      <guid>https://dev.to/nerdy_girl/what-do-you-the-hate-most-in-css-and-why-1af3</guid>
      <description>&lt;p&gt;A lot of people hate CSS and styling. Like it's a rule that CSS is bad and unlearnable for them. And I'm &lt;strong&gt;not&lt;/strong&gt; one of them. I love it (sorry not sorry for being weirdo :P ). But I want to know what you hate in CSS? And why? What is your point of view? &lt;/p&gt;

</description>
      <category>discuss</category>
      <category>css</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Connecting Redux Form with React Redux</title>
      <dc:creator>Natalia</dc:creator>
      <pubDate>Sun, 28 Jul 2019 11:27:58 +0000</pubDate>
      <link>https://dev.to/nerdy_girl/connecting-redux-form-with-react-redux-ml4</link>
      <guid>https://dev.to/nerdy_girl/connecting-redux-form-with-react-redux-ml4</guid>
      <description>&lt;p&gt;Dealing with forms in React can be troublesome sometimes. You need to take care of proper state management, smooth user experience, simple form declarations, reusable components, etc. But the reason I moved to Redux Form was validation. I wanted to make the implementation of forms easier and quicker without adding a lot of code to my page's components. But I hit the wall when I tried to connect Redux Form with React Redux.&lt;/p&gt;

&lt;p&gt;It wasn't the first time I was doing this so I did not expect any difficulties. I was wrong. With up to date dependencies I tried many different approaches while connecting &lt;code&gt;reduxForm&lt;/code&gt; and &lt;code&gt;connect()&lt;/code&gt; function. From putting one inside the other to connecting exported component with each function separately. Nothing was working properly. Regardless of what I tried, I ended up with this error message:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Uncaught Invariant Violation:
You must pass a component to the function returned by connect.
Instead received {"displayName":"ReduxForm",
"defaultProps": {destroyOnUnmount":true, "form":"loginForm", etc.}}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;I decided to look for help on the Internet. There was no straight answer helping me with what am I missing or how should I do it properly. And apparently, people still struggle with this problem. Checking StackOverflow and other forums resulted in finding only outdated working versions. Even official example from &lt;a href="https://redux-form.com/8.2.2/docs/faq/howtoconnect.md/" rel="noopener noreferrer"&gt;redux-form documentation&lt;/a&gt; wasn't working! I've decided to try baby steps method by connecting each part separately in different files. I ended up with an additional file &lt;code&gt;container.tsx&lt;/code&gt; where I connected the component at a higher level. Let's see what happened.&lt;/p&gt;

&lt;p&gt;First, let's connect a form component I created earlier with Redux Form:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import React from 'react'; 
import { Field, InjectedFormProps, reduxForm } from 'redux-form';

export interface IDispatchProps {
  //...
}

const LoginComponent = (props:IDispatchProps) =&amp;gt; (
  &amp;lt;form&amp;gt;...&amp;lt;/form&amp;gt;
);

export const LoginForm = reduxForm({
  form: 'loginForm',
})(LoginComponent);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Next, let’s see how we can implement a container for that component:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import * as React from 'react';
import { connect } from 'react-redux';

import { LoginForm, IProps } from './LoginForm';
import actions from './actions';
import selector from './selector';

const LoginContainer = (props:IProps) =&amp;gt;
  &amp;lt;LoginForm {...props} /&amp;gt;;

export default connect(selector, actions)(LoginContainer);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;What we are doing is we take the created &lt;code&gt;LoginComponent&lt;/code&gt; function and wrap it with &lt;code&gt;reduxForm&lt;/code&gt;. In &lt;code&gt;container.tsx&lt;/code&gt; file &lt;code&gt;LoginContainer&lt;/code&gt; function will pass our props to the imported component. In the end, we use &lt;code&gt;connect()&lt;/code&gt; to create communication between our container and store props. The most tricky part starts if we want to add TypeScript to our form and do not use &lt;code&gt;any&lt;/code&gt; at all! Leaving basic component's props will throw the error saying our props do not exist in this component. But we just passed it, right?&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;TS2559: Type '{ loginAction: () =&amp;gt; any; }' has no properties in common with type
'IntrinsicAttributes &amp;amp; IntrinsicClassAttributes&amp;lt;FormInstance&amp;lt;{},
Partial&amp;lt;ConfigProps&amp;lt;{}, {}, string&amp;gt;&amp;gt;, string&amp;gt;&amp;gt; &amp;amp; Readonly
&amp;lt;Partial&amp;lt;ConfigProps&amp;lt;{}, {}, string&amp;gt;&amp;gt;&amp;gt; &amp;amp; Readonly&amp;lt;...&amp;gt;'.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;It took me at least an hour to figure it out and answer "why?". I decided to reach for help to the Internet again but the only answers I found weren't clear what was happening and where I should put my props. After a couple of tries, I finally found a solution which was sensible and I was happy with. First of all, in &lt;code&gt;LoginForm.tsx&lt;/code&gt; file we need to create an interface &lt;code&gt;IFormProps&lt;/code&gt; with the names of the fields that are in our form. Next we need to import type definition of &lt;code&gt;InjectedFormProps&lt;/code&gt; from &lt;code&gt;redux-form&lt;/code&gt; library and combine it with our props interface. InjectedFormProps accepts two parameters: &lt;code&gt;FormProps = {}&lt;/code&gt; and &lt;code&gt;P={}&lt;/code&gt;. The first one represents form data which will be put in the form and the second one is our component's props. Theoretically, you can leave both objects empty. But that's not why we are using TypeScript, right?&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;import React from 'react'; 
import { Field, InjectedFormProps, reduxForm } from 'redux-form';

interface IFormProps {
  username:string;
  password:string;
}

export interface IDispatchProps {
  //...
}

const LoginComponent =
(props:IDispatchProps &amp;amp; InjectedFormProps&amp;lt;IFormProps, IDispatchProps&amp;gt;) =&amp;gt; (
  &amp;lt;form&amp;gt;
    &amp;lt;Field
      name="username"
      component={Input}
      type="text"
      label="Enter username"
    /&amp;gt;
    &amp;lt;Field
      name="password"
      component={Input}
      type="password"
      label="Enter password"
    /&amp;gt;
  &amp;lt;/form&amp;gt;
);

export const LoginForm = reduxForm&amp;lt;IFormProps, IDispatchProps&amp;gt;({
  form: 'loginForm',
})(LoginComponent);
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;To sum up, if you want to connect Redux Form with React Redux do yourself a favour and create another file which will be a bridge between those two libraries. And don't forget about &lt;code&gt;InjectedFormProps&lt;/code&gt; to combine it with TypeScript. And if you want to see an example check out my working implementation: &lt;a href="https://github.com/CodeMeNatalie/Redux-Forms-with-TypeScript" rel="noopener noreferrer"&gt;Redux Form with TypeScript&lt;/a&gt;. Good luck and see you next time! 👍🏻&lt;/p&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev.to%2Fassets%2Fgithub-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/Nerdy-Girl" rel="noopener noreferrer"&gt;
        Nerdy-Girl
      &lt;/a&gt; / &lt;a href="https://github.com/Nerdy-Girl/Redux-Forms-with-TypeScript" rel="noopener noreferrer"&gt;
        Redux-Forms-with-TypeScript
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Connecting Redux Form with React Redux Example
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;CodeMeNatalie
  &lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/7eea40c6594effb98dfe773756cb0de38203f2b8b0bae95bdfc050e9441dab17/687474703a2f2f636f64656d656e6174616c69652e636f6d2f77702d636f6e74656e742f75706c6f6164732f323031392f30372f72656475782d666f726d2e706e67"&gt;&lt;img src="https://camo.githubusercontent.com/7eea40c6594effb98dfe773756cb0de38203f2b8b0bae95bdfc050e9441dab17/687474703a2f2f636f64656d656e6174616c69652e636f6d2f77702d636f6e74656e742f75706c6f6164732f323031392f30372f72656475782d666f726d2e706e67" alt="redux form"&gt;&lt;/a&gt;
  &lt;/h3&gt;

&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Redux Forms with TypeScript&lt;/h3&gt;

&lt;/div&gt;


&lt;p&gt;This project is an example of working implementation of Redux Forms and TypeScript. Whole process is described in my article &lt;a href="https://github.com/Nerdy-Girl/Redux-Forms-with-TypeScriptcodemenatalie.com/blog/connecting-redux-form-and-connect" rel="noopener noreferrer"&gt;Connecting Redux Form and Connect&lt;/a&gt;.&lt;/p&gt;
&lt;br&gt;
  &lt;p&gt;&lt;br&gt;
  &lt;a href="https://codemenatalie.com" rel="nofollow noopener noreferrer"&gt;Website&lt;/a&gt; ◦ &lt;a href="http://codemenatalie.com/blog" rel="nofollow noopener noreferrer"&gt;Blog&lt;/a&gt;&lt;br&gt;
    &lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Quick start&lt;/h2&gt;

&lt;/div&gt;

&lt;ul&gt;
&lt;li&gt;Clone the repo: &lt;code&gt;git clone https://github.com/CodeMeNatalie/Redux-Form-with-TypeScript.git&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Install dependencies&lt;/li&gt;
&lt;li&gt;Run the app &lt;code&gt;npm start&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Open &lt;a href="http://localhost:3000" rel="nofollow noopener noreferrer"&gt;http://localhost:3000&lt;/a&gt; to view project in the browser.&lt;/li&gt;
&lt;/ul&gt;



&lt;p&gt;
&lt;a rel="noopener noreferrer nofollow" href="https://camo.githubusercontent.com/1eb4f26e480192e741423f241c0bd072eb2a2c426c6b40c2db8134ebc4b6f5b3/68747470733a2f2f6d656469612e67697068792e636f6d2f6d656469612f6d43524a446f323455764a4d412f67697068792e676966"&gt;&lt;img src="https://camo.githubusercontent.com/1eb4f26e480192e741423f241c0bd072eb2a2c426c6b40c2db8134ebc4b6f5b3/68747470733a2f2f6d656469612e67697068792e636f6d2f6d656469612f6d43524a446f323455764a4d412f67697068792e676966" alt="coding doge" width="498" height="360"&gt;&lt;/a&gt;
&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;Enjoy 💻&lt;/h3&gt;

&lt;/div&gt;

&lt;/div&gt;
&lt;br&gt;
&lt;br&gt;
  &lt;/div&gt;
&lt;br&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/Nerdy-Girl/Redux-Forms-with-TypeScript" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;br&gt;
&lt;/div&gt;
&lt;br&gt;


&lt;p&gt;Important notice: &lt;br&gt;
Article and example above were created with redux-form 8.2.2 and react-redux 6.0.1.&lt;/p&gt;

</description>
      <category>react</category>
      <category>redux</category>
      <category>typescript</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
