{"id":17309988,"url":"https://github.com/metafates/workflow","last_synced_at":"2025-08-19T20:18:23.211Z","repository":{"id":103000555,"uuid":"603250808","full_name":"metafates/Workflow","owner":"metafates","description":"🦋 An opinionated list of programs I use everyday","archived":false,"fork":false,"pushed_at":"2023-02-18T17:04:00.000Z","size":31,"stargazers_count":7,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-13T08:58:43.424Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://metafates.one/Workflow/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/metafates.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2023-02-18T00:09:45.000Z","updated_at":"2024-08-04T21:24:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"2fc2e645-a856-4c7b-8537-8834ea8f905b","html_url":"https://github.com/metafates/Workflow","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/metafates/Workflow","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metafates%2FWorkflow","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metafates%2FWorkflow/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metafates%2FWorkflow/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metafates%2FWorkflow/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/metafates","download_url":"https://codeload.github.com/metafates/Workflow/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/metafates%2FWorkflow/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271215037,"owners_count":24720098,"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","status":"online","status_checked_at":"2025-08-19T02:00:09.176Z","response_time":63,"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":[],"created_at":"2024-10-15T12:34:14.785Z","updated_at":"2025-08-19T20:18:23.184Z","avatar_url":"https://github.com/metafates.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Workflow 🦋\n\nAn opinionated list of programs I use everyday. \nMost of them are better alternatives to the default ones.\n(e.g. `ripgrep` instead of `grep`).\n\nMajority of them (if not all) are written in **Rust 🦀**.\nOf course it doesn't matter which language the program is written on as long\nas it's not *javascript* 💀, but it's just nice to know that what\nyou are using isn't some ancient crap from 1970s...\n\nFirst three items in my list are the most important ones.\nTerminal emulator, shell and editor.\n\n## Terminal Emulator - Alacritty 🔥\n\n**[Site](https://alacritty.org/)** | **[Github](https://github.com/alacritty/alacritty)**\n\n\u003e A fast, cross-platform, OpenGL terminal emulator\n\nThe fastest, actually.\n\nYou probably know about Alacritty already, but here's the thing I discovered\nwhich made me went back to using it once again after trying [Wezterm](https://wezfurlong.org/wezterm/)\n(it's awesome, but slow for me...) - it *does* support tabs. But it can be tricky.\n\n\u003cdetails\u003e\n\u003csummary\u003eHow to use tabs in Alacritty\u003c/summary\u003e\n\nSince I use macOS (eghh) I'll describe a method for it.\n\n1. System Settings \u003e Desktop \u0026 Dock \u003e Prefer tabs when opening documents \u003e Always\n2. Add this bind to your `alacritty.yml`\n\n```yaml\nkey_bindings:\n- action: CreateNewWindow\n  key: T\n  mods: Command\n```\n\n3. Tada! 🎉 You can use \u003ckbd\u003e⌘ + T\u003c/kbd\u003e to spawn a new tab.\n\n\u003e On Linux with X11 you can use something like `tabbed alacritty --embed`.\n\u003e Idk about Wayland...\n\n\u003c/details\u003e\n\n## Shell - Nushell 🐚\n\n**[Site](https://www.nushell.sh/)** | **[Github](https://github.com/nushell/nushell)**\n\n\u003e Nu pipelines use structured data so you can safely select, filter,\n\u003e and sort the same way every time.\n\u003e *Stop parsing strings and start solving problems.*\n\n\u003cimg width=\"775\" alt=\"miette-example\" src=\"https://user-images.githubusercontent.com/62389790/219864858-f93b9c14-b352-4d87-9298-e3390ec8b22d.png\"\u003e\n\nThis example is pretty self-descriptive\n\n```nu\n# All these commands are built-in with nushell. Yes, even http.\nls | where size \u003e 10mb | sort-by modified\nhttp get https://api.github.com/repos/nushell/nushell | get license\n```\n\nFrom the article [Shells are Two things](https://borretti.me/article/shells-are-two-things)\n\n\u003e The fundamental problem of shells is they are required to be two things.\n\u003e\n\u003e    - A high-frequency REPL, which requires terseness, short command names, little to no syntax, implicit rather than explicit, so as to minimize the duration of REPL cycles.\n\u003e    - A programming language, which requires readable and maintainable syntax, static types, modules, visibility, declarations, explicit configuration rather than implicit conventions.\n\u003e\n\u003e And you can’t do both. You can’t be explicit and implicit, you can’t be terse and readable, you can’t be flexible and robust.\n\nYet, Nushell managed to do *both* pretty well.\nIt's explicit and implicit, terse and readable, flexible and robust.\n\n ## Editor - Helix 🧬\n\n**[Site](https://helix-editor.com/)** | **[Github](https://github.com/helix-editor/helix)**\n\n\u003e A post-modern modal text editor\n\n![screenshot](https://user-images.githubusercontent.com/62389790/219864951-1fbb233d-dfdb-4bab-9394-0faa4d935a3a.png)\n\n**(N)vim** alternative.\nTree-sitter integration, multiple selections, lsp support,\nmany features built-in.\n\nIt **doesn't** support plugins *[(yet)](https://github.com/helix-editor/helix/discussions/3806#discussioncomment-4404346)*, but 8/10 plugin\nuse-cases are already natively implemented. It feels way more responsive\nthan (n)vim. Once you try it you can't go back 🤯\n\nAnd it requires almost no config at all, everything works (and works well)\nout of the box!\n\n## Tools\n\n### ripgrep 🪦\n\n**[Github](https://github.com/BurntSushi/ripgrep)**\n\nA better grep alternative.\nIt's faster, smarter and easier. Unlike GNU grep, ripgrep stays fast\nwhile supporting Unicode (which is always on). Ripgrep also supports\ndifferent regex engines, such as PCRE2\n\n\n```bash\nrg pattern file\n```\n\n### bat 🦇\n\n**[Github](https://github.com/sharkdp/bat)**\n\n\u003e A cat(1) clone with wings.\n\nSyntax highlighting, better pager and faster.\n\n![bat example](https://user-images.githubusercontent.com/62389790/219865017-340cf33e-cedb-4290-b841-89b385643181.png)\n\n### fd 🔍\n\n**[Github](https://github.com/sharkdp/fd)**\n\n\u003e A simple, fast and user-friendly alternative to 'find' \n\nAgain, faster, easier, cooler... \n\n```bash\n# Search for a particular file extension\nfd -e md\n\n# Regular expression search\nfd '^x.*rc$'\n```\n\n### skim 🔭\n\n**[Github](https://github.com/lotabout/skim)**\n\n\u003e fzf-like fuzzy finder\n\n```bash\nrg --files | sk --preview=\"bat {} --color=always\"\nsk -i -c \"rg {} --color=always\" --ansi  \n```\n\n### zoxide 🐇\n\n**[Github](https://github.com/ajeetdsouza/zoxide)**\n\n\u003e A smarter `cd` command. Supports all major shells. \n\nIt remembers which directories you use most frequently,\nso you can \"jump\" to them in just a few keystrokes.\n\n```bash\nz foo      # cd into highest ranked directory matching foo\nz foo bar  # cd into highest ranked directory matching foo and bar\nz foo /    # cd into a subdirectory starting with foo\n\nz ~/foo    # z also works like a regular cd command\nz foo/     # cd into relative path\nz ..       # cd one level up\nz -        # cd into previous directory\n\nzi foo     # cd with interactive selection (using fzf)\n```\n\nAlso, what I like to use is **PWD update hook** in my shell.\nE.g. I prefer to use `cd` to navigate between directories\nand I use `z` only when I need to jump.\nBut without using `z` regurally it won't remember my directories. \nSo, I use something like this (example from my nushell config):\n\n```nu\nenv_change: {\n  PWD: [{|before, after|\n    # Increment directory ranking each time $PWD is changed\n    zoxide add $after\n  }]\n}\n```\n\n### exa 📁\n\n**[Github](https://github.com/ogham/exa)**\n\n\u003e A modern replacement for `ls`. \n\nIt's richer than ls (e.g. `git` integration), supports icons and colors.\n\nThought, I don't use it that much since I use nushell and it has a better\n`cd` built-in. But that's what was my go-to choice before.\n\n\u003cimg width=\"558\" alt=\"Exa\" src=\"https://user-images.githubusercontent.com/62389790/219865067-659d41c0-6ced-4485-ae94-dc3630af5278.png\"\u003e\n\n### sd 📝\n\n**[Github](https://github.com/chmln/sd)**\n\n\u003e Intuitive find \u0026 replace CLI (sed alternative).\n\nIt's just easier and more intuitive.\n\n```bash\n# Simpler syntax for replacing all occurrences \nsd before after\nsed s/before/after/g\n\n# Replace newlines with commas\nsd '\\n' ','\nsed ':a;N;$!ba;s/\\n/,/g' # what is this syntax, seriously...\n```\n\n### rargs 🤹\n\n**[Github](https://github.com/lotabout/rargs)**\n\n\u003e xargs + awk with pattern matching support.\n\n```bash\ncat download-list.csv | rargs -p '(?P\u003curl\u003e.*),(?P\u003cfilename\u003e.*)' wget {url} -O {filename}\n```\n\n## Misc\n\n### Starship 🚀\n\n**[Site](https://starship.rs/)** | **[Github](https://github.com/starship/starship)**\n\n\u003e The minimal, blazing-fast, and infinitely customizable prompt for any shell! \n\nIt's looks very nice by default and provides pretty\nuseful information in a compact format.\n\n![starship](https://user-images.githubusercontent.com/62389790/219865120-99134d75-c4fa-447c-93a4-74f7e87271d4.gif)\n\n### Delta 💬\n\n**[Github](https://github.com/dandavison/delta)**\n\n\u003e A syntax-highlighting pager for git, diff, and grep output\n\n![delta](https://user-images.githubusercontent.com/62389790/219865157-13b3aa72-0ad3-457b-8e34-a5ddf5f5224d.png)\n\n### Tealdeer 🦌\n\n**[Github](https://github.com/dbrgn/tealdeer)**\n\n\u003e A very fast implementation of tldr in Rust. \n\nWhat **tldr** is? [Visit the site](https://tldr.sh/)\n\n\u003e Collaborative cheatsheets for console commands \n\n\u003cimg width=\"537\" alt=\"tldr example with tar\" src=\"https://user-images.githubusercontent.com/62389790/219865208-9de2f467-5a6c-48c5-a84f-f7e909dfa7ab.png\"\u003e\n\n### Marky 🏭\n\n**[Github](https://github.com/metfates/marky)**\n\n\u003e Convert Markdown documents into themed HTML pages with support for code syntax highlighting, LaTeX and Mermaid diagrams. \n\nThis is my own app that I use very often when working with markdown documents.\n\n```bash\nmarky README.md\n```\n\n### Gign ⚙️\n\n**[Github](https://github.com/metafates/gign)**\n\n\u003e A cute .gitignore generator\n\nAnother app that I developed. It allows to generate `.gitignore` files\nefficiently by using community defined templates.\n\n```bash\n# would generate a predefined gitignore template\n# for macOS, JetBrains IDE and python\ngign --append macos jetbrains python\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetafates%2Fworkflow","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetafates%2Fworkflow","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetafates%2Fworkflow/lists"}