{"id":13564163,"url":"https://github.com/mistakenelf/fm","last_synced_at":"2026-03-11T02:36:14.978Z","repository":{"id":38456848,"uuid":"356883757","full_name":"mistakenelf/fm","owner":"mistakenelf","description":"A terminal based file manager","archived":false,"fork":false,"pushed_at":"2025-12-30T17:19:36.000Z","size":9147,"stargazers_count":625,"open_issues_count":5,"forks_count":29,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-01-03T12:59:16.440Z","etag":null,"topics":["bubbletea","cli","file-manager","filemanager","fm","go","golang","terminal","tui"],"latest_commit_sha":null,"homepage":"","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/mistakenelf.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-04-11T14:03:28.000Z","updated_at":"2025-12-30T17:19:41.000Z","dependencies_parsed_at":"2023-12-14T21:25:42.317Z","dependency_job_id":"27d475ac-3370-44d1-95a2-45d4d8937b67","html_url":"https://github.com/mistakenelf/fm","commit_stats":null,"previous_names":["knipferrc/fm"],"tags_count":60,"template":false,"template_full_name":null,"purl":"pkg:github/mistakenelf/fm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistakenelf%2Ffm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistakenelf%2Ffm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistakenelf%2Ffm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistakenelf%2Ffm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mistakenelf","download_url":"https://codeload.github.com/mistakenelf/fm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mistakenelf%2Ffm/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30367814,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T21:41:54.280Z","status":"online","status_checked_at":"2026-03-11T02:00:07.027Z","response_time":84,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["bubbletea","cli","file-manager","filemanager","fm","go","golang","terminal","tui"],"created_at":"2024-08-01T13:01:27.387Z","updated_at":"2026-03-11T02:36:11.824Z","avatar_url":"https://github.com/mistakenelf.png","language":"Go","funding_links":[],"categories":["cli","Go"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./assets/logo.svg\" height=\"180\" width=\"180\" /\u003e\n  \u003cp align=\"center\"\u003e\n    Keep those files organized\n  \u003c/p\u003e\n  \u003cp align=\"center\"\u003e\n    \u003ca href=\"https://github.com/mistakenelf/fm/releases\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/mistakenelf/fm\" alt=\"Latest Release\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://pkg.go.dev/github.com/mistakenelf/fm?tab=doc\"\u003e\u003cimg src=\"https://godoc.org/github.com/golang/gddo?status.svg\" alt=\"GoDoc\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/mistakenelf/fm/actions\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/mistakenelf/fm/build.yml?branch=main\" alt=\"Build Status\"\u003e\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\" style=\"margin-top: 30px; margin-bottom: 20px;\"\u003e\n  \u003cimg src=\"./assets/default.png\" width=\"450\" alt=\"default screenshot\"\u003e\n\u003c/p\u003e\n\n## About The Project\n\nA terminal based file manager\n\n### Built With\n\n- [Go](https://golang.org/)\n- [bubbletea](https://github.com/charmbracelet/bubbletea)\n- [bubbles](https://github.com/charmbracelet/bubbles)\n- [lipgloss](https://github.com/charmbracelet/lipgloss)\n- [Glamour](https://github.com/charmbracelet/glamour)\n- [Chroma](https://github.com/alecthomas/chroma)\n- [Cobra](https://github.com/spf13/cobra)\n\n## Installation\n\n### Curl\n\n```sh\ncurl -sfL https://raw.githubusercontent.com/mistakenelf/fm/main/install.sh | sh\n```\n\n### Go\n\n```\ngo install github.com/mistakenelf/fm@latest\n```\n\n### AUR\n\nInstall through the Arch User Repository with your favorite AUR helper.\nThere are currently two possible packages:\n\n- [fm-git](https://aur.archlinux.org/packages/fm-git/): Builds the package from the main branch\n\n```sh\nparu -S fm-git\n```\n\n- [fm-bin](https://aur.archlinux.org/packages/fm-bin/): Uses the github release package\n\n```sh\nparu -S fm-bin\n```\n\n## Features\n\n- File icons (requires nerd font)\n- Layout adjusts to terminal resize\n- Syntax highlighting for source code with customizable themes using styles from [chroma](https://swapoff.org/chroma/playground/) (dracula, monokai etc.)\n- Render pretty markdown\n- Mouse support\n- Themes (`default`, `gruvbox`, `nord`)\n- Render PNG, JPG and JPEG as strings\n- Colors adapt to terminal background, for syntax highlighting to work properly on light/dark terminals, set the appropriate theme flags\n- Open selected file in editor set in EDITOR environment variable\n- Copy selected directory items path to the clipboard\n- Read PDF files\n\n## Themes\n\n### Default\n\n\u003cimg src=\"./assets/default.png\" width=\"350\" alt=\"default\"\u003e\n\n### Gruvbox\n\n\u003cimg src=\"./assets/gruvbox.png\" width=\"350\" alt=\"gruvbox\"\u003e\n\n### Nord\n\n\u003cimg src=\"./assets/nord.png\" width=\"350\" alt=\"nord\"\u003e\n\n## Usage\n\n- `fm` will start fm in the current directory\n- `fm update` will update fm to the latest version\n- `fm --start-dir=/some/start/dir` will start fm in the specified directory\n- `fm --selection-path=/tmp/tmpfile` will write the selected items path to the selection path when pressing \u003ckbd\u003eE\u003c/kbd\u003e and exit fm\n- `fm --enable-logging=true` start fm with logging enabled\n- `fm --pretty-markdown=true` render markdown using glamour to make it look nice\n- `fm --theme=default` set the theme of fm\n- `fm --show-icons=false` set whether to show icons or not\n- `fm --syntax-theme=dracula` sets the syntax theme to render code with\n\n## Local Development\n\nFollow the instructions below to get setup for local development\n\n1. Clone the repo\n\n```sh\ngit clone https://github.com/mistakenelf/fm\n```\n\n2. Run\n\n```sh\nmake\n```\n\n3. Build a binary\n\n```sh\nmake build\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmistakenelf%2Ffm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmistakenelf%2Ffm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmistakenelf%2Ffm/lists"}