Lstr
Dev tools
directory listing tool
SHOW HN2025
How HN took it
5 positive, 17 neutral or asking, 2 mixed, 4 critical, out of 28 comments about the project. Thread score +0.05.
Performance: 1 for, 3 againstExecution: 2 for, 0 againstDesign: 1 for, 1 againstIdea: 1 for, 0 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Display looks great and the interactive mode is useful
From 3 comments
First off, the display looks great! Second off, I didn't realize how deep the dep tree would be for this type of program -- 141 total! So much of it is the url crate, itself a…
drabbiticus on HNI didn't notice, I was too busy seeing how impressive and useful this tool is. And with fuzzy matching built in? Just amazing. Good job OP.
sdegutis on HNThis looks awesome! Right up my alley. Side-note: what theme are you using in the linked gif? It's right in the middle of my two favorite themes, onedark and gruvbox.
rewgs on HN
Impressive that it fits in about 1000 lines of code
From 2 comments
Among the features it has: an interactive terminal GUI, threaded parallel directory walking, and git repository support. In around a thousand lines of code, total, including…
JoshTriplett on HNDoing this in just over 1000 lines of code is really inspiring. I was bracing myself for something quite a lot larger and, honestly, gearing up to use that as an excuse not to…
gorgoiler on HN
Objections
Release binary size is large (around 4MB) for what it does
From 2 comments
No offense, but 4.3MB is huge for what it does. Most shells take less space than that! Where's all the bloat coming from?
esafak on HNGreat catch! Comments mentioned getting it down to ~2MB but that’s still humongous. If you just think about how roughly (napkin math) 2MB can be 100k loc, that’s nuts
getcrunk on HN
Demo gif shows broken icons from missing fonts
From 2 comments
Seems quite cool! Though the demo gif with (what seem to be?) broken icons is a bold choice :p
ipdashc on HNHow would that solve the font problem? I feel like that would only make the problem of having unsupported fonts even worse.
nightpool on HN
Requests
Reduce binary size through release build settings
From 3 comments
You are probably looking at a debug build. On Linux, a release build (cargo build -r) is ~4.3M, and down to ~3.5M once stripped. This could be reduced further with some tricks…
fabrice_d on HNBuilding in release: ``` cargo build --release du -sh ./target/release/lstr -> 4.4M ``` Building with other release options brings it down to 2.3M: ``` [profile.release]…
pveierland on HN> The binary is also 53M That's a debug binary, and the vast majority of that is debug symbols. A release build of this project is 4.3M, an order of magnitude smaller. Also,…
JoshTriplett on HN
Fix the demo gif rendering
From 2 comments
Seems quite cool! Though the demo gif with (what seem to be?) broken icons is a bold choice :p
ipdashc on HNlol good catch, and I totally missed it I used vhs to record the gif which must not run the script in my native terminal! I’ll have to see about fixing it!
w108bmg on HN
Questions
Why are Rust dependencies so numerous and what makes the binary large
From 2 comments
First off, the display looks great! Second off, I didn't realize how deep the dep tree would be for this type of program -- 141 total! So much of it is the url crate, itself a…
drabbiticus on HN> Most shells take less space than that! Most shells dynamically link to a runtime your OS provides "for free". The 4.3 MiB binary in question is bundling the Rust runtime and…
koito17 on HN
How does it differ from erdtree and broot
From 2 comments
Neat, looks like a combination of erdtree[0] and broot[1]. I use both on a daily basis, are there any features that stand out from the two? [0]:…
aystatic on HNOn interactive mode "ls tree" tools, an interesting one is broot. https://github.com/Canop/broot
fer on HN
Alternatives named
eza
From 2 comments
I really love all the "modern" takes on classic tools by the Rust community. I'm using eza (aka exa), aliased as ls, which has "tree" built in (aliased as lt), amongst others, as…
berkes on HNLikely needs features tuned. I compared Eza, similarly in Rust, and it's 1.6 MiB compiled. Looking at the Cargo.toml, it includes git2 with default-features = false.…
CGamesPlay on HN
broot
From 2 comments
On interactive mode "ls tree" tools, an interesting one is broot. https://github.com/Canop/broot
fer on HNNeat, looks like a combination of erdtree[0] and broot[1]. I use both on a daily basis, are there any features that stand out from the two? [0]:…
aystatic on HN
erdtree
From 1 comment
Neat, looks like a combination of erdtree[0] and broot[1]. I use both on a daily basis, are there any features that stand out from the two? [0]:…
aystatic on HN