<?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>Forem: akgondber</title>
    <description>The latest articles on Forem by akgondber (@akgondber).</description>
    <link>https://forem.com/akgondber</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%2F1100273%2F21fedaba-a0a5-4f97-83a4-6a8f520d0dc3.png</url>
      <title>Forem: akgondber</title>
      <link>https://forem.com/akgondber</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/akgondber"/>
    <language>en</language>
    <item>
      <title>3 Github tools that could be useful for you</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Fri, 22 Aug 2025 22:19:53 +0000</pubDate>
      <link>https://forem.com/akgondber/3-github-tools-that-could-be-useful-for-you-3e82</link>
      <guid>https://forem.com/akgondber/3-github-tools-that-could-be-useful-for-you-3e82</guid>
      <description>&lt;p&gt;In this post I am going to show you 3 web services for github giving you useful functionality.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://githistory.xyz/" rel="noopener noreferrer"&gt;Git History&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%2Fuploads%2Farticles%2F41vccggo4sn532pv21uv.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%2Fuploads%2Farticles%2F41vccggo4sn532pv21uv.png" alt=" " width="800" height="226"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It provides a beautiful way to tour the history of a file in a GitHub repo. As an input you specify some file from a github repository and as an output you have time travel for this file changes over time with cool interface. For example, you have opened &lt;a href="https://github.com/webpro-nl/knip/blob/main/packages/knip/src/compilers/compilers.ts" rel="noopener noreferrer"&gt;https://github.com/webpro-nl/knip/blob/main/packages/knip/src/compilers/compilers.ts&lt;/a&gt; file in the browser, in order to see a history with cool interface all you want to do is to change &lt;code&gt;github.com&lt;/code&gt; with &lt;code&gt;githistory.xyz&lt;/code&gt;. It will look as the following:&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%2Fuploads%2Farticles%2F7493u3gccdwnoywx0gau.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%2Fuploads%2Farticles%2F7493u3gccdwnoywx0gau.png" alt="Git history screenshot" width="800" height="497"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/tipsy/profile-summary-for-github" rel="noopener noreferrer"&gt;profile-summary-for-github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tool for visualizing GitHub profiles. You head to &lt;a href="https://profile-summary-for-github.com/" rel="noopener noreferrer"&gt;https://profile-summary-for-github.com/&lt;/a&gt;, enters github username you wish to get summary for. The result could be something like this:&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%2Fuploads%2Farticles%2Fseefunrihljooa89g1jd.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%2Fuploads%2Farticles%2Fseefunrihljooa89g1jd.png" alt=" " width="800" height="361"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gprm.itsvg.in/" rel="noopener noreferrer"&gt;github-profile-readme-maker&lt;/a&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Best Profile Generator, Create your perfect GitHub Profile ReadMe in the best possible way. Lots of features and tools included, all for free !&lt;/p&gt;
&lt;/blockquote&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%2Fuploads%2Farticles%2Fzo5rp5fb8sao1azbxuud.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%2Fuploads%2Farticles%2Fzo5rp5fb8sao1azbxuud.png" alt=" " width="800" height="283"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It has a plenty of features:&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%2Fuploads%2Farticles%2Fdxr9xmg2uaxa0a10c0if.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%2Fuploads%2Farticles%2Fdxr9xmg2uaxa0a10c0if.png" alt="pprm features" width="800" height="523"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I hope you will find this article useful.&lt;/p&gt;

</description>
      <category>github</category>
      <category>tooling</category>
      <category>web</category>
      <category>programming</category>
    </item>
    <item>
      <title>Train your typing speed with typing-game-cli</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Thu, 10 Jul 2025 21:10:15 +0000</pubDate>
      <link>https://forem.com/akgondber/train-your-typing-speed-with-typing-game-cli-1poe</link>
      <guid>https://forem.com/akgondber/train-your-typing-speed-with-typing-game-cli-1poe</guid>
      <description>&lt;p&gt;Have you ever thought about improving your typing speed? May be you are stopped  practicing developing this skill because of this looks like kinda boring? In this post I want to introduce you a program that will help you develop this skill in an interesting and fun way. This program will be especially interesting for users who live in the command line, since it is a game in the command line view.&lt;/p&gt;


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


&lt;p&gt;This typing experience going to be challenging since you will compete against ... (no, not against that cat, she is beyound competition, I assure you, I tried to compete, but suffered a crushed defeat, it was a shame) a robot.&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%2Fuploads%2Farticles%2Fo5d5mko1c12zmxhpeqxb.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%2Fuploads%2Farticles%2Fo5d5mko1c12zmxhpeqxb.png" alt="Robot you are going to compete with"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To see source code of this package you could head to &lt;a href="https://github.com/akgondber/typing-game-cli" rel="noopener noreferrer"&gt;github repo&lt;/a&gt;. This program published as npm package so if you are not using nodejs you probably would have to install it first, before installing this package globally. You can install it with desired package manager, either npm or any other (pnpm/yarn, etc.), for example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ npm install -g typing-game-cli
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;then run a program:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ typing-game-cli
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;which will result in displaying menu where you can start a new game round by pressing &lt;code&gt;y&lt;/code&gt; key.&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%2Fuploads%2Farticles%2Fhu6ww39fxghdevjmcay1.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%2Fuploads%2Farticles%2Fhu6ww39fxghdevjmcay1.png" alt="typing-game-cli menu"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now you should print showed text as fast as you can. Running round loooks like the following:&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%2Fuploads%2Farticles%2Fo10uqc8z9iobwr7k9ush.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%2Fuploads%2Farticles%2Fo10uqc8z9iobwr7k9ush.png" alt="Running round screenshot"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This way, the text you typed appears in the left box, and the robot's text appears in the right box. Your goal appropriately is to print more symbols than a robot in order to win. There is many options you can use while issuing &lt;code&gt;typing-game-cli&lt;/code&gt; command. Let's show some of them. First of all, I suggest you pay attention to the fact that you can launch several robots having different levels of typing speed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;--low&lt;/code&gt; - low typing speed&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;--medium&lt;/code&gt; - medium typing speed robot&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;--fast&lt;/code&gt; - fast typing speed robot&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;--extra-fast&lt;/code&gt; - extra fast typing speed robot&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When you have played at least one round with a robot you will an option to compete with yourself - in this case you would compete against your best result. This way, you will try to improve your typing speed in each round, setting new records. In order to run a game against your best result you could use &lt;code&gt;--against-my-best&lt;/code&gt; (or its aliases, for example: &lt;code&gt;--best&lt;/code&gt;/&lt;code&gt;-b&lt;/code&gt;), i.e. command will look like the following:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ typing-game-cli --against-my-best
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ typing-game-cli -b
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You could see all available options int the readme or by using &lt;code&gt;--help&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ typing-game-cli --help
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For example in them menu you could press an &lt;code&gt;r&lt;/code&gt; key to display your top results (or all results by using &lt;code&gt;--show-all-history&lt;/code&gt; flag). Also results can be displayed by issuing a command with &lt;code&gt;--display-results&lt;/code&gt;/&lt;code&gt;-r&lt;/code&gt; flag:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ typing-game-cli -r
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Happy improving your typing speed!&lt;/p&gt;

</description>
      <category>tooling</category>
      <category>npm</category>
      <category>cli</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Npm Check and Update/Delete Package If Needed</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Thu, 28 Nov 2024 21:58:35 +0000</pubDate>
      <link>https://forem.com/akgondber/npm-check-and-updatedelete-package-if-needed-1cdf</link>
      <guid>https://forem.com/akgondber/npm-check-and-updatedelete-package-if-needed-1cdf</guid>
      <description>&lt;p&gt;As for dealing with sticking up to date dependencies in our projects one approach is &lt;code&gt;npm outdated&lt;/code&gt; &lt;a href="https://docs.npmjs.com/cli/v10/commands/npm-outdated" rel="noopener noreferrer"&gt;command&lt;/a&gt;, that will display a list of installed packages with their current version and the latest available version.&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%2Fuploads%2Farticles%2Ffsiauzsl2eb21vs73pah.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%2Fuploads%2Farticles%2Ffsiauzsl2eb21vs73pah.png" alt="Image description" width="800" height="200"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In order to update your dependencies listed in package.json one can use &lt;code&gt;npm update&lt;/code&gt; &lt;a href="https://docs.npmjs.com/cli/v10/commands/npm-update" rel="noopener noreferrer"&gt;command&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In this post I want you introduce much more powerful tool called &lt;a href="https://github.com/akgondber/npm-check-extras" rel="noopener noreferrer"&gt;npm-check-extras&lt;/a&gt; - CLI app to check for outdated and unused dependencies, and run update/delete action over selected ones.&lt;br&gt;
In order to use it you can install it globally using&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ npm install -g npm-check-extras
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or execute it by 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 npm-check-extras
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;and then you will have a UI to interactively update/delete packages with plenty of additional options. Main feature of course is update/delete packages with possibilities to toggle target packages desired to be actioned about. You can select packages by specifying a filter query.&lt;/p&gt;


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



&lt;p&gt;As you can see there are many options you can use: targeting only development dependencies, looking at global packages, etc. One option you could find handy is storing a history of actions and viewing it so you can monitor and analyze what packages were updated/deleted while working on a project.&lt;/p&gt;


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


</description>
      <category>programming</category>
      <category>node</category>
      <category>npm</category>
      <category>javascript</category>
    </item>
    <item>
      <title>Practice your english by what-is-word-cli console game</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Mon, 22 Jul 2024 21:24:23 +0000</pubDate>
      <link>https://forem.com/akgondber/practice-your-english-by-little-terminal-game-g0n</link>
      <guid>https://forem.com/akgondber/practice-your-english-by-little-terminal-game-g0n</guid>
      <description>&lt;p&gt;Hello! In this post I want to share the command line tool called &lt;a href="https://github.com/akgondber/what-is-word-cli" rel="noopener noreferrer"&gt;what-is-word-cli&lt;/a&gt; - CLI game where your task is to unscramble words by given definition.&lt;br&gt;
Your goal is to give correct word for as many definitions as possible and get maximum score.&lt;/p&gt;

&lt;p&gt;Example round looks like this:&lt;/p&gt;


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


&lt;p&gt;Try it out and expand your vocabulary with pleasure!&lt;/p&gt;

</description>
      <category>terminal</category>
      <category>console</category>
      <category>node</category>
      <category>npm</category>
    </item>
    <item>
      <title>Do some interesting stuff with console-fun</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Sun, 21 Jul 2024 21:32:50 +0000</pubDate>
      <link>https://forem.com/akgondber/do-some-interesting-stuff-with-console-fun-3bgd</link>
      <guid>https://forem.com/akgondber/do-some-interesting-stuff-with-console-fun-3bgd</guid>
      <description>&lt;p&gt;I want to share a &lt;a href="https://github.com/akgondber/console-fun" rel="noopener noreferrer"&gt;console-fun&lt;/a&gt; - command-line app providing stuff to have a fun and watch some animations with texts, figures, etc. and also play different games from the command line.&lt;/p&gt;

&lt;p&gt;First of all you need to install this package globally, using your preferred package manager&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;npm install --global console-fun
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;yarn global add console-fun
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;Then you can run a &lt;code&gt;console-fun&lt;/code&gt; command. You can also use shorter aliases created for convenience: &lt;code&gt;confun&lt;/code&gt;, &lt;code&gt;cofun&lt;/code&gt; or &lt;code&gt;cofu&lt;/code&gt;.&lt;br&gt;
When running this cli program you can provide a &lt;code&gt;--topic&lt;/code&gt; option - currently there are two different variants - &lt;code&gt;game&lt;/code&gt; and &lt;code&gt;print&lt;/code&gt; and the &lt;code&gt;--item&lt;/code&gt; option.&lt;br&gt;
For example if you want to play &lt;code&gt;colored-stars-watcher&lt;/code&gt; game issue the following command:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;console-fun --topic game --item colored-stars-watcher
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;or using an alias:&lt;br&gt;
&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;cofu --topic game --item colored-stars-watcher
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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



&lt;p&gt;In the &lt;code&gt;print&lt;/code&gt; topic you can do some stuff over text content, for example: &lt;code&gt;read-file&lt;/code&gt; - read file line by line (useful tool that provides support to read file in very handy way): &lt;code&gt;console-fun --topic print --item read-file --subject tmp/bar.txt&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;code&gt;hacker-types&lt;/code&gt; - immitates fast coding - type any random keys from the keyboard and there will be populated some snippet at the console (you can surprise your friend by this thing):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;console-fun --topic print --item hacker-types
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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



&lt;p&gt;I hope you would find something useful for you from this tool.&lt;/p&gt;

</description>
      <category>node</category>
      <category>console</category>
      <category>terminal</category>
      <category>npm</category>
    </item>
    <item>
      <title>Manipulate media files like a pro</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Fri, 31 May 2024 06:06:58 +0000</pubDate>
      <link>https://forem.com/akgondber/manipulate-media-files-like-a-pro-45o1</link>
      <guid>https://forem.com/akgondber/manipulate-media-files-like-a-pro-45o1</guid>
      <description>&lt;p&gt;Hello! In this post I want to share a command-line tool called &lt;a href="https://github.com/akgondber/media-utils-cli"&gt;media-utils-cli&lt;/a&gt; - utilities for media files - converting, placing, transforming, resizing, generating video/audio files with added content, animations, etc.&lt;/p&gt;

&lt;p&gt;It supports plenty of functions, categorized for image, video and pdf files. Let me highliht some use cases in this post.&lt;/p&gt;

&lt;h2&gt;
  
  
  Converting all video files in folder to gif
&lt;/h2&gt;


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


&lt;p&gt;This is my most frequently used tool when I need to convert video demos to gif format.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cut up video
&lt;/h2&gt;


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


&lt;h2&gt;
  
  
  Create a video by adding title and subtitle to image
&lt;/h2&gt;


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


&lt;p&gt;You can find useful utils for dealing with image, video, pdf files, etc. Happy manipulating!&lt;/p&gt;

</description>
      <category>cli</category>
      <category>tooling</category>
      <category>node</category>
      <category>terminal</category>
    </item>
    <item>
      <title>Improve your content searching/filtering workflow productivity with regexp-it-cli</title>
      <dc:creator>akgondber</dc:creator>
      <pubDate>Sun, 05 May 2024 22:33:32 +0000</pubDate>
      <link>https://forem.com/akgondber/improve-your-productivity-with-regexp-it-cli-4fnp</link>
      <guid>https://forem.com/akgondber/improve-your-productivity-with-regexp-it-cli-4fnp</guid>
      <description>&lt;h2&gt;
  
  
  Involve regular expressions to solve different kind of tasks regarding text content
&lt;/h2&gt;

&lt;p&gt;Let me introduce a nodejs library called &lt;a href="https://github.com/akgondber/regexp-it-cli"&gt;regexp-it-cli&lt;/a&gt; - cli tool that provides content searching/filtering functionality by regular expressions. It has plenty of features, some of them will be highlighted in this post.&lt;/p&gt;

&lt;p&gt;I am going to demonstrate some use cases where this tool would be applicable.&lt;/p&gt;

&lt;h3&gt;
  
  
  Regexp playground
&lt;/h3&gt;

&lt;p&gt;You can experiment with regular expression by passing some content as a source and executing your trial regular over it. For example, display only matched parts for specified regexp:&lt;/p&gt;


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


&lt;h3&gt;
  
  
  Show some content in slide mode
&lt;/h3&gt;

&lt;p&gt;Have you ever wanted a find functionality without dealing with manually movement handling to the next match but automatically  see the next matches with some interval? Slide mode to the rescue! Use the &lt;code&gt;--slide-mode&lt;/code&gt; option optionally providing also &lt;code&gt;--slide-delay&lt;/code&gt; specifying a delay in seconds you'd like:&lt;/p&gt;


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


&lt;h3&gt;
  
  
  Filtering content between sections
&lt;/h3&gt;

&lt;p&gt;You can use regexp in a source only after/before specified &lt;code&gt;--after-regexp&lt;/code&gt; and &lt;code&gt;--before-regexp&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;&lt;a href="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%2Foxsnkrnwwg2zsxitb5jm.png" class="article-body-image-wrapper"&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%2Foxsnkrnwwg2zsxitb5jm.png" alt="Image description" width="800" height="330"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;a href="https://gist.githubusercontent.com/akgondber/28ece2c49eacfa5377e8e24718d87ac2/raw/797699fa1c46f99fdac9ec19ec1ee3ef38dba438/playground.gif" rel="noopener noreferrer"&gt;
      gist.githubusercontent.com
    &lt;/a&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Displaying first and last match
&lt;/h3&gt;

&lt;p&gt;Display only first/last match by providing the &lt;code&gt;--only-first-match&lt;/code&gt; / &lt;code&gt;--only-last-match&lt;/code&gt; flag&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;regexp-it-cli &lt;span class="nt"&gt;--url&lt;/span&gt; &lt;span class="s2"&gt;"https://raw.githubusercontent.com/inversify/InversifyJS/master/src/container/container.ts"&lt;/span&gt; &lt;span class="nt"&gt;--regexp&lt;/span&gt; &lt;span class="s2"&gt;"throw.*"&lt;/span&gt; &lt;span class="nt"&gt;-m&lt;/span&gt; &lt;span class="nt"&gt;-q&lt;/span&gt; &lt;span class="nt"&gt;--only-first-match&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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



&lt;h3&gt;
  
  
  Using predefined patterns
&lt;/h3&gt;

&lt;p&gt;Use predefined patterns instead of specifying &lt;code&gt;--regexp&lt;/code&gt; yourself by using &lt;code&gt;--regexp-pattern&lt;/code&gt; option.&lt;/p&gt;

&lt;p&gt;regexp-it-cli --file "samples/misc.txt" --regexp-pattern "urlLine" -e -m -q&lt;/p&gt;


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


&lt;h3&gt;
  
  
  Specify starting/ending line from a source to be used as a content
&lt;/h3&gt;

&lt;p&gt;Apply filter to content that is going to be used a source for a regular expression by using the &lt;code&gt;--starting-line-number&lt;/code&gt;, &lt;code&gt;--ending-line-number&lt;/code&gt; options.&lt;/p&gt;


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


</description>
      <category>regex</category>
      <category>node</category>
      <category>cli</category>
      <category>productivity</category>
    </item>
  </channel>
</rss>
