<?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: Eddort</title>
    <description>The latest articles on DEV Community by Eddort (@eddort).</description>
    <link>https://dev.to/eddort</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%2F397347%2F95f7eaaa-db85-45b8-b332-2d769180a219.png</url>
      <title>DEV Community: Eddort</title>
      <link>https://dev.to/eddort</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/eddort"/>
    <language>en</language>
    <item>
      <title>Introducing Quarkly – instrument for React devs and designers, that will help you optimize your workflow</title>
      <dc:creator>Eddort</dc:creator>
      <pubDate>Sat, 07 Nov 2020 20:19:27 +0000</pubDate>
      <link>https://dev.to/eddort/introducing-quarkly-instrument-for-react-devs-and-designers-that-will-help-you-optimize-your-workflow-15i6</link>
      <guid>https://dev.to/eddort/introducing-quarkly-instrument-for-react-devs-and-designers-that-will-help-you-optimize-your-workflow-15i6</guid>
      <description>&lt;p&gt;Hello world! Ideologically, &lt;a href="https://quarkly.io" rel="noopener noreferrer"&gt;Quarkly.io&lt;/a&gt; is a project dedicated to ease the life of web developers and designers. In this post, I will briefly tell you how we make it possible.&lt;/p&gt;

&lt;p&gt;First, let’s take a look at how a typical web app workflow looks like in 2020. There is a team, it has a designer and a developer. The former creates a design spec in Figma. The latter creates a design based on this spec, and transfers the theme. Then, the developer shows the results of his work to the designer in Storybook. Designer checks and approves it – if everything is fine, he creates mockups, and the developer uses the components from the spec to markup the final layout.&lt;/p&gt;

&lt;p&gt;So, to summarize:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Make a spec in Figma&lt;/li&gt;
&lt;li&gt;Adjust the environment for development&lt;/li&gt;
&lt;li&gt;Create an ui-kit&lt;/li&gt;
&lt;li&gt;Approval&lt;/li&gt;
&lt;li&gt;Create a Figma mockup&lt;/li&gt;
&lt;li&gt;Markup&lt;/li&gt;
&lt;li&gt;Adjust the assembler&lt;/li&gt;
&lt;li&gt;Get web app&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And now - let's imagine that you have optimized all these processes, and get it like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designer makes specs and mockups, and the developer helps with the logic (not always necessary – there are skeleton components)&lt;/li&gt;
&lt;li&gt;Get an app in 1 click&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;And all this is available right now with Quarkly!&lt;/p&gt;

&lt;p&gt;Working on our product, we always wanted to simplify the website or app creation process, while at the same time provide a competitive end-results, with clear, easy-to-read code.&lt;/p&gt;

&lt;p&gt;Quarkly allows creation of websites and webapps with both the mouse and the code – you have the pros of responsive editing, but at any moment you can open the code editor, and manually edit your app code manually. And everything will be synchronized perfectly.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=HqZ0quUWvmo" rel="noopener noreferrer"&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%2Fi%2Frk2ba8tgf5qx4hffmul1.png" alt="Create a Block in Quarkly" width="779" height="437"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Design tool + IDE + Module builder + Publisher
&lt;/h2&gt;

&lt;p&gt;Designers can work in Quarkly the same way as they are used to in Figma – they will find many familiar things in the interface. For developers, we have a module assembler in all its glory: hmr, npm-modules.&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Fi%2Fniq1m7xrtwc8e17fiqu2.png" class="article-body-image-wrapper"&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%2Fi%2Fniq1m7xrtwc8e17fiqu2.png" alt="Quarkly interface" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Fi%2Fu0wxtkqbbpqvy3h0no4f.png" class="article-body-image-wrapper"&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%2Fi%2Fu0wxtkqbbpqvy3h0no4f.png" alt="Quarkly interface" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Fi%2Fk0zxl1odhl4gr0il90ym.png" class="article-body-image-wrapper"&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%2Fi%2Fk0zxl1odhl4gr0il90ym.png" alt="Quarkly interface" width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Result of your common work is cbeing synchronized with GitHub (how could we forget versioning?), and can be published on Netlify with just one click.&lt;/p&gt;

&lt;p&gt;Additionally, you can always export your project as “create-react-app” or to Gatsby.&lt;/p&gt;

&lt;p&gt;So, straight from the box, you get all the necessary optimizations, important for the modern webdev, and all that – without a single line in bash :)&lt;/p&gt;

&lt;h2&gt;
  
  
  What powers Quarkly
&lt;/h2&gt;

&lt;p&gt;In short, or project based on well-known instruments. React, for example. It looks logical – we in Quarkly believe and promote utility, speed and functionality of React, and the Quarkly itself is on React to double down on our commitment to these principles.&lt;/p&gt;

&lt;p&gt;We choose MobX as a state-manager. I strongly recommend you to take a closer look at it, if you haven;t done it before for whatever reason. Using it, we were able to significantly speed up our development speed. Also, we made our own equivalent of Logux for it, but more powerful (Undo, Redo and versioning). In the future,we will make the source code of this module available on GitHub, and will tell you more about it.&lt;/p&gt;

&lt;p&gt;Styles are done with css-modules – if we are talking about static ones. Dynamic ones are written using our lib Atomize.&lt;/p&gt;

&lt;p&gt;Assembler – here everything is simple – Webpack (CRA), but with one detail: Assembler that is responsible for assembling user modules, is our own original development. We can tell you more about it if you are interested.&lt;/p&gt;

&lt;p&gt;One of our other cool features is code generation. It is, traditionally, also our own inventions, based on Babel – but the code printing part is heavily augmented.&lt;/p&gt;

&lt;h2&gt;
  
  
  About the future
&lt;/h2&gt;

&lt;p&gt;Our end goal – to create a useful tool, that will optimize the entire cycle of website and app development. We work on reducing the entry bar and increasing the abstractions level, so that everyone be able to create their own website – in style.&lt;/p&gt;

&lt;h2&gt;
  
  
  P.S.
&lt;/h2&gt;

&lt;p&gt;One of our most important tasks at this moment, is forming a community. If Quarkly interests you – we will be happy to welcome you in our community on &lt;a href="https://spectrum.chat/quarkly" rel="noopener noreferrer"&gt;Spectrum&lt;/a&gt; or in &lt;a href="https://discord.gg/AevfxmF3TM" rel="noopener noreferrer"&gt;Discord&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Fi%2Fqp3fdr0nb70r3ox175fw.png" class="article-body-image-wrapper"&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%2Fi%2Fqp3fdr0nb70r3ox175fw.png" alt="Quarkly at Product Hunt" width="800" height="498"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Also, today we start the Open Beta and launch on Product Hunt. We will appreciate your support! To read more, follow this &lt;a href="https://www.producthunt.com/posts/quarkly" rel="noopener noreferrer"&gt;link&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>react</category>
      <category>discuss</category>
      <category>productivity</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Why We Gave Up on the Idea of Using Styled System to Create Components, and Invented a New Wheel</title>
      <dc:creator>Eddort</dc:creator>
      <pubDate>Wed, 10 Jun 2020 14:35:15 +0000</pubDate>
      <link>https://dev.to/eddort/why-we-gave-up-on-the-idea-of-using-styled-system-to-create-components-and-invented-a-new-wheel-5c4n</link>
      <guid>https://dev.to/eddort/why-we-gave-up-on-the-idea-of-using-styled-system-to-create-components-and-invented-a-new-wheel-5c4n</guid>
      <description>&lt;p&gt;Hi everyone! My name is Alex. I’m one of the founders and lead developer at Quarkly. In this post, I’d like to share with you how the concept of atomic CSS, which we follow, together with the disadvantages of &lt;em&gt;styled-system&lt;/em&gt; functionality (and &lt;em&gt;rebass&lt;/em&gt; in particular) inspired us to create our own tool that we call Atomize. &lt;/p&gt;

&lt;h2&gt;
  
  
  A Few Words About Us
&lt;/h2&gt;

&lt;p&gt;Our &lt;a href="https://quarkly.io" rel="noopener noreferrer"&gt;Quarkly&lt;/a&gt; project is a mix of a graphic editor (like Figma and Sketch) and website builder (similar to Webflow), complemented by features of traditional IDE. We’ll be sure to elaborate on Quarkly in a separate post, as there is plenty to tell and show, but today we’ll focus on the details of the Atomize tool.&lt;/p&gt;

&lt;p&gt;Atomize is the heart of the whole project, as it allows us to solve tasks that would be difficult or even impossible to handle using &lt;em&gt;styled-system&lt;/em&gt; and &lt;em&gt;rebass&lt;/em&gt;. At the very least, the latter solution is much less elegant.&lt;/p&gt;

&lt;p&gt;If you don’t have time to read the entire post now, check out a brief description of Atomize on our &lt;a href="https://github.com/quarkly/atomize" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;And to make your introduction to our tool even more fun, we are launching a contest to build React components using Atomize. You can find out more at the end of this post.&lt;/p&gt;

&lt;h2&gt;
  
  
  How It All Started
&lt;/h2&gt;

&lt;p&gt;When we got down to developing this tool, our team’s task was to give users the opportunity to code on two components, but without the need to have a separate CSS file. This was to keep the code as minimalistic as possible while retaining all CSS features in contrast to inline styles.  &lt;/p&gt;

&lt;p&gt;The task was far from ground-breaking and, at first sight, could be easily solved with the help of &lt;em&gt;styled-system&lt;/em&gt; (and &lt;em&gt;rebass&lt;/em&gt;). But its functionality turned out to be limited for us. Or rather, we ran into the following problems:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;inconvenient breakpoints&lt;/li&gt;
&lt;li&gt;no option to write styles for &lt;em&gt;hover&lt;/em&gt;, &lt;em&gt;focus&lt;/em&gt;, and other behaviors&lt;/li&gt;
&lt;li&gt;mechanism for working with themes wasn’t as flexible as we needed&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Briefly About Atomize
&lt;/h2&gt;

&lt;p&gt;&lt;a href="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%2Fi%2Frowm9u2zgj2y5vp3gv28.png" class="article-body-image-wrapper"&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%2Fi%2Frowm9u2zgj2y5vp3gv28.png" alt="Atomize by Quarkly" width="800" height="450"&gt;&lt;/a&gt;&lt;br&gt;
Here are the key Atomize features:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;minimalistic interface&lt;/li&gt;
&lt;li&gt;option to use variables from the theme in composite CSS properties &lt;/li&gt;
&lt;li&gt;support for &lt;em&gt;hover&lt;/em&gt; and any other pseudo-classes&lt;/li&gt;
&lt;li&gt;short aliases for each property (like in &lt;em&gt;emmet&lt;/em&gt;)&lt;/li&gt;
&lt;li&gt;opportunity to set styles for a specific breakpoint, all while keeping the markup readable &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That being said, Atomize is intended for two main purposes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;creation of components that support atomic CSS and themes&lt;/li&gt;
&lt;li&gt;creation of widgets for the interactive editing in the Quarkly project&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Atomize. A User Manual
&lt;/h2&gt;

&lt;p&gt;Before you start working with Atomize, you need to set up dependencies:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
Atomize serves as a wrapper around a &lt;em&gt;styled-component&lt;/em&gt; and has a similar API.

&lt;p&gt;Just call the method using the name of the required element:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
As a result, we get the React component that can take any CSS in the form of properties.

&lt;p&gt;To make it easier to use, we developed the system of alias properties. For example, &lt;em&gt;bgc === backgroundColor&lt;/em&gt;&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
To see the full list of properties and aliases, follow this &lt;a href="https://github.com/quarkly/elementary/blob/master/docs/props.md" rel="noopener noreferrer"&gt;link&lt;/a&gt;.

&lt;p&gt;Plus, we added the mechanism of inheritance in React:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;h2&gt;
  
  
  Themes
&lt;/h2&gt;

&lt;p&gt;This, I think, should be explained in more detail.&lt;/p&gt;

&lt;p&gt;Quarkly themes are based on CSS variables. The key feature of Quarkly themes is that variables from themes can be reused both in props and themes. You don’t need to use additional abstractions, like template functions, and no additional editing is needed by the user.&lt;/p&gt;

&lt;p&gt;To use variables from a theme, just describe the property in the theme and call this property using the prefix "--".&lt;/p&gt;

&lt;p&gt;The variables can be used both in JSX:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;em&gt;(The color #04080C is available through the --colors-dark property)&lt;/em&gt;

&lt;p&gt;And in the theme itself:&lt;br&gt;
&lt;/p&gt;
&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;
&lt;br&gt;
&lt;em&gt;(We reused a variable from the colors by including it in the borders theme)&lt;/em&gt;

&lt;p&gt;The shorter syntax is used for colors in the JSX markup:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;Themes have breakpoints for working with media expressions.&lt;br&gt;
Any property can be prefixed with a breakpoint key name.&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;You can find the source code &lt;a href="https://github.com/quarkly/theme" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Effects
&lt;/h2&gt;

&lt;p&gt;The main difference between Atomize and the &lt;em&gt;styled system&lt;/em&gt; is the "effects".&lt;/p&gt;

&lt;p&gt;What are they and why do you need them?&lt;/p&gt;

&lt;p&gt;Well, imagine you create a &lt;em&gt;Button&lt;/em&gt; component, change its &lt;em&gt;color&lt;/em&gt; and &lt;em&gt;border&lt;/em&gt; and then… you realize you don’t know how to assign styles to &lt;em&gt;hover&lt;/em&gt;, &lt;em&gt;focus&lt;/em&gt;, etc. This is where effects come to the rescue.&lt;/p&gt;

&lt;p&gt;When creating a component, just transfer an object with the configuration:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;The key is the prefix in the name of the property, and the value is a CSS selector. This is the same way we implemented pseudo-classes.&lt;/p&gt;

&lt;p&gt;Now, if you specify the hover prefix for any CSS property, it will be applied to a certain effect. For example, when you mouse over it:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;You can also combine effects with media expressions:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;h2&gt;
  
  
  A Few Examples
&lt;/h2&gt;

&lt;p&gt;Let's build several interesting components to illustrate the features I’ve described above.&lt;/p&gt;

&lt;p&gt;Here are two examples:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://codesandbox.io/s/atomize-demo-skhjw?file=/src/Example.js" rel="noopener noreferrer"&gt;a simple component that shows all the capabilities of the library&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="https://codesandbox.io/s/pokemon-card-atomize-9pwom?file=/src/App.js" rel="noopener noreferrer"&gt;a more complex example with a Pokémon card&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Everybody loves Pokémon, don’t they? :)&lt;/p&gt;

&lt;p&gt;In the second example, we used most of the functionality, as well as the external API.&lt;/p&gt;

&lt;h2&gt;
  
  
  Wait! There's More
&lt;/h2&gt;

&lt;p&gt;The second purpose of Atomize, as I mentioned above, is to create widgets in Quarkly based on custom React components.&lt;/p&gt;

&lt;p&gt;All you have to do is wrap your component in Atomize and describe its configuration so that Quarkly can understand which properties can be interactively edited:&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;The configuration fields for the component look like this:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;em&gt;effects&lt;/em&gt; – defines browser pseudo-classes (&lt;em&gt;hover&lt;/em&gt;, &lt;em&gt;focus&lt;/em&gt;, etc.)&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;description&lt;/em&gt; – component description that will appear when you mouse over its name&lt;/li&gt;
&lt;li&gt;
&lt;em&gt;propInfo&lt;/em&gt; – configuration of controls that will be displayed on the right panel (Props tab)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;How to specify the props to be displayed on the right panel (Props tab):&lt;/p&gt;


&lt;div class="ltag_gist-liquid-tag"&gt;
  
&lt;/div&gt;


&lt;p&gt;Possible control options:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;input&lt;/li&gt;
&lt;li&gt;select&lt;/li&gt;
&lt;li&gt;color&lt;/li&gt;
&lt;li&gt;font&lt;/li&gt;
&lt;li&gt;shadow&lt;/li&gt;
&lt;li&gt;transition&lt;/li&gt;
&lt;li&gt;transform&lt;/li&gt;
&lt;li&gt;filter&lt;/li&gt;
&lt;li&gt;background&lt;/li&gt;
&lt;li&gt;checkbox-icon&lt;/li&gt;
&lt;li&gt;radio-icon&lt;/li&gt;
&lt;li&gt;radio-group&lt;/li&gt;
&lt;li&gt;checkbox&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;One more example, where we’ve added our custom component to the system and can now edit it interactively:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=BzkV_g_q84U" rel="noopener noreferrer"&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%2Fi%2Fmuub7i22q4g3jr1fshne.png" alt="Atomize example" width="779" height="430"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a&gt;&lt;/a&gt;Yay! You’ve made it to the end :) Thanks for reading!  &lt;/p&gt;

&lt;h2&gt;
  
  
  And Now It’s Contest Time!
&lt;/h2&gt;

&lt;p&gt;We put our heads together and decided there’s no better way to fuel the community's interest in our Atomize tool than by following a path that’s as simple and logical as Atomize itself — a contest!&lt;/p&gt;

&lt;p&gt;All information about the deadline, rules and prizes is available on the &lt;a href="https://quarkly.io/contest" rel="noopener noreferrer"&gt;official contest website&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;But in short: to enter and win, you need to come up with a new (or find an existing) interesting and useful component and adapt it to Atomize requirements. And if your component gets added to Quarkly, you can count on some extra prizes from the team :)&lt;/p&gt;

</description>
      <category>react</category>
      <category>javascript</category>
      <category>webdev</category>
      <category>cssinjs</category>
    </item>
  </channel>
</rss>
