https://github.com/spenserblack/repofetch
A remote repository stat fetcher with support for 3rd-party plugins
https://github.com/spenserblack/repofetch
cli command-line commandline github hacktoberfest repository screenshot
Last synced: 10 months ago
JSON representation
A remote repository stat fetcher with support for 3rd-party plugins
- Host: GitHub
- URL: https://github.com/spenserblack/repofetch
- Owner: spenserblack
- License: mit
- Created: 2020-08-05T13:52:58.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2024-04-01T17:13:49.000Z (almost 2 years ago)
- Last Synced: 2025-03-08T18:13:12.026Z (11 months ago)
- Topics: cli, command-line, commandline, github, hacktoberfest, repository, screenshot
- Language: Ruby
- Homepage: https://spenserblack.github.io/repofetch/
- Size: 951 KB
- Stars: 19
- Watchers: 2
- Forks: 3
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# `repofetch`
[](https://badge.fury.io/rb/repofetch)
[](./CREDITS.md)

[](https://github.com/spenserblack/repofetch/actions/workflows/github-code-scanning/codeql)
[](https://codecov.io/gh/spenserblack/repofetch)
Fetch details about your remote repository.
## Usage


## Description
repofetch is a CLI tool to fetch stats (think [neofetch] or
[onefetch]) that uses plugins for its implementation. The original version was focused on
repository stats, and any official plugin will be for repositories, hence the "repo" in
repofetch. With 3rd-party plugins, however, it can support other types of outputs, too.
This tool may be renamed in the future.
Follow [this discussion](https://github.com/spenserblack/repofetch/discussions/219)
for details about the potential rename.
## Installation
[](https://repology.org/project/ruby:repofetch/versions)
### Via RubyGems.org
```bash
gem install repofetch
```
### Via AUR
If you are using an Arch machine, you can install repofetch from the [Aur](https://aur.archlinux.org).
#### Stable
```
yay -S ruby-repofetch-bin
```
#### Development
```
yay -S ruby-repofetch
```
### Via NetBSD
```bash
pkgin install ruby-repofetch
```
### Installing Version `< 0.4.0`
#### Via [Crates.io](https://crates.io/crates/repofetch)
```bash
cargo install repofetch
```
#### Via NetBSD
Pre-compiled binaries are available from the [official repositories](https://pkgsrc.se/sysutils/repofetch)
To install this, simply run:
```bash
pkgin install repofetch
```
Or, if you prefer to build it from source:
```
cd /usr/pkgsrc/sysutils/repofetch
make install
```
You need to have `rust` and `libgit2` installed in order to build the package.
## Configuration
A file called `.repofetch.yml` in your home directory will configure repofetch. The
first time you run `repofetch`, the default configuration will be written to this file.
Files called `.repofetch.env` and `repofetch.env` in your home directory will set
environment variables for repofetch, via the [dotenv gem][dotenv]. These environment
variables can be useful for plugins that require secrets. The purpose of these files
is to separate secrets from configuration, so that, for example, you could add
`.repofetch.yml` to a dotfiles repository without compromising an API token.
You can find the absolute paths to these files with the `--help` option.
### Examples
```yaml
# .repofetch.yml
plugins:
- 'repofetch/github'
```
```dotenv
# .repofetch.env
GITHUB_TOKEN=my-token-abcdefg
# Yes, command substitution is supported!
GITHUB_TOKEN=$(gh auth token)
```
## Notes on Rust Implementation (Version `< 0.4.0`)
I switched from Rust to Ruby to rewrite this project to use and support
plugins. I won't develop new features for the Rust implementation, but I may
fix bugs, and I'll review pull requests. The Rust implementation is on the
`rust` branch.
[dotenv]: https://github.com/bkeepers/dotenv
[neofetch]: https://github.com/dylanaraps/neofetch
[onefetch]: https://github.com/o2sh/onefetch