Files
awesome-awesomeness/html/cli.html
2025-07-18 22:22:32 +02:00

147 lines
12 KiB
HTML

<h1 id="awesome-cli">Awesome CLI</h1>
<p>Awesome CLI is a simple command line tool to give you a fancy command
line interface to dive into <a
href="https://github.com/sindresorhus/awesome">Awesome</a> lists.</p>
<figure>
<img src="./assets/images/awesome-cli-banner.png" alt="AWESOME CLI" />
<figcaption aria-hidden="true">AWESOME CLI</figcaption>
</figure>
<p><img
src="https://github.com/umutphp/awesome-cli/workflows/Test%20&amp;%20Build/badge.svg"
alt="Build" /> <img
src="https://github.com/umutphp/awesome-cli/workflows/WOSPM%20Checker/badge.svg"
alt="WOSPM Checker" /></p>
<table style="width:6%;">
<colgroup>
<col style="width: 5%" />
</colgroup>
<tbody>
<tr class="odd">
<td><!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --></td>
</tr>
<tr class="even">
<td>- <a href="#introduction">Introduction</a> - <a
href="#how-to-use">How To Use</a> - <a
href="#interactive-mode">Interactive Mode</a> - <a
href="#random-mode">Random Mode</a> - <a href="#surprise-mode">Surprise
Mode</a> - <a href="#how-to-install">How To Install</a> - <a
href="#basic">Basic</a> - <a href="#build-as-binary">Build as binary</a>
- <a href="#download-and-use-official-binary">Download and use official
binary</a> - <a href="#cli-options">CLI Options</a> - <a
href="#sample-execution">Sample Execution</a> - <a
href="#how-to-contribute">How To Contribute</a></td>
</tr>
<tr class="odd">
<td><!-- END doctoc generated TOC please keep comment here to allow auto update --></td>
</tr>
</tbody>
</table>
<h2 id="introduction">Introduction</h2>
<p>The CLI starts with the root repository <a
href="https://github.com/sindresorhus/awesome">sindresorhus/awesome</a>
and guides to to the final repo according to your choices. It fetches
Readme files of the repositories and parses them to create the select
lists. So, the CLI needs a working network :). It also uses file caches
to cache the Readme file contents. You can find the cache folder with
name “.awesomecache” under your home folder.</p>
<figure>
<img src="./assets/images/awesome-cli.gif" alt="Avesome-cli Sample" />
<figcaption aria-hidden="true">Avesome-cli Sample</figcaption>
</figure>
<h2 id="how-to-use">How To Use</h2>
<h3 id="interactive-mode">Interactive Mode</h3>
<p>In order to use awesome-cli interactively, just execute it without
giving any option. You will walk through the categories and repositories
by using “↓ ↑ → ←” buttons. Your choices will be saved to use them in <a
href="#surprise-mode">surprise mode</a>.</p>
<div class="sourceCode" id="cb1"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb1-1"><a href="#cb1-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span></span>
<span id="cb1-2"><a href="#cb1-2" aria-hidden="true" tabindex="-1"></a><span class="ex">Use</span> the arrow keys to navigate: ↓ ↑ → ← </span>
<span id="cb1-3"><a href="#cb1-3" aria-hidden="true" tabindex="-1"></a><span class="ex">?</span> Select from <span class="st">&#39;Awesome&#39;</span> list: </span>
<span id="cb1-4"><a href="#cb1-4" aria-hidden="true" tabindex="-1"></a> <span class="ex"></span> Platforms</span>
<span id="cb1-5"><a href="#cb1-5" aria-hidden="true" tabindex="-1"></a> <span class="ex">Programming</span> Languages</span>
<span id="cb1-6"><a href="#cb1-6" aria-hidden="true" tabindex="-1"></a> <span class="ex">Front-End</span> Development</span>
<span id="cb1-7"><a href="#cb1-7" aria-hidden="true" tabindex="-1"></a> <span class="ex">Back-End</span> Development</span>
<span id="cb1-8"><a href="#cb1-8" aria-hidden="true" tabindex="-1"></a> <span class="ex">Computer</span> Science</span>
<span id="cb1-9"><a href="#cb1-9" aria-hidden="true" tabindex="-1"></a> <span class="ex">Big</span> Data</span>
<span id="cb1-10"><a href="#cb1-10" aria-hidden="true" tabindex="-1"></a> <span class="ex">Theory</span></span>
<span id="cb1-11"><a href="#cb1-11" aria-hidden="true" tabindex="-1"></a> <span class="ex">Books</span></span>
<span id="cb1-12"><a href="#cb1-12" aria-hidden="true" tabindex="-1"></a> <span class="ex">Editors</span></span>
<span id="cb1-13"><a href="#cb1-13" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Gaming</span></code></pre></div>
<h3 id="random-mode">Random Mode</h3>
<p>You can use “random” option to go a random awesome repository under a
random category.</p>
<div class="sourceCode" id="cb2"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb2-1"><a href="#cb2-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span> random</span>
<span id="cb2-2"><a href="#cb2-2" aria-hidden="true" tabindex="-1"></a><span class="ex">aweome-cli</span> Version 0.3.0</span>
<span id="cb2-3"><a href="#cb2-3" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Programming Languages</span>
<span id="cb2-4"><a href="#cb2-4" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Eta</span>
<span id="cb2-5"><a href="#cb2-5" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Community</span>
<span id="cb2-6"><a href="#cb2-6" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> IRC</span>
<span id="cb2-7"><a href="#cb2-7" aria-hidden="true" tabindex="-1"></a><span class="ex">https://kiwiirc.com/client/irc.freenode.net/#eta-lang</span></span></code></pre></div>
<h3 id="surprise-mode">Surprise Mode</h3>
<p>When you use “surprise” option, awesome-cli will use your previous
selections in <a href="#interactive-mode">interactive mode</a> to find a
random repository for you.</p>
<div class="sourceCode" id="cb3"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb3-1"><a href="#cb3-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span> surprise</span>
<span id="cb3-2"><a href="#cb3-2" aria-hidden="true" tabindex="-1"></a><span class="ex">aweome-cli</span> Version 0.3.0</span>
<span id="cb3-3"><a href="#cb3-3" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Back-End Development</span>
<span id="cb3-4"><a href="#cb3-4" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Docker</span>
<span id="cb3-5"><a href="#cb3-5" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Videos</span>
<span id="cb3-6"><a href="#cb3-6" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> From Local Docker Development to Production Deployments</span>
<span id="cb3-7"><a href="#cb3-7" aria-hidden="true" tabindex="-1"></a><span class="ex">https://www.youtube.com/watch?v=7CZFpHUPqXw</span></span></code></pre></div>
<h2 id="how-to-install">How To Install</h2>
<h3 id="basic">Basic</h3>
<p>Follow the steps;</p>
<div class="sourceCode" id="cb4"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="fu">git</span> clone git@github.com:umutphp/awesome-cli.git</span>
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="bu">cd</span> awesome-cli</span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">go</span> run main.go</span></code></pre></div>
<h3 id="build-as-binary">Build as binary</h3>
<p>Follow the steps;</p>
<div class="sourceCode" id="cb5"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb5-1"><a href="#cb5-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="fu">git</span> clone git@github.com:umutphp/awesome-cli.git</span>
<span id="cb5-2"><a href="#cb5-2" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="bu">cd</span> awesome-cli</span>
<span id="cb5-3"><a href="#cb5-3" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="fu">sudo</span> go build <span class="at">-o</span> /usr/local/bin/awesome-cli .</span>
<span id="cb5-4"><a href="#cb5-4" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span></span></code></pre></div>
<h3 id="download-and-use-official-binary">Download and use official
binary</h3>
<p>Visit the <a
href="https://github.com/umutphp/awesome-cli/releases/latest">latest
release</a> page, download the zip correspondingly and extract the zip.
You can used the binary in the zip file.</p>
<div class="sourceCode" id="cb6"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb6-1"><a href="#cb6-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="fu">cp</span> /path/to/zip/extract/awesome-cli /usr/local/bin/awesome-cli</span>
<span id="cb6-2"><a href="#cb6-2" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span></span></code></pre></div>
<h3 id="cli-options">CLI Options</h3>
<p>The CLI works in interactive mode without any given option. But, It
can be also called some options described below;</p>
<div class="sourceCode" id="cb7"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb7-1"><a href="#cb7-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span> help</span>
<span id="cb7-2"><a href="#cb7-2" aria-hidden="true" tabindex="-1"></a><span class="ex">awesome-cli</span> Version 0.6.0</span>
<span id="cb7-3"><a href="#cb7-3" aria-hidden="true" tabindex="-1"></a></span>
<span id="cb7-4"><a href="#cb7-4" aria-hidden="true" tabindex="-1"></a><span class="ex">Options</span> of awesome-cli:</span>
<span id="cb7-5"><a href="#cb7-5" aria-hidden="true" tabindex="-1"></a> <span class="bu">help</span> To print this screen.</span>
<span id="cb7-6"><a href="#cb7-6" aria-hidden="true" tabindex="-1"></a> <span class="ex">random</span> To go to a random awesome content.</span>
<span id="cb7-7"><a href="#cb7-7" aria-hidden="true" tabindex="-1"></a> <span class="ex">surprise</span> To go to a surprise awesome content according to your previos choices.</span>
<span id="cb7-8"><a href="#cb7-8" aria-hidden="true" tabindex="-1"></a> <span class="ex">profile</span> To see your previous choices.</span>
<span id="cb7-9"><a href="#cb7-9" aria-hidden="true" tabindex="-1"></a> <span class="ex">reset</span> To clean your choices to start from the beginning.</span>
<span id="cb7-10"><a href="#cb7-10" aria-hidden="true" tabindex="-1"></a> <span class="ex">update</span> Update awesome-cli to the latest version.</span></code></pre></div>
<h3 id="sample-execution">Sample Execution</h3>
<div class="sourceCode" id="cb8"><pre
class="sourceCode bash"><code class="sourceCode bash"><span id="cb8-1"><a href="#cb8-1" aria-hidden="true" tabindex="-1"></a><span class="op">&gt;</span> $ <span class="ex">awesome-cli</span> random</span>
<span id="cb8-2"><a href="#cb8-2" aria-hidden="true" tabindex="-1"></a><span class="ex">aweome-cli</span> Version 0.2.0</span>
<span id="cb8-3"><a href="#cb8-3" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Platforms</span>
<span id="cb8-4"><a href="#cb8-4" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Linux</span>
<span id="cb8-5"><a href="#cb8-5" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Applications</span>
<span id="cb8-6"><a href="#cb8-6" aria-hidden="true" tabindex="-1"></a><span class="ex"></span> Gedit</span>
<span id="cb8-7"><a href="#cb8-7" aria-hidden="true" tabindex="-1"></a><span class="ex">https://wiki.gnome.org/Apps/Gedit</span></span></code></pre></div>
<h2 id="how-to-contribute">How To Contribute</h2>
<p>Please follow the instructions in <a
href="CONTRIBUTING.md">CONTRIBUTING</a> file and beware of <a
href="CODE_OF_CONDUCT">CODE_OF_CONDUCT</a>.</p>
<p><a href="https://github.com/umutphp/awesome-cli">cli.md
Github</a></p>