{"id":13475573,"url":"https://github.com/acarl005/ls-go","last_synced_at":"2026-01-14T23:20:50.776Z","repository":{"id":53117565,"uuid":"117322045","full_name":"acarl005/ls-go","owner":"acarl005","description":"A more colorful, user-friendly implementation of `ls` written in Go","archived":false,"fork":false,"pushed_at":"2024-11-16T16:03:08.000Z","size":2828,"stargazers_count":221,"open_issues_count":6,"forks_count":24,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-27T00:34:41.949Z","etag":null,"topics":["ansi-colors","command-line","go","terminal"],"latest_commit_sha":null,"homepage":null,"language":"Go","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/acarl005.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2018-01-13T07:02:14.000Z","updated_at":"2025-03-19T22:05:48.000Z","dependencies_parsed_at":"2023-10-15T21:14:49.461Z","dependency_job_id":"6c27324f-8e6b-4690-a541-78ed3c2c50ba","html_url":"https://github.com/acarl005/ls-go","commit_stats":null,"previous_names":[],"tags_count":37,"template":false,"template_full_name":null,"purl":"pkg:github/acarl005/ls-go","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acarl005%2Fls-go","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acarl005%2Fls-go/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acarl005%2Fls-go/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acarl005%2Fls-go/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/acarl005","download_url":"https://codeload.github.com/acarl005/ls-go/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/acarl005%2Fls-go/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28437980,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T22:37:52.437Z","status":"ssl_error","status_checked_at":"2026-01-14T22:37:31.496Z","response_time":107,"last_error":"SSL_read: 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":["ansi-colors","command-line","go","terminal"],"created_at":"2024-07-31T16:01:21.598Z","updated_at":"2026-01-14T23:20:50.178Z","avatar_url":"https://github.com/acarl005.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"![ls-go](./img/ls-go.png)\n\nA more colorful, user-friendly implementation of `ls` written in [Go](https://golang.org/).\n\nYou want to be able to glean a lot of information as quickly as possible from `ls`.\nColors can help your mind parse the information.\nYou can configure `ls` to color the output a little bit.\nConfiguring `ls` is a hassle though, and the colors are limited.\n\nInstead, you can use `ls-go`.\nIt is highly colored by default.\nIt has much fewer flags so you can get the behavior you want more easily.\nThe colors are beautiful and semantic.\nA terminal with xterm-256 colors is **required*.*\n\n## Features\n\n- [x] *Should* work on Linux, MacOS, and Windows.\n- [x] Outputs beautiful, semantic colors by default.\n- [x] Show paths to symlinks, and explicitly show broken links (`-L`).\n- [x] Recurse down subdirectories (`-r`).\n- [x] Emojis, if you're into that (`-i`).\n- [x] Supports [Nerd Fonts](https://github.com/ryanoasis/nerd-fonts) (`-n`).\n- [x] Dark or light backgrounds (`-I`).\n\n## Usage\n\nBasic usage:\n\n![show basic usage](./img/demo-1.png)\n\nOf course, you can use an alias to save some typing and get your favorite options:\n\n![show fancier options](./img/demo-2.png)\n\n\n### Nerd Font Support\n\n`ls-go` works with [Nerd Fonts](https://github.com/ryanoasis/nerd-fonts).\nSimply add `--nerd-font` or `-n` to get file-specific icons.\nThis won't work unless you have a Nerd Font installed and selected in your terminal emulator.\n\n![show with nerd font icons](./img/demo-3.png)\n\n### Light Background Theme\n\nHas an option for white backgrounds.\n\n![show on white background](./img/demo-4.png)\n\n```\nusage: ls-go [\u003cflags\u003e] [\u003cpaths\u003e...]\n\nFlags:\n  -h, --help       Show context-sensitive help (also try --help-long and --help-man).\n  -a, --all        show hidden files\n  -b, --bytes      include size\n  -m, --mdate      include modification date\n  -o, --owner      include owner and group\n  -N, --nogroup    hide group\n  -p, --perms      include permissions for owner, group, and other\n  -l, --long       include size, date, owner, and permissions\n  -d, --dirs       only show directories\n  -f, --files      only show files\n  -L, --links      show paths for symlinks\n  -R, --link-rel   show symlinks as relative paths if shorter than absolute path\n  -s, --size       sort items by size\n  -t, --time       sort items by time\n  -k, --kind       sort items by extension\n  -B, --backwards  reverse the sort order of --size, --time, or --kind\n  -S, --stats      show statistics\n  -i, --icons      show folder icon before dirs\n  -n, --nerd-font  show nerd font glyphs before file names\n  -r, --recurse    traverse all dirs recursively\n  -F, --find=FIND  filter items with a regexp\n  -I, --light      output colors for light-bachground themes\n\nArgs:\n  [\u003cpaths\u003e]  the files(s) and/or folder(s) to display\n```\n\n## Install\n\nIf you have Golang installed:\n\n```sh\ngo install github.com/acarl005/ls-go@latest\n```\n\nOn MacOS with Homebrew:\n\n```sh\nbrew install acarl005/homebrew-formulas/ls-go\n```\n\nOn Linux with Snap:\n\n```sh\nsudo snap install ls-go\n```\n\nOr, you can download the latest pre-compiled binary from the [releases page](https://github.com/acarl005/ls-go/releases).\n\n## Credits\n\n![Warp Terminal logo](./img/warp-logo.png)\n\nScreenshots taken using [Warp Terminal](https://www.warp.dev/).\n\nThis is inspired by [athityakumar/colorls](https://github.com/athityakumar/colorls) and [monsterkodi/color-ls](https://github.com/monsterkodi/color-ls), ported to Go, with various modifications.\n\n## Known Issues\n\nIt fails on directories without executable permissions.\nThe standard `/bin/ls` will also fail when reading non-executable directories,\nbut only with certain options, like `ls -l`, `ls --color=always` (or `ls -G` on MacOS).\nThis is because file metadata is needed to determine things like colors,\nand directories need to be executable to obtain the metadata of the contents.\nFor example:\n\n```sh\n# create dir without -x permission\n$ mkdir -m 644 test\n\n# add a file\n$ sudo touch test/foo\n\n# plain `ls` still works\n$ /bin/ls test\nfoo\n\n# but `ls -l` fails\n$ /bin/ls -l test\n\n# and so does ls-go\n$ ls-go test\n```\n\n## Contributing\n\nContributions are muchly appreciated!\nWant to add a glyph for another file type?\nDid I forget an edge case?\nIs there another option that would be useful?\nSubmit a PR!\nYou might want to submit an issue first to make sure it's something I'd want to add though.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Facarl005%2Fls-go","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Facarl005%2Fls-go","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Facarl005%2Fls-go/lists"}