Giter VIP home page Giter VIP logo

yarn-completion's Introduction

yarn-completion

Bash ^4.x completion for Yarn

Installation

To enable on-demand completion loading, download the completion file to the predefined bash-completion user directory.

mkdir -p "${BASH_COMPLETION_USER_DIR:-${XDG_DATA_HOME:-$HOME/.local/share}/bash-completion}/completions/"
curl -o "${BASH_COMPLETION_USER_DIR:-${XDG_DATA_HOME:-$HOME/.local/share}/bash-completion}/completions/yarn" \
	https://raw.githubusercontent.com/dsifford/yarn-completion/master/yarn-completion.bash

Installation on macOS with Homebrew

To use this script on macOS, we need to install bash and bash-completion in addition to the above script.

  1. bash version ^4.x.x is required.

    brew install bash
    
    # Add installed bash to /etc/shells
    sudo echo /usr/local/bin/bash >> /etc/shells
    # or
    echo /usr/local/bin/bash | sudo tee -a /etc/shells
    
    # Set installed bash as your default login shell
    chsh -s /usr/local/bin/bash
  2. Install bash-completion@2 if you have not done it yet:

    brew install bash-completion@2
    ## + copy one line to ~/.bash_profile as instructed by brew after bash-completion setup
  3. Restart Terminal.

FAQ

Will you support bash 3?

No. Bash 3 is now 9 years outdated (at time of writing). There is no conceivable reason why anybody would or should still be using bash 3. Upgrade to the latest version of bash.

License

MIT

yarn-completion's People

Contributors

bysabi avatar danielmahon avatar dsifford avatar gluck avatar jasonkarns avatar jonathanusername avatar kachkaev avatar observeroftime avatar pfernandez avatar silviot avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

yarn-completion's Issues

Add it to bashit

Will you please add it to the bash-it repository so that we can use it?

Allow colon in e.g. package fields script

I often do

"scripts": {
    "test:once": "...",
    "test:watch": "...",
  }

in my package script. Which are never completed properly.

joma@edison:~/entwicklung/nodews/angular-ultimate-fundamentals$ yarn run 
build       code_frmt   dev         env         test:once   test:watch  
joma@edison:~/entwicklung/nodews/angular-ultimate-fundamentals$ yarn run test:
config/       dist/         .git/         node_modules/ src/          types/        .vscode/

So i investigated that colon is a special, see http://tiswww.case.edu/php/chet/bash/FAQ on the E13 case. Looked through your script and saw COMP_WORDBREAKS="\"'><=;|&(: ". Which explicitly includes : as a completion word break character. Which might be kind of the opposite this issue is for.

However, if you accept a PR is see one viable solutions. If a am not missing why else colon should explicitly be included as a wordbreak.

Solution A: Add the wordbreak exclusion parameter to the shell completion builtin calls

COMPREPLY=()
        if command -v _init_completion >/dev/null; then
                _init_completion -n :
        else
                if command -v _get_comp_words_by_ref >/dev/null; then
                        _get_comp_words_by_ref -n : cur prev words cword
                fi
        fi
...
__ltrim_colon_completions "$cur"

giving

joma@edison:~/entwicklung/nodews/angular-ultimate-fundamentals$ yarn run 
build       code_frmt   dev         env         test:once   test:watch  
joma@edison:~/entwicklung/nodews/angular-ultimate-fundamentals$ yarn run test:
once   watch  
joma@edison:~/entwicklung/nodews/angular-ultimate-fundamentals$ yarn run test:once

P.S. I am right now of the opinion that changing COMP_WORDBREAKS as local var in you script never worked.

Workspace package completion

I'm slightly confused with the features in #30. Was this to support completion after the run for a workspace or to provide completion for the workspace, or both?

I'm trying to use completion for the workspace command: yarn workspace <TAB> and it doesn't seem to provide me names of packages.

However, when I use yarn workspace @foo/bar run <TAB>, is shows the scripts for that workspace package.

Should the workspace completion work as well?

Thanks!

Breaks when there is }, in scripts

Having }, inside one of the scripts breaks autocompletion. MWE:

{
  "scripts": {
    "hello1": "echo 'hello1'",
    "hello2": "echo 'hello2'",
    "hello3": "echo 'hello3'",
    "hello4": "echo 'hello4'",
    "hello5": "echo 'hello5'"
  }
}

yarn run hello →tab hello1 hello2 hello3 hello4 hello5 (ok)
npm run hello →tab hello1 hello2 hello3 hello4 hello5 (ok)


{
  "scripts": {
    "hello1": "echo 'hello1'",
    "hello2": "echo '},'",
    "hello3": "echo 'hello3'",
    "hello4": "echo 'hello4'",
    "hello5": "echo 'hello5'"
  }
}

yarn run hello →tab hello1 hello2 (broken)
npm run hello →tab hello1 hello2 hello3 hello4 hello5 (still ok)


A real-world script that broke yarn completion was:

    `"format": "prettier --write --ignore-path .gitignore \"{.,src/**,test/**}/{*.{j,t}s{x,},*.md,ts*.json}\"",

Could the reason be in this line?

sed -n "/\"$parentField\": {/,/\},/p" < "$package" |

Incompatible with bash-completion 1.3 (_init_completion: command not found)

Hi!

First of all, thank you so much for making this! I've been subscribed to yarnpkg/yarn#609 for a while now, so was super excited to see some progress.

After installing, when I type yarn and press tab, I get the error -bash: _init_completion: command not found. From my quick research, _init_completion is provided by the bash-completion package starting in major version 2, which supports [email protected]+. I'm on macOS Sierra (upgraded from Yosemite IIRC), and have bash 3.2.57 installed. My bash-completion package is version 1.3, installed from homebrew.

TLDR, I can't use this completion without upgrading bash-completion, which I can't do without upgrading bash itself, which I don't want to do because... it seems scary. 😁

I found another package that had the same issue and seemed to fix the issue and make the completion compatible with both major versions.

I might be able to take a stab at this a little bit later... but let me know if anyone else starts on it first.

Incorrect suggestion with script name with colon `:`

I have some scripts in my package.json which contain the : character, this is common for commands such as build:dev or build:prod and lint:fix or lint:errors but this bash script will not complete the command when pressing tab key after the :

Example:
package.json with several scripts with colon:
image

type the start of a script name and hit tab:
image

my choices are expo:prebuild or expo:preview so it's good to check in with me which to autocomplete, type the b character for prebuild and press tab again:
image

My bash skills are not good enough to tackle this myself so I'm hoping you can do a quick fix or suggest something as it works for the npm-completion script. Thanks

Colon-contained completion glitches

When I type a text that contains colon(:) and push tab to complete result glitches like this.

$ yarn test # push tab key
$ yarn test:e2e # ok, this is expected

$ yarn test: # push tab key
$ yarn test:test:e2e # completed text comes after colon
  • macOS 10.14.3
  • bash 5.0.3

Feature request: support workspaces run through scripts

package.json:

{
  "scripts": {
    "bar": "dotenv yarn -- workspace @foo/bar"
  }
}

Curruntly trying completion:
yarn bar <TAB> defaults to file completion in the CWD.

It should instead use the scripts from the workspace's package.json.

How can we plug this into our own bash autocompletions?

I've created a function in my .bash_profile that I want to include autocompletions from yarn for.

This is what I'm trying:

complete -o default -o nospace -F _yarn yarnupgrade

but I get the following error:

bash: completion: function '_yarn' not found

Ideally I'd like to only autocomplete the choices output from yarn upgrade.

Otherwise, yarn completion works great!

Add to homebrew

It'd be nice to be able to install this using homebrew if possible.

Does not automplete after colon

If I have the following scrips in my package.json:

scripts: {
dev:something: ",,.,,"
dev:another: "...."
}

When I type dev:s and press tab does not autocomplete dev:something

Tests fail on latest yarn

======================================================================
Environment checks
======================================================================
  should match yarn version line in src file....................FAILED
  | ERROR: mismatched yarn version line in src file.
  | 
  | expected: 1.19.1
  | received: 1.17.3

If there isn't anything else that needs to be changed, I can submit a PR to update the version number.

File path autocompletion

Hi again @dsifford 👋

I've noticed one more difference between npm completion and yarn completion and decided to share. It is to do with file paths. Here's the use case:

I've got a TypeScript / Node.js project, which stores a few data-processing actions. Folder structure looks like so:

node_modules
src/actions/do-this.ts
src/actions/do-that.ts
src/actions/....ts
src/lib/...
package.json

Every file in src/actions is an entry point, which I could run just as node src/actions/do-this.js if they were written in pure JavaScript. The most straightforward alternative for TypeScript is to go for ts-node src/actions/do-this.ts, assuming that ts-node is globally installed. However, a local copy of ts-node is better, especially if the project is shared between multiple people.

A pretty handy alternative to typing node_modules/.bin/ts-node src/actions/do-this.ts can be creating simple proxy scripts in package.json:

    "exec": "ts-node",
    "exec:watch": "ts-node-dev --respawn --notify=false",

The commands become shorter:

yarn exec src/actions/do-this.ts
yarn exec:watch src/actions/do-this.ts

In these cases, it'd be great if yarn-completion could hint users with the paths, say after typing yarn exec src/actions/d + tab. This feature is already supported in npm: npm run exec:watch src/acnpm run exec:watch src/actions/ etc.

WDYT?

Support yarn workspaces

Yarn has workspaces feature, which is commonly used to manage monorepos. It lets developers keep multiple npm packages in a single repository and manipulate them from the root folder.

A typical project setup may look like this:

/
  packages/
    package-one/
      package.json
    package-two/
      package.json
package.json

In root package.json:

{
  "private": true,
  "workspaces": ["packages/*"]
}

packages/*/package.json files look like the normal ones, i.e. with their own scripts and dependencies.

Things you can do as a developer:

## install all deps everywhere and link `package-one` with `package-two` if needed
yarn

## add lodash package as a dependency to package-one
yarn workspace package-one add lodash

## remove lodash from package-one
yarn workspace package-one remove lodash

## same as to run "yarn do-something" inside packages/package-two
yarn workspace package-two do-something

## list locations of package-one and package-two as json
yarn workspaces info

It'd be awesome if yarn-completion helped in these cases:

yarn workspace package-o
yarn workspace package-one
yarn workspace package-one ad
yarn workspace package-one add
yarn workspace package-one remove lo
yarn workspace package-one remove lodash
yarn workspace package-two do-s
yarn workspace package-two do-something
yarn workspaces i
yarn workspaces info

`yarn why` includes a leading slash and also `.bin`

If I type yarn why and then try to tab complete, it gives me a list that looks like this:

/.bin
/@types
/URIjs
/abab
[snip]

There are two problems with this. The first is that each item has a leading slash. This is because I am running on macOS, which uses BSD find, which includes the search path verbatim in the results. Running the find command used in the script yields these results:

$ find node_modules/ -maxdepth 1 -type d | sort
node_modules/
node_modules//.bin
node_modules//@types
node_modules//URIjs
node_modules//abab
[snip]

This can be easily fixed by changing the command to use node_modules:

$ find node_modules -maxdepth 1 -type d | sort
node_modules
node_modules/.bin
node_modules/@types
node_modules/URIjs
node_modules/abab
[snip]

By adding -mindepth 1, we don't have to even think about the folder itself:

$ find node_modules -maxdepth 1 -mindepth 1 -type d | sort
node_modules/.bin
node_modules/@types
node_modules/URIjs
node_modules/abab
[snip]

The other issue is that .bin is included in the list, and it really probably shouldn't be. This can be handled by adding -not -name .bin to the arguments:

$ find node_modules -maxdepth 1 -mindepth 1 -type d -not -name .bin | sort
node_modules/@types
node_modules/URIjs
node_modules/abab
[snip]

Support old bash

I use GNU bash, version 3.2.57(1) and when I complete with your script it works but I get this annoying error: compopt: command not found

head: illegal line count

Thanks for working on this. I noticed an issue when typing the following:

$ yarn remove <tab>

I get:

yarn remove head: illegal line count -- -1
usage: grep [-abcDEFGHhIiJLlmnOoqRSsUVvwxZ] [-A num] [-B num] [-C[num]]
        [-e pattern] [-f file] [--binary-files=value] [--color=when]
        [--context[=num]] [--directories=action] [--label] [--line-buffered]
        [--null] [pattern] [file ...]

Running MacOS Sierra, Bash 4.4.12, grep (BSD grep) 2.5.1-FreeBSD

Scripts completion does not work from a subdirectory

I noticed that moving to a sub-directory breaks project-specific autocompletion such as for scripts.

project/package.json

{
  "scripts": {
    "do-something": "echo 'hello'"
  }
}
cd project
yarn do-s # tab 🎉 
yarn do-something
cd project/docs
yarn do-s # tab ❌

It'd be great if yarn-completion searched for the nearest parent package.json if it is not found in cwd.

Yarn v2/berry support ?

Yarn v1 being on maintenance mode, it'd be great to support the upcoming v2/berry.

Food for thoughts:

  • command list is pretty different
  • yarn version is "per-repository"
  • the script could either detect the current yarn version to provide proper completion
  • or create another branch/script and rely on the user to use the proper one ?

yarn --help

support fish

create fish-ported script for the bash completions and have installation instructions

use package name instead of directory basename for workspace

I think this are the relevant lines:

workspaces+=("$(basename "$workspace_path")")

The package name of a workspace package is not always equal to the folder name. E.g. a scoped package @organisation/foobar could be located under packages/foobar.

yarn-completion only completes with foobar instead of @organisation/foobar.

Therefore yarn-completion should rely on parsing the package name from the actual package.json of the workspace package.

Zsh support?

Hi, I don't know how completions work internally and whether completions for Zsh are something completely different than completions for Bash but it would be awesome if this package worked in both shells. Is that technically possible?

BTW, these Yarn completions are way more advanced than anything else I have seen (for zsh at least), for example, parsing workspaces from package.json as per #29 is the right thing to do while most other completions don't support Yarn workspaces at all.

Git-Bash completions

Placing the completion script in /usr/share/bash-completion/completions is not enough. How can I make it work?

Tests are failing

OS: Arch Linux
Bash version: 5.0.7 and 4.4.23 both
Yarn version: 1.16.0
yarn-completion version: 0.14.0

Tests are failing with the following output.

======================================================================
Environment checks
======================================================================
  should match yarn version line in src file........................OK
======================================================================
Checking top-level commands
======================================================================
  should have matching commands.....................................OK
  should have matching global options...............................OK
======================================================================
Checking top-level command options
======================================================================
  [access] should have matching options.............................OK
  [add] should have matching options................................OK
  [audit] should have matching options..........................FAILED
  | ERROR (audit): mismatched options found
  | 
  | --groups
  | --level
  [autoclean] should have matching options..........................OK
  [bin] should have matching options................................OK
  [cache] should have matching options..............................OK
  [check] should have matching options..............................OK
  [config] should have matching options.............................OK
  [create] should have matching options.............................OK
  [exec] should have matching options...............................OK
  [generate-lock-entry] should have matching options................OK
  [global] should have matching options.............................OK
  [help] should have matching options...............................OK
  [import] should have matching options.............................OK
  [info] should have matching options...............................OK
  [init] should have matching options...............................OK
  [install] should have matching options............................OK
  [licenses] should have matching options...........................OK
  [link] should have matching options...............................OK
  [list] should have matching options...............................OK
  [login] should have matching options..............................OK
  [logout] should have matching options.............................OK
  [node] should have matching options...............................OK
  [outdated] should have matching options...........................OK
  [owner] should have matching options..............................OK
  [pack] should have matching options...............................OK
  [policies] should have matching options...........................OK
  [publish] should have matching options............................OK
  [remove] should have matching options.............................OK
  [run] should have matching options................................OK
  [tag] should have matching options................................OK
  [team] should have matching options...............................OK
  [unlink] should have matching options.............................OK
  [unplug] should have matching options.............................OK
  [upgrade] should have matching options............................OK
  [upgrade-interactive] should have matching options................OK
  [version] should have matching options............................OK
  [versions] should have matching options...........................OK
  [why] should have matching options................................OK
  [workspace] should have matching options..........................OK
  [workspaces] should have matching options.........................OK

There were 1 failures.

Homebrew 0.14.0 upgrade issue

Relates to: Homebrew/homebrew-core#40647
Build ref: https://jenkins.brew.sh/job/Homebrew%20Core%20Pull%20Requests/43137/version=mojave/console

Some local failure log

==> source /usr/local/Cellar/yarn-completion/0.14.0/etc/bash_completion.d/yarn && complete -p yarn
/usr/local/Cellar/yarn-completion/0.14.0/etc/bash_completion.d/yarn: line 239: syntax error near unexpected token `('
/usr/local/Cellar/yarn-completion/0.14.0/etc/bash_completion.d/yarn: line 239: `		<(echo "${flags[@]}" "${global_flags[@]}" | tr ' ' '\n' | LC_ALL=C sort -u) \'
Error: yarn-completion: failed
An exception occurred within a child process:
  Test::Unit::AssertionFailedError: <0> expected but was
<1>.
/Library/Ruby/Gems/2.3.0/gems/test-unit-3.1.5/lib/test/unit/assertions.rb:55:in `block in assert_block'

"counter" and "cmd" must be set by the caller and be the appropriate type

Currently any tab completion after yarn ends with this message and exit. Seems to me that a declare cmd does not make it in the check before the exit.

joma@edison:~$ homestead ssh
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-112-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

215 packages can be updated.
76 updates are security updates.


Last login: Tue Apr  3 23:03:34 2018 from 10.0.2.2
vagrant@homestead:~$ bash --version
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
vagrant@homestead:~$ set -v
vagrant@homestead:~$ . ~/.yarn-completion
vagrant@homestead:~$ yarn __yarn_get_package_fields scripts
pwd
cword=1
words[0]=${!ref}${COMP_WORDS[i]}
words[1]=${!ref}${COMP_WORDS[i]}
cword=1
words=("${@:3:2}")
cword="$3"
cur="$3"
cur="$3"
cword="$3"
prev="$3"
words=("${@:3:2}")
declare -p counter cmd 2>/dev/null | awk '{ printf "%s", $2 }'
"counter" and "cmd" must be set by the caller and be the appropriate type
logout
# ~/.bash_logout: executed by bash(1) when login shell exits.

# when leaving the console clear the screen to increase privacy

if [ "$SHLVL" = 1 ]; then
    [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
fi
Connection to 127.0.0.1 closed.

Targets with a : don't work correctly (special characters require escaping)

Example (generated by Nest.js CLI):

{
    "name": "hello-nest-js",
    "version": "0.0.1",
    "description": "",
    "author": "",
    "private": true,
    "license": "UNLICENSED",
    "scripts": {
        "prebuild": "rimraf dist",
        "build": "nest build",
        "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
        "start": "nest start",
        "start:dev": "nest start --watch",
        "start:debug": "nest start --debug --watch",
        "start:prod": "node dist/main",
        "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
        "test": "jest",
        "test:watch": "jest --watch",
        "test:cov": "jest --coverage",
        "test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
        "test:e2e": "jest --config ./test/jest-e2e.json"
    },
    "dependencies": {
        "@nestjs/common": "^7.0.0",
        "@nestjs/core": "^7.0.0",
        "@nestjs/platform-express": "^7.0.0",
        "reflect-metadata": "^0.1.13",
        "rimraf": "^3.0.2",
        "rxjs": "^6.5.4"
    },
    "devDependencies": {
        "@nestjs/cli": "^7.0.0",
        "@nestjs/schematics": "^7.0.0",
        "@nestjs/testing": "^7.0.0",
        "@types/express": "^4.17.6",
        "@types/jest": "25.1.4",
        "@types/node": "^13.9.1",
        "@types/supertest": "^2.0.8",
        "@typescript-eslint/eslint-plugin": "^2.23.0",
        "@typescript-eslint/parser": "^2.23.0",
        "eslint": "^6.8.0",
        "eslint-config-prettier": "^6.10.0",
        "eslint-plugin-import": "^2.20.1",
        "jest": "^25.1.0",
        "prettier": "^1.19.1",
        "supertest": "^4.0.2",
        "ts-jest": "25.2.1",
        "ts-loader": "^6.2.1",
        "ts-node": "^8.6.2",
        "tsconfig-paths": "^3.9.0",
        "typescript": "^3.7.4"
    },
    "jest": {
        "moduleFileExtensions": [
            "js",
            "json",
            "ts"
        ],
        "rootDir": "src",
        "testRegex": ".spec.ts$",
        "transform": {
            "^.+\\.(t|j)s$": "ts-jest"
        },
        "coverageDirectory": "../coverage",
        "testEnvironment": "node"
    }
}

Sample:

$ yarn run <TAB><TAB>
build        lint         start:debug  test         test:e2e     
env          prebuild     start:dev    test:cov     test:watch   
format       start        start:prod   test:debug   
$ yarn run test<TAB><TAB>
test        test:cov    test:debug  test:e2e    test:watch  
$ yarn run test:<TAB><TAB>
$ yarn run test:c<TAB><TAB>overage 
yarn run v1.21.1
error Command "test:coverage" not found.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

command not found: completions-yarn

in my .zshrc I have:
[[ -f /Users/martin/.config/yarn/global/node_modules/tabtab/.completions/yarn.zsh ]] && . /Users/martin/.config/yarn/global/node_modules/tabtab/.completions/yarn.zsh

upon typing "yarn" space and tab I get:

yarn _yarn_completion:4: command not found: completions-yarn
_yarn_completion:4: command not found: completions-yarn
_yarn_completion:4: command not found: completions-yarn
yarn

Doesn't work on Mac with bash 3

Tab key with yarn string triggers an error after yarn completion installed.

Error:

-bash: compopt: command not found
-bash: compopt: command not found
-bash: compopt: command not found
OS version: macOS High Sierra 10.13.4

Bash version:
GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin17)

Yarn version: 1.7.0
Node version: 9.9.0

command not found: _init_completion; command not found: _get_comp_words_by_ref

I have next error using yarn completion (zsh as shell).

 yarn _yarn:78: command not found: _init_completion
_yarn:80: command not found: _get_comp_words_by_ref
$ bash --version
GNU bash, version 4.4.12(1)-release (x86_64-apple-darwin16.3.0)
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Excellent work

Thank you very much. Your project works great. Good job!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.