Ahoy, fellow sailor! Set your sights on the piscator
CLT, a trusty companion
for your coding odysseys. With piscator
by your side, you'll navigate the vast
seas of GitHub with ease, harnessing the power of the command-line interface to
explore, capture, and conquer the realm of repositories.
As a seasoned sailor, you'll command the piscator
vessel to cast its net
into the GitHub sea, deftly capturing the URLs of repositories from users,
organizations, or even yourself. With each cast, piscator
will bring you a
bountiful haul of valuable code treasures, presenting them in a convenient
format for further exploration. But piscator
's abilities don't end there! With
the reel command, you'll transform those captured repositories into tangible
assets by creating dedicated directories and git repositories for each catch,
ready to be harnessed for your coding voyages.
With its intuitive commands, piscator
empowers you to hoist the sails of
productivity and embark on coding adventures like never before. Whether you're
seeking to explore, collect, or reel in repositories, piscator
will be your
loyal first mate, guiding you through the GitHub waters with precision and
efficiency. Embrace the spirit of the sailor, unleash the power of
piscator
, and embark on a coding voyage that will leave a lasting mark on the
open seas of code.
Table of contents:
Although the current releases page offers binaries for Linux, MacOS, and Windows, rest assured that I have heard your concerns and I am committed to providing ye with the convenience and ease of installation ye deserve. I solemnly swear to make future releases available through all major package managers, for I believe in the principle that good things come to sailors who trust their captain.
So, my dear crew, hold tight to the mast and keep your hearts filled with hope.
In the near future, ye shall witness the expansion of piscator's reach, as it
sets sail on the vast seas of package managers, bringing ye the treasures of
effortless installation and seamless updates. Trust in me, your captain, for I
am dedicated to improving the voyage of piscator
and ensuring that every sailor
can embark on their coding adventures with the wind at their backs.
Together, we shall overcome this minor setback and forge ahead toward a
brighter future for piscator
. Ye are the lifeblood of this crew, and I am
grateful for your unwavering support. May our sails be filled with the winds of
progress, as we navigate the ever-changing tides of technology. Onward, my
brave crew, for the best is yet to come!
Ahoy, mateys! I bring tidings of great joy for all ye sailors out there. We've
finally hoisted the Jolly Roger and released our very own Homebrew tap
and Scoop bucket for the mighty piscator
! Avast, ye
scurvy dogs, and follow these simple steps to get the piscator
CLT installed
on yer ship:
# homebrew
brew tap shimman-dev/taps
brew install piscator
# scoop
scoop bucket add shimman-dev https://github.com/shimman-dev/scoop-bucket.git
scoop install piscator
Arr, ye be all set now! The piscator CLT be installed and ready to sail the package seas on yer command. But hold fast, me hearties, for this be just the beginning. We'll be setting sail to conquer other package managers in the days to come. So, keep a weather eye on the horizon for more exciting releases!
Fair winds and smooth seas to ye, as ye embark on yer piscator adventures with Homebrew at yer side!
Avast, matey! Let me tell ye about the heart of the piscator
vessel: the
mighty commands cast
and reel
.
With a swift cast, the command will fetch ye a bounty of JSON, ripe for the
takin'. This JSON treasure can be piped into other commands like fzf
or jq
to uncover its secrets. And if ye be desirin' a written record of yer findings,
simply wave the repos.json
flag (-f
or --makeFile
), and a file named
repos.json
shall be fashioned right where ye stand (directory where piscator
was ran).
But behold, the power of the mighty reel! This command harnesses the fruits of
cast
to weave a directory in the likeness of the chosen user or organization.
Then, with the skill of an expert angler, it reels in each specified repository,
be it from the depths of the sea or the local waters. Should a repository
already rest in the directory, fear not! reel
will deftly pull the latest
catch, ensuring ye always have the freshest head.
So, me hearty, set sail with piscator
and let the commands cast
and reel
guide ye on yer voyage to GitHub riches!
Running piscator help
will show the commands of piscator
. You can also run
piscator cast -h
and piscator reel -h
to see the flags each respective
command takes.
Running piscator cast username
will output a JSON of public repositories
for a user:
example output of `piscator cast shieldbattery`
[
{
"name": "broodmap",
"html_url": "https://github.com/ShieldBattery/broodmap",
"language": "Rust",
"fork": false,
"private": false,
"size": 4695
},
{
"name": "rally-point",
"html_url": "https://github.com/ShieldBattery/rally-point",
"language": "JavaScript",
"fork": false,
"private": false,
"size": 966
},
{
"name": "ShieldBattery",
"html_url": "https://github.com/ShieldBattery/ShieldBattery",
"language": "TypeScript",
"fork": false,
"private": false,
"size": 244880
},
{
"name": "stimpack",
"html_url": "https://github.com/ShieldBattery/stimpack",
"language": "Rust",
"fork": false,
"private": false,
"size": 57
},
{
"name": "trrr",
"html_url": "https://github.com/ShieldBattery/trrr",
"language": "Rust",
"fork": false,
"private": false,
"size": 18
}
]
Running piscator cast your_username -s
will output a JSON of your repositories
(public and private; requires a personal access token).
The -s
flag refers to your self, i.e. your GitHub username. The -t
flag
takes a PAT (how to create a PAT), alternatively you can export your PAT in your terminal environment with
the following command (this is demonstrated in the gif above):
export GITHUB_TOKEN=pat_token_here
Please note, that if you update your PAT you may need to remove your current exported token with the following commands:
// remove token
unset GITHUB_TOKEN
// verify token disappeared
printenv GITHUB_TOKEN
example output of `piscator cast azemetre -s`
[
{
"name": "auteur-palettes",
"html_url": "https://github.com/azemetre/auteur-palettes",
"language": "JavaScript",
"fork": false,
"private": true,
"size": 403
},
{
"name": "azemetredotcom",
"html_url": "https://github.com/azemetre/azemetredotcom",
"language": "JavaScript",
"fork": false,
"private": true,
"size": 24256
},
{
"name": "hipster.nvim",
"html_url": "https://github.com/azemetre/hipster.nvim",
"language": "Lua",
"fork": false,
"private": false,
"size": 1446
},
{
"name": "musical-adventure",
"html_url": "https://github.com/azemetre/musical-adventure",
"language": "TypeScript",
"fork": false,
"private": true,
"size": 993
},
{
"name": "piscator",
"html_url": "https://github.com/shimman-dev/piscator",
"language": "Go",
"fork": false,
"private": false,
"size": 1006
}
]
Running piscator cast org_name -o
will output a JSON of public and repositories for an organization:
Please note: as with the -s
flag (--self
), the --org
requires a PAT
passed with the --token
flag or fed into the env variable GITHUB_TOKEN
.
example output of `piscator cast shimman-dev -o`
[
{
"name": "eslint-config",
"html_url": "https://github.com/shimman-dev/eslint-config",
"language": "JavaScript",
"fork": false,
"private": false,
"size": 227
},
{
"name": "piscator",
"html_url": "https://github.com/shimman-dev/piscator",
"language": "Go",
"fork": false,
"private": false,
"size": 1006
},
{
"name": "knockerupper",
"html_url": "https://github.com/shimman-dev/knockerupper",
"language": "",
"fork": false,
"private": true,
"size": 14
}
]
Running piscator cast username -x
will output a JSON of public and forked repositories:
example output of `piscator cast azemetre -x`
[
{
"name": "Adv360-Pro-ZMK",
"html_url": "https://github.com/azemetre/Adv360-Pro-ZMK",
"language": "",
"fork": true,
"private": false,
"size": 145
},
{
"name": "auteur-palettes",
"html_url": "https://github.com/azemetre/auteur-palettes",
"language": "JavaScript",
"fork": false,
"private": true,
"size": 403
}
]
Running piscator cast username -f
will output a JSON of public repositories
and create a repos.json
file:
Running piscator cast username --language=rust,lua
will output a JSON of
public repositories filtered by the languages you provide (comma separated) for
a user:
example output of `piscator cast azemetre -l rust,lua`
[
{
"name": "dotfiles",
"html_url": "https://github.com/azemetre/dotfiles",
"language": "Lua",
"fork": false,
"private": false,
"size": 2756
},
{
"name": "hipster.nvim",
"html_url": "https://github.com/azemetre/hipster.nvim",
"language": "Lua",
"fork": false,
"private": false,
"size": 1446
},
{
"name": "rust-solutions",
"html_url": "https://github.com/azemetre/rust-solutions",
"language": "Rust",
"fork": false,
"private": false,
"size": 47234
}
]
Please note: piscator reel
can take the same flags as piscator cast
, so
if you would like to reel in repos from an organization or yourself it will
require the same flags and arguments.
Running piscator reel org_name
create a directory of the user/org and clone
their repositories:
I'm waiting for it, waiting for it
- add ability to filter by language
- flesh out readme
- create vhs tapes
- add
CONTRIBUTING.md
- refine github templates
- automate release binaries
- release on major package managers
- homebrew
- nix
- fedora
- macports
- arch linux (btw)
- debian
- scoop
- add tests
- generate man pages
- make showcase site