{"id":13451015,"url":"https://github.com/afify/sfm","last_synced_at":"2025-04-09T14:14:52.395Z","repository":{"id":41092146,"uuid":"271144045","full_name":"afify/sfm","owner":"afify","description":"simple file manager","archived":false,"fork":false,"pushed_at":"2024-05-28T19:13:21.000Z","size":258,"stargazers_count":206,"open_issues_count":2,"forks_count":18,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-05-28T22:50:30.146Z","etag":null,"topics":["c","file-manager","filemanager","sfm","simple","suckless","terminal","tty","tui"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/afify.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"2020-06-10T01:08:12.000Z","updated_at":"2024-05-30T02:12:18.618Z","dependencies_parsed_at":"2024-05-30T02:12:18.120Z","dependency_job_id":"66d530c3-5017-43b7-9810-0006f60b0249","html_url":"https://github.com/afify/sfm","commit_stats":null,"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afify%2Fsfm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afify%2Fsfm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afify%2Fsfm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afify%2Fsfm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/afify","download_url":"https://codeload.github.com/afify/sfm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248054193,"owners_count":21039952,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["c","file-manager","filemanager","sfm","simple","suckless","terminal","tty","tui"],"created_at":"2024-07-31T07:00:45.671Z","updated_at":"2025-04-09T14:14:52.371Z","avatar_url":"https://github.com/afify.png","language":"C","readme":"\u003cimg src=\"https://raw.githubusercontent.com/afify/sfm/main/sfm.png\" alt=\"sfm logo\"/\u003e\n\n**simple file manager**\n\n[![Build status](https://ci.appveyor.com/api/projects/status/goq88ahjyvtjrui2?svg=true)](https://ci.appveyor.com/project/afify/sfm)\n[![CodeQL](https://github.com/afify/sfm/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/afify/sfm/actions/workflows/github-code-scanning/codeql)\n[![Cross platform build](https://github.com/afify/sfm/actions/workflows/action.yaml/badge.svg)](https://github.com/afify/sfm/actions/workflows/action.yaml)\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fafify%2Fsfm.svg?type=shield)](https://app.fossa.com/projects/git%2Bgithub.com%2Fafify%2Fsfm?ref=badge_shield)\n\nDescription\n------------\nsfm is a simple file manager for unix-like systems.\n* BSD kqueue(2) - kernel event notification mechanism.\n* Linux inotify(7) - monitoring filesystem events.\n* pthreads(7) to read events, no timers.\n* dual pane.\n* bookmarks.\n* open files by extension.\n* bottom statusbar.\n* vim-like key bindings.\n* no dependencies.\n* search.\n* Inspired by [vifm](https://vifm.info/) and [noice](https://git.2f30.org/noice/).\n* Follows the suckless [philosophy](https://suckless.org/philosophy/).\n\nPatches\n-------\n[sfm-patches](https://github.com/afify/sfm-patches)\n\nPerformance\n------------\n```sh\n$ perf stat -r 10 sfm\n```\n\nOptions\n-------\n```sh\n$ sfm [-v]\n$ man sfm\n```\n\u003cimg src=\"https://afify.dev/img/sfm_sc.png\" alt=\"sfm screenshot\" width=\"800\"/\u003e\n\nInstallation\n------------\n\u003ca href=\"https://repology.org/project/sfm-afify/versions\"\u003e\n    \u003cimg src=\"https://repology.org/badge/vertical-allrepos/sfm-afify.svg\" alt=\"Packaging status\"\u003e\n\u003c/a\u003e\n\n**current**\n```sh\ngit clone https://github.com/afify/sfm\ncd sfm/\nmake\nmake install\n```\n**latest release**\n```sh\nlatest=$(curl -s https://api.github.com/repos/afify/sfm/releases/latest | grep -o '\"tag_name\": \"[^\"]*' | cut -d'\"' -f4)\ntgz=\"https://github.com/afify/sfm/archive/refs/tags/${latest}.tar.gz\"\ncurl -L -o \"sfm-${latest}.tar.gz\" \"${tgz}\"\ntar -xzf \"sfm-${latest}.tar.gz\"\ncd \"sfm-${latest#v}\" \u0026\u0026 \\\nmake \u0026\u0026 make install || echo \"Build failed!\"\n```\n\nRun\n---\n```sh\n$ sfm\n```\n\nConfiguration\n-------------\nThe configuration of sfm is done by creating a custom config.h\nand (re)compiling the source code. This keeps it fast, secure and simple.\n\n\n## License\n[![FOSSA Status](https://app.fossa.com/api/projects/git%2Bgithub.com%2Fafify%2Fsfm.svg?type=large)](https://app.fossa.com/projects/git%2Bgithub.com%2Fafify%2Fsfm?ref=badge_large)","funding_links":[],"categories":["C","Uncategorized","Table of Contents","\u003ca name=\"file-manager\"\u003e\u003c/a\u003eFile manager"],"sub_categories":["Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fafify%2Fsfm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fafify%2Fsfm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fafify%2Fsfm/lists"}