{"id":13803832,"url":"https://github.com/mike-ward/lsv","last_synced_at":"2026-01-21T11:31:03.941Z","repository":{"id":245103789,"uuid":"817046424","full_name":"mike-ward/lsv","owner":"mike-ward","description":"lsv - Vlang implementation of ls","archived":false,"fork":false,"pushed_at":"2026-01-19T23:23:11.000Z","size":1830,"stargazers_count":69,"open_issues_count":2,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-20T06:23:20.750Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"V","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mike-ward.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-06-18T23:08:01.000Z","updated_at":"2026-01-19T23:23:15.000Z","dependencies_parsed_at":"2024-07-07T19:29:27.202Z","dependency_job_id":"f3ab0488-0d9c-4bf6-8a89-9e9874cb6dd2","html_url":"https://github.com/mike-ward/lsv","commit_stats":null,"previous_names":["mike-ward/lsv"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/mike-ward/lsv","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mike-ward%2Flsv","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mike-ward%2Flsv/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mike-ward%2Flsv/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mike-ward%2Flsv/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mike-ward","download_url":"https://codeload.github.com/mike-ward/lsv/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mike-ward%2Flsv/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28632771,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T01:00:38.262Z","updated_at":"2026-01-21T11:31:03.934Z","avatar_url":"https://github.com/mike-ward.png","language":"V","funding_links":[],"categories":["Applications"],"sub_categories":["Command-line"],"readme":"# lsv - Vlang implementation of `ls`\n\n`lsv` is a modern alternative to `ls` in the spirit of `exa, eza, lsd, pls, natls, ls-go` and others.\n\n![Screenshot](screenshot.jpeg)\n\nBorder format with header option\n![Screenshot](screenshot2.jpeg)\n\n## Features\n\n- Single binary with no external dependencies!\n- Not written in Rust 😮 (see below)\n- Color output based on LS_COLORS\n- Table format (long format)\n- Column Headers (long format)\n- Blocked output (long format)\n- Icons\n- Checksum (md5, sha1, sha224, sha256, sha512, blake2b)\n- Friendly file sizes and dates\n- Nearly as fast as GNU `ls`\n- Robust recursion. Try `lsv -R /`\n- Options similar to `ls`\n\n## Installing\n\n### Build `lsv` from source.\n\n- [Install the V compiler](https://docs.vlang.io/installing-v-from-source.html). It takes a minute or less\n- `git clone https://github.com/mike-ward/lsv.git`\n- `cd lsv`\n- `make`\n- `bin/lsv`\n\n### Binaries\n\n[Latest Release](https://github.com/mike-ward/lsv/releases/latest)\n\n### Homebrew\n\nWe need 75 stars to publish to Homebrew. Star the repo to help us get there!\n\n## Help\n```\nlsv\n-----------------------------------------------\nUsage: lsv [options] [FILES]\n\nDescription: List information about FILES\n\nOptions:\n  -a                        include files starting with .\n  -A                        do not list implied . and ..\n  -c                        color the listing\n  -D                        append / to directories\n  -F                        show full path\n  -i                        show file icon (requires nerd fonts)\n  -l                        long listing format (see Long Listing Options)\n  -m                        list of files separated by commas\n  -q                        enclose files in quotes\n  -R                        list subdirectories recursively\n  -X                        list files by lines instead of by columns\n  -1                        list one file per line\n\n  --depth \u003cint\u003e             limit depth of recursion\n  --width \u003cint\u003e             set output width to \u003cint\u003e\n\nFiltering and Sorting Options:\n  -d                        list only directories\n  -f                        list only files\n  -g                        sort directories before files\n  -r                        reverse the listing order\n  -s                        sort by file size, largest first\n  -t                        sort by time, newest first\n  -v                        sort digits within text as numbers\n  -w                        sort by width, shortest first\n  -x                        sort by file extension\n  -u                        no sorting\n\n  --after \u003cstring\u003e          after modified time \u003cstring\u003e\n  --after-access  \u003cstring\u003e  after access time \u003cstring\u003e\n  --after-change \u003cstring\u003e   after change time \u003cstring\u003e\n  --before \u003cstring\u003e         before modified time \u003cstring\u003e\n  --before-access \u003cstring\u003e  before access time \u003cstring\u003e\n  --before-change \u003cstring\u003e  before change time \u003cstring\u003e\n\n                            where time \u003cstring\u003e is an ISO 8601 format.\n                            See: https://ijmacd.github.io/rfc3339-iso8601\n\n  --ignore \u003cstring\u003e         ignore glob patterns (pipe-separated)\n  --ignore-case             ignore case when sorting\n\nLong Listing Options:\n  -b                        blank line every 5 rows\n  -B                        add borders to long listing format\n  -,                        sizes comma separated by thousands\n  -k                        sizes in kibibytes (1024) (e.g. 1k 234m 2g)\n  -K                        sizes in Kilobytes (1000) (e.g. 1kb 234mb 2gb)\n  -#                        show entry number\n  -n                        show owner and group IDs as numbers\n  -o                        show octal permissions\n  -p                        show relative path\n  -C                        show last status changed date\n  -E                        show last accessed date\n  -H                        show column headers\n  -I                        show time in iso format\n  -J                        show time in compact format\n  -L                        show time in compact format with week day\n  -T                        show relative time\n  -M                        show mime type\n  -N                        show inodes\n\n  --cs \u003cstring\u003e             show file checksum\n                            (md5, sha1, sha224, sha256, sha512, blake2b)\n  --no-counts               hide file/dir counts\n  --no-date                 hide date (modified)\n  --no-dim                  hide shading; useful for light backgrounds\n  --no-group                hide group name\n  --no-hard-links           hide hard links count\n  --no-owner                hide owner name\n  --no-permissions          hide permissions\n  --no-size                 hide file size\n  --no-wrap                 do not wrap long lines\n  --zero                    end each output line with NUL, not newline\n\n  -h, --help                display this help and exit\n  --version                 output version information and exit\n\nThe -c option emits color codes when standard output is\nconnected to a terminal. Colors are defined in the LS_COLORS\nenvironment variable.\n```\n\n## Why?\n\nIt started with writing a `ls` implementation for the V Language CoreUtils project.\nCoreutils is a reimplementation of the POSIX and GNU utility programs written in the V Language. Everything was going fine until I started having too much fun and down the \"rabbit hole\" I went.\n\nWhat's this V language? You can read about it [here](https://vlang.io/), but the short version is it is a simple, fast, safe, compiled language for developing maintainable software. I mentioned `lsv` is not written in Rust. I'm not trashing Rust. Rust is obviously a robust and popular language. However, it's a steep climb to get up to speed and requires a fair bit of cognitive load to use it well.\n\nV is the opposite. It has many of the same safety features of Rust, but without the cognitive overhead. Its simple, straightforward syntax makes it a breeze to write. Builds happen in milliseconds, not minutes and hours. You don't need any special build tools like Gradle.\n\nFinally, take a look at the `lsv` codebase. The entire codebase is **2K lines** 🧐. Furthermore, the implementation is straightforward. No threading, coroutines or fancy memory management. Even if you don't know V, I'm betting you will understand the code.\n\n## Helping Out\n\nSee CONTRIBUTING.md for more information\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmike-ward%2Flsv","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmike-ward%2Flsv","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmike-ward%2Flsv/lists"}