Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Ohmyzsh | 159,675 | 1 | 3 | a day ago | 1 | December 07, 2014 | 618 | mit | Shell | |
🙃 A delightful community-driven (with 2,100+ contributors) framework for managing your zsh configuration. Includes 300+ optional plugins (rails, git, macOS, hub, docker, homebrew, node, php, python, etc), 140+ themes to spice up your morning, and an auto-update tool so that makes it easy to keep up with the latest updates from the community. | ||||||||||
Terminal | 89,103 | 17 hours ago | 1,512 | mit | C++ | |||||
The new Windows Terminal and the original Windows console host, all in the same place! | ||||||||||
Tldr | 44,439 | 4 hours ago | 240 | other | Markdown | |||||
📚 Collaborative cheatsheets for console commands | ||||||||||
Bat | 41,568 | 1 | 35 | 2 days ago | 37 | September 10, 2022 | 213 | apache-2.0 | Rust | |
A cat(1) clone with wings. | ||||||||||
Lazygit | 35,581 | 2 | 5 hours ago | 209 | July 18, 2022 | 501 | mit | Go | ||
simple terminal UI for git commands | ||||||||||
Cheat.sh | 35,422 | a day ago | 118 | mit | Python | |||||
the only cheat sheet you need | ||||||||||
Httpie | 27,856 | 1,645 | 42 | 16 days ago | 55 | May 06, 2022 | 146 | bsd-3-clause | Python | |
🥧 HTTPie for Terminal — modern, user-friendly command-line HTTP client for the API era. JSON support, colors, sessions, downloads, plugins & more. | ||||||||||
Fd | 27,755 | a day ago | 24 | May 29, 2022 | 95 | apache-2.0 | Rust | |||
A simple, fast and user-friendly alternative to 'find' | ||||||||||
Awesome Shell | 27,520 | 2 days ago | 79 | cc0-1.0 | ||||||
A curated list of awesome command-line frameworks, toolkits, guides and gizmos. Inspired by awesome-php. | ||||||||||
Modern Unix | 26,760 | 12 days ago | 86 | |||||||
A collection of modern/faster/saner alternatives to common unix commands. |
Fig makes the command line easier for individuals and more collaborative for teams.
Our most popular product is Autocomplete. As you type, Fig pops up subcommands, options, and contextually relevant arguments in your existing terminal.
brew install fig
NOTE: Once it's downloaded, launch the app to set up Fig!
A completion spec is a declarative schema that specifies the subcommands
, options
and args
for a CLI tool. Fig uses these schemas to generate suggestions.
Use the steps below or follow our getting started guide: fig.io/docs
Prerequisites:
Steps
Make sure you have yarn
installed, as that's the package manager used in this repo.
Click here to fork this repo.
Clone your forked repo and create an example spec
# Replace `YOUR_GITHUB_USERNAME` with your own github username
git clone https://github.com/YOUR_GITHUB_USERNAME/autocomplete.git fig-autocomplete
cd fig-autocomplete
# Add withfig/autocomplete as a remote
git remote add upstream https://github.com/withfig/autocomplete.git
# Install packages
yarn install
# Create an example spec (call it "abc")
yarn create-spec abc
# Turn on "dev mode"
yarn dev
Now go to your terminal and type abc[space]
. Your example spec will appear. 😊
src/
folderbuild/
folderbuild
folder, and generators run every keystroke.You can use Fig's autocomplete for your own tools too. Here's how to create private completions:
import { ai } from "@fig/autocomplete-generators"
...
generators: [
ai({
// the prompt
prompt: "Generate a git commit message",
// Send any relevant local context.
message: async ({ executeShellCommand }) => {
return executeShellCommand("git diff")
},
// turn each newline into a suggestion (can specify instead a `postProcess1 function if more flexibility is required)
splitOn: "\n",
})
]
# Typecheck all specs in the src/ folder
yarn test
# Compile typescripts specs from src/ folder to build/ folder
yarn build
# Lint and fix issues
yarn lint:fix
We would love contributions for:
If you aren't able to contribute, please feel free to open an issue.
Want to use Fig to add autocomplete internal CLI tools? Or want to use Fig at work but have security / compliance concerns?
We would love to help get you set up. Please email [email protected]
Fig works with the native macOS Terminal app, iTerm, Tabby, Hyper, Kitty, WezTerm, and Alacritty. It also works in the integrated terminals of VSCode, JetBrains IDEs, Android Studio, and Nova.
Want to see another terminal included? Check our issue tracker and add your support for it!
Fig uses the Accessibility API on Mac to position the window, and integrates with your shell to read what you've typed.
Not yet, Fig is only available on macOS for now. Windows and Linux support is in progress!
Run brew install fig
or, downloading the app at fig.io/download. Then, launch the Fig app!
Yes! Check out our guide on how to get started building autocomplete specs.
Check out our How to Contribute guide. Many of Fig's 200+ contributors made their first open source contribution to Fig!
Join the Discord server and we'll debug it. Fixing Fig in your setup will fix it for other people too! 🙂
Get in touch at [email protected] or chat with us on Discord.