<?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: Omri</title>
    <description>The latest articles on DEV Community by Omri (@omridevk).</description>
    <link>https://dev.to/omridevk</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%2F158124%2F9b58711c-5dde-4212-abc7-6f648fc67121.jpeg</url>
      <title>DEV Community: Omri</title>
      <link>https://dev.to/omridevk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/omridevk"/>
    <language>en</language>
    <item>
      <title>Creating a React icon library</title>
      <dc:creator>Omri</dc:creator>
      <pubDate>Fri, 12 Aug 2022 19:06:44 +0000</pubDate>
      <link>https://dev.to/omridevk/creating-a-react-icon-library-5fp6</link>
      <guid>https://dev.to/omridevk/creating-a-react-icon-library-5fp6</guid>
      <description>&lt;p&gt;A new library that helps creating A React/Vue/Angular Icon component library easily.&lt;br&gt;
features: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Auto download Icons as SVG directly from figma&lt;/li&gt;
&lt;li&gt;Optimized using SVGO&lt;/li&gt;
&lt;li&gt;Supports:

&lt;ul&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;Vue&lt;/li&gt;
&lt;li&gt;React MUI&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Start using it right now using npx:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npx @figus/cli ini
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Documentation site:&lt;br&gt;
&lt;a href="https://www.figus.dev/"&gt;https://www.figus.dev/&lt;/a&gt;&lt;br&gt;
Source code:&lt;br&gt;
&lt;a href="https://github.com/figus-cli/figus"&gt;https://github.com/figus-cli/figus&lt;/a&gt;&lt;/p&gt;

</description>
      <category>icons</category>
      <category>figma</category>
      <category>react</category>
      <category>vue</category>
    </item>
    <item>
      <title>How to manage keyboard shortcuts in Angular application (The easy way)</title>
      <dc:creator>Omri</dc:creator>
      <pubDate>Sun, 15 May 2022 20:00:55 +0000</pubDate>
      <link>https://dev.to/omridevk/how-to-manage-keyboard-shortcuts-in-angular-application-the-easy-way-2p3o</link>
      <guid>https://dev.to/omridevk/how-to-manage-keyboard-shortcuts-in-angular-application-the-easy-way-2p3o</guid>
      <description>&lt;p&gt;I have always liked the way Visual Studio Code enabled you to modify/add key binding in a JSON object, which is a pretty nice interface in my opinion. &lt;br&gt;
Taken as an inspiration, I wanted to create a similar and scalable solution for Angular application. &lt;br&gt;
To achieve a pretty scale-able solution keeping mind memory leakage and garbage collection of registered shortcut in a large app. Thus a component based architecture was chosen.&lt;/p&gt;

&lt;p&gt;The library supports both Windows and Mac, has a nice built in help screen to show all registered shortcuts and service to create a customize help screen in need.&lt;/p&gt;

&lt;p&gt;You can find the library &lt;a href="https://github.com/omridevk/ng-keyboard-shortcuts"&gt;here&lt;/a&gt;:&lt;br&gt;
And play with a working example &lt;a href="https://codesandbox.io/s/yvyovny43v"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How it works
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;To optimize for performance, only one event listener is registered to the document body.&lt;/li&gt;
&lt;li&gt;Each shortcut is then checked when keydown is pressed (this part can still be optimized and will be in the future, but the filtering is pretty quick at the moment so even with 100 registered shortcuts no slowdown are noticeable)&lt;/li&gt;
&lt;li&gt;You can use a directive to target a shortcut to work only when a specific element is in focus&lt;/li&gt;
&lt;li&gt;Or use a component that will add a global shortcut to your application, and will be cleaned out automatically when the component is destroyed.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Feedback
&lt;/h3&gt;

&lt;p&gt;This is the first library I publish to NPM, any feedback, code related, documentation or anything at all will be greatly appreciated.&lt;/p&gt;

</description>
      <category>angular</category>
      <category>javascript</category>
      <category>keyboard</category>
      <category>shortcuts</category>
    </item>
    <item>
      <title>Dead Simple Keyboard shortcut management library for Angular</title>
      <dc:creator>Omri</dc:creator>
      <pubDate>Thu, 18 Apr 2019 23:02:07 +0000</pubDate>
      <link>https://dev.to/omridevk/dead-simple-keyboard-shortcut-management-library-for-angular-1g9f</link>
      <guid>https://dev.to/omridevk/dead-simple-keyboard-shortcut-management-library-for-angular-1g9f</guid>
      <description>&lt;p&gt;I have always liked the way Visual Studio Code enabled you to modify/add key binding in a JSON object, which is a pretty nice interface in my opinion. &lt;br&gt;
Taken as an insperation, I wanted to create a similar and scalable solution for Angular application. &lt;br&gt;
To achieve a pretty scale-able solution keeping mind memory leakage and garbage collection of registered shortcut in a large app. Thus a component based architecture was chosen.&lt;/p&gt;

&lt;p&gt;The library supports both Windows and Mac, has a nice built in help screen to show all registered shortcuts and service to create a customize help screen in need.&lt;/p&gt;

&lt;p&gt;You can find the library &lt;a href="https://github.com/omridevk/ng-keyboard-shortcuts"&gt;here&lt;/a&gt;:&lt;br&gt;
And play with a working example &lt;a href="https://codesandbox.io/s/yvyovny43v"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  How it works
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;To optimize for performance, only one event listener is registered to the document body.&lt;/li&gt;
&lt;li&gt;Each shortcut is then checked when keydown is pressed (this part can still be optimized and will be in the future, but the filtering is pretty quick at the moment so even with 100 registered shortcuts no slowdown are noticeable)&lt;/li&gt;
&lt;li&gt;You can use a directive to target a shortcut to work only when a specific element is in focus&lt;/li&gt;
&lt;li&gt;Or use a component that will add a global shortcut to your application, and will be cleaned out automatically when the component is destroyed.&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Feedback
&lt;/h3&gt;

&lt;p&gt;This is the first library I publish to NPM, any feedback, code related, documentation or anything at all will be greatly appreciated.&lt;/p&gt;

</description>
      <category>angular</category>
      <category>javascript</category>
      <category>keyboard</category>
      <category>shortcuts</category>
    </item>
  </channel>
</rss>
