The Noah's Blog

The Noah's Blog

How lsfp was created - reimagining the 'ls' command

How lsfp was created - reimagining the 'ls' command

Subscribe to my newsletter and never miss my upcoming articles

ls is arguably one of the most important Unix commands, listing information about files and directories.

The Problem

I use cmd on Windows, and personally do not like the dir command. I often work on Linux servers, making me constantly switch between the two commands which is not preferable.

The Idea

Why not create a cross-platform, better ls command, one specifically designed for programmers with helpful built-in features? So, I did!

The Plan

Build an awesome replacement for the ls command with a bunch of helpful tools for developers.

Here where some of my ideas:

  • Show git information without having to run it
  • Clean up old projects to save space
  • See useful information without having to open any files

The Solutuion - Introducing, lsfp! ๐Ÿฅณ

Cross-platform alternative to ls, specifically designed for programmers.

Created with ๐Ÿ’– by developers, for developers

Open source (MIT license), with contributions welcome and very appreciated ๐Ÿค—


  • โœ… License detection ๐Ÿ”Ž
  • โœ… Colored output based on file extension ๐ŸŽจ
  • โœ… Collapsed build directories so they don't take up unwanted vertical space โ˜„
  • Git integration ๐Ÿคฏ
    • โœ… File modified indication
    • File added indication
    • File moved indication
    • Directory indicator for contents
    • Use the .gitignore file like a smart person
  • Project cleanup ๐Ÿงผ
    • Automatically detect project type (Node, Rust, etc.) and delete build intermediate and build directories.
    • Parse .gitignore for best results
      • But keep some files like .env
  • โœ… No external dependencies โœจ (this was a mistake)


We currently have two active developers. We'd love to have you contribute!

You can see the currently open issues on GitHub if you'd like a place to start.

lsfp is still in beta, it is not feature complete. We are working hard to get it to a point where we are happy to release v1.0

Huge thanks to Unknown for his help with this project โค

Share this