-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Home
- docker
- docker-compose
- kubernetes
- doctl (Digital Ocean)
- heroku
- firebase
- curl
Python Community
Javascript Community
Other Communities
- We ultimately want to work with every tool.
Have their own page
Let's go through each item in the list below and make sure we have good completions for them. When done, add the ✅ This list is generously provided to us by the Docker team.
Click to view top 60 subcommands
most used |
---|
run |
build |
exec |
context ls |
--help |
compose up |
version |
images |
pull |
start |
rm |
stop |
inspect |
login |
compose down |
info |
push |
stats |
logs |
tag |
--version |
serve |
rmi |
compose stop |
cp |
compose build |
system prune |
image ls |
compose logs |
compose exec |
container ls |
compose run |
volume ls |
compose ps |
kill |
network ls |
image inspect |
network create |
ls |
volume rm |
image prune |
compose config |
template ls |
template config |
image |
image rm |
events |
volume prune |
volume create |
restart |
network inspect |
container rm |
compose pull |
compose --help |
container prune |
compose restart |
container inspect |
compose version |
compose rm |
@DannyAziz taking lead on this too. I believe the most popular stuff is done. Similar to kubectl, if there is a workflow you have that is missing suggestions, please feel free to build it and submit a PR!!
- One task could be integrating docker-compose into the
docker compose
(the latter is the docker CLI with a compose subcommand). You can use theloadSpec
prop of a subcommand object to do this.
- @DannyAziz doing most of the work here. I (Brendan) don't know kubectl super well. Very reliant on people who know the most common workflows and are able to build Fig to solve their own needs first (as chances are these are the needs of others)!
- @Matt currently seeing if he can scrape the docs to build the skeleton. I believe it is built on oclif!
- You will probably be making use of script as a function for anything where you want to provide suggestions relevant to the context of the user
- Look up the getting started guides. The ones that are recommended likely have the most commonly used commands in them. Providing a good experience for these commands is a good goal.
-
similar instructions as the ones for heroku above https://firebase.google.com/docs/cli#deployment
-
this is a monster spec. The skeleton is mostly done (I believe there is a PR waiting to be reviewed)
-
You may have to set up a firebase account yourself and have a play around
-
Look up the most common workflows for this and focus on doing them really really well.
-
You will likely have to take advantage of script as a function a lot here. e.g. if the user wants to add something to an existing project, they will probably have an option with an arg that refers to that project, then they will want contextually relevant suggestions for that specific project
-
Perhaps start with cloud storage, hosting, authentication (link) and make those workflows good?
- This is mostly done but check we have done the most common workflows
- the
-m <module>
is currently not supported by Fig's completion spec. Just disregard it for the moment and I (brendan) will fix up the spec standard so we cater to it!
- Get the skeleton working
- Look up the most common workflows for this and make sure they work and offer good suggestions!
- This is a package manager, so find some http endpoint (or local cli command) we can run to search over the packages
- the
npm install
generator is a great starting point for this
- the
- Get the skeleton working
- Look up the most common workflows for this and make sure they work and offer good suggestions!
- Get the skeleton working
- Look up the most common workflows for this and make sure they work and offer good suggestions!
- This is a package manager, so find some http endpoint (or local cli command) we can run to search over the packages
- the
npm install
generator is a great starting point for this
- the
- Get the skeleton working
- Look up the most common workflows for this and make sure they work and offer good suggestions!
- Just get the core workflows here. Jupyter notebook and if there are any other options or subcommands, list them
- Notebook should have the highest priority!
-
npm install
is pretty much done. I (brendan) deliberately commented out the generator while i fixed something with our debounce function. I will uncomment when this is fixed and pushed!
- run
- think this is pretty good
- install
- think this is pretty good, just research a little
- uninstall
- need a generator for only packages in local
- support for shortcuts
- create subcommands for the following and make sure they have the exact same code as the things they are aliased too
- ![image-20210421180244904](/Users/brendan/Library/Application Support/typora-user-images/image-20210421180244904.png)
- Build the spec for this
- The should just be a generator for all the npm packages, the same as the one for
npm install
- e.g. you can try out
npx cowsay hello world
and it will install the cowsay and run it
- e.g. you can try out
- ![image-20210421180346861](/Users/brendan/Library/Application Support/typora-user-images/image-20210421180346861.png)
Read more about npx here: https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b
The spec and generators should be pretty similar to npm
! It's the same package manager
Here is a nice little comparison between yarn and npm: https://classic.yarnpkg.com/en/docs/migrating-from-npm/
- Goal: get the most common workflows here. Make the user experience really really good for these.
- scrape this: https://nodejs.org/api/cli.html
- Scrape https://www.typescriptlang.org/docs/handbook/compiler-options.html and build skeleton!
- Generate the spec automatically from the json representation: https://github.com/SchemaStore/schemastore/blob/master/src/schemas/json/tsconfig.json
- These are the most commonly used commands - make sure they are right!!! - https://github.com/orta/tsc-cli-example/runs/2403868072?check_suite_focus=true#step:4:12
- Thank you to https://twitter.com/orta for the help 😊
Same as ts-node --script
, unfortunately, you'll just have create a new spec called ts-node-script.js
and copy and paste most of the ts-node one :/
Same as ts-node --transpile-only
, unfortunately, you'll just have to create a new spec called ts-node-transpile-only.js
Brendan TODO: Manually override these special CLIs so they just conform to the ts-node spec and we don't need to create extra specs 👍
General principle here: I am a developer, I want to make a really really quick http request with url, how can we make this as easy as possible for you? ideally we have all the common defaults and you just select the options you need!
- just the basics done really well
- add headers (with some predefined suggestions like HOST, User-Agent, Accept, Accept-Encoding, -> big list here (https://www.whitehatsec.com/blog/list-of-http-response-headers/) and big list here https://en.wikipedia.org/wiki/List_of_HTTP_header_fields
- Special header suggestions for
Content-Type
: application/json, application/javascript, text/plain, multipart/form-data,
- Special header suggestions for
- add body (not 100% sure what this is off the top of my head)
- choose request type (post, get, update, put etc)
- add headers (with some predefined suggestions like HOST, User-Agent, Accept, Accept-Encoding, -> big list here (https://www.whitehatsec.com/blog/list-of-http-response-headers/) and big list here https://en.wikipedia.org/wiki/List_of_HTTP_header_fields