CLI project information

・1 min read

Here is a little project I have been working on for the past few days. Inspired from Neofetch, Onefetch is a CLI tool that displays relevant infos about your project on your terminal. It was written in Rust and supports the following languages (so far) :

  • C
  • Clojure
  • C++
  • C#
  • Go
  • Haskell
  • Java
  • Lisp
  • Lua
  • Python
  • R
  • Ruby
  • Rust
  • Scala
  • Shell
  • TypeScript

I would love some feedback :)

o2sh / onefetch

Command-line project information tool

cargo Build Status

Get it from the Snap Store

Onefetch is a command line tool that displays information about your Git project directly on your terminal. Onefetch supports almost 20 different programming languages. If your language of choice isn't supported: Open up an issue and support will be added.


Clone the repository and install to /usr/local/bin with make install.

Or get the binary from here and add it to your $PATH.

$ onefetch /path/of/your/repo


$ cd /path/of/your/repo
$ onefetch


Only works with Git repositories.


I downloaded the .exe file from your current release, then I tried starting it from my PowerShell:

> .\onefetch.exe
thread 'main' panicked at 'Could not retrieve git configuration data', src\
note: Run with `RUST_BACKTRACE=1` for a backtrace.

I have no idea which kind of configuration data it needs (there's nothing in the README about this), but I guess this shouldn't happen anyway.

edit after reading your source code: So your software is limited to Git repositories? Why?


Correct, it only works with git repositories (for now). I rely on git to detect some of the project information (author(s), project name/url).



You're right, I replaced the panic! with: exit(1) + message.

It fails more gracefully now.

Classic DEV Post from Oct 29 '18

What was your TDD aha moment?

TDD is not a one size fits all approach to software, but it's pretty damn usefu...

Just a Dev