Giter Club home page Giter Club logo

actions-codespell's People

Contributors

cclauss avatar dependabot[bot] avatar dimitripapadopoulos avatar drammock avatar hugovk avatar jdufresne avatar kbdharun avatar larsoner avatar okuramasafumi avatar per1234 avatar peternewman avatar pre-commit-ci[bot] avatar truebrain 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

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

actions-codespell's Issues

Add the number of processed files to the output

On success, the action prints:

Codespell found no problems

However it will print the same message if it did not check any files at all due to, for example, an issue in the path specification. It would be nice if it also printed how many files it checked to avoid any doubts, e.g.:

Codespell found no problems in 123 files

Release v2

Please cut a new release so that fixes such as #60 become available in a released form. Otherwise we are doomed to use @master version.

Provide a development roadmap

This action has been very useful. Thanks!

The lack of releases may give the impression that it's not ready for production use, but it seems to be pretty good. It would be helpful for interested parties to have some understanding of the development roadmap of this project.

For me, the ideal is to be able to pin the major version ref of an action (e.g., uses: codespell-project/actions-codespell@v1) in my workflows, which provides the stability of release versions while also allowing the workflow to benefit from ongoing development work by always using the latest release unless there have been breaking changes (and thus a major version bump).

Bug: `codespell` GH Actions throws with `UnboundLocalError: local variable 'tomllib' referenced before assignment`

My codespell actions started to fail around 30mins ago with the following error (example run: https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519).

##[debug]Evaluating condition for step: 'Run codespell'
##[debug]Evaluating: success()
##[debug]Evaluating success:
##[debug]=> true
##[debug]Result: true
##[debug]Starting: Run codespell
##[debug]Loading inputs
##[debug]Loading env
Run codespell-project/[email protected]
  with:
    check_filenames: true
    skip: ./.git,yarn.lock
/usr/bin/docker run --name a5c76b7655e0d7e78b4e1499b[2](https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519#step:4:2)6442c82d2c24_a02[3](https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519#step:4:3)ed --label a5c76b --workdir /github/workspace --rm -e "INPUT_CHECK_FILENAMES" -e "INPUT_SKIP" -e "INPUT_CHECK_HIDDEN" -e "INPUT_EXCLUDE_FILE" -e "INPUT_BUILTIN" -e "INPUT_IGNORE_WORDS_FILE" -e "INPUT_IGNORE_WORDS_LIST" -e "INPUT_URI_IGNORE_WORDS_LIST" -e "INPUT_PATH" -e "INPUT_ONLY_WARN" -e "HOME" -e "GITHUB_JOB" -e "GITHUB_REF" -e "GITHUB_SHA" -e "GITHUB_REPOSITORY" -e "GITHUB_REPOSITORY_OWNER" -e "GITHUB_REPOSITORY_OWNER_ID" -e "GITHUB_RUN_ID" -e "GITHUB_RUN_NUMBER" -e "GITHUB_RETENTION_DAYS" -e "GITHUB_RUN_ATTEMPT" -e "GITHUB_REPOSITORY_ID" -e "GITHUB_ACTOR_ID" -e "GITHUB_ACTOR" -e "GITHUB_TRIGGERING_ACTOR" -e "GITHUB_WORKFLOW" -e "GITHUB_HEAD_REF" -e "GITHUB_BASE_REF" -e "GITHUB_EVENT_NAME" -e "GITHUB_SERVER_URL" -e "GITHUB_API_URL" -e "GITHUB_GRAPHQL_URL" -e "GITHUB_REF_NAME" -e "GITHUB_REF_PROTECTED" -e "GITHUB_REF_TYPE" -e "GITHUB_WORKFLOW_REF" -e "GITHUB_WORKFLOW_SHA" -e "GITHUB_WORKSPACE" -e "GITHUB_ACTION" -e "GITHUB_EVENT_PATH" -e "GITHUB_ACTION_REPOSITORY" -e "GITHUB_ACTION_REF" -e "GITHUB_PATH" -e "GITHUB_ENV" -e "GITHUB_STEP_SUMMARY" -e "GITHUB_STATE" -e "GITHUB_OUTPUT" -e "RUNNER_DEBUG" -e "RUNNER_OS" -e "RUNNER_ARCH" -e "RUNNER_NAME" -e "RUNNER_TOOL_CACHE" -e "RUNNER_TEMP" -e "RUNNER_WORKSPACE" -e "ACTIONS_RUNTIME_URL" -e "ACTIONS_RUNTIME_TOKEN" -e "ACTIONS_CACHE_URL" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/snekmate/snekmate":"/github/workspace" a5c76b:7655e0d7e78b[4](https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519#step:4:4)e1499b26442c82d2c24
::add-matcher::/home/runner/work/_temp/_github_workflow/codespell-matcher.json
##[debug]Added matchers: 'codespell-matcher-default', 'codespell-matcher-specified'. Problem matchers scan action output for known warning or error strings and report these inline.
Running codespell on '' with the following options...
Check filenames? 'true'
Checking filenames
Check hidden? ''
Exclude file ''
Skipping './.git,yarn.lock'
Builtin dictionaries ''
Ignore words file ''
Ignore words list ''
Ignore URI words list ''
Resulting CLI options  --check-filenames --skip ./.git,yarn.lock
Traceback (most recent call last):
  File "/usr/local/bin/codespell", line 8, in <module>
    sys.exit(_script_main())
  File "/usr/local/lib/python3.8/site-packages/codespell_lib/_codespell.py", line 987, in _script_main
    return main(*sys.argv[1:])
  File "/usr/local/lib/python3.8/site-packages/codespell_lib/_codespell.py", line 992, in main
    options, parser, used_cfg_files = parse_options(args)
  File "/usr/local/lib/python3.8/site-packages/codespell_lib/_codespell.py", line [5](https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519#step:4:5)[6](https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519#step:4:6)[8](https://github.com/pcaversaccio/snekmate/actions/runs/4367178830/jobs/7638639519#step:4:8), in parse_options
    data = tomllib.load(f).get("tool", {})
UnboundLocalError: local variable 'tomllib' referenced before assignment
Codespell found one or more problems
::remove-matcher owner=codespell-matcher-default::
##[debug]Removed matchers: 'codespell-matcher-default'
::remove-matcher owner=codespell-matcher-specified::
##[debug]Removed matchers: 'codespell-matcher-specified'
##[debug]Docker Action run completed with exit code 1
##[debug]Finishing: Run codespell

Running codespell locally with the latest version works.

Stopped ignoring configured words

Since the last commit, it seems, codespell started flagging the word hasTable as a typo of hashable.
I added that word to my .codespellrc ignore-words-list, but to no avail. I trhen added it with

        - name: Run Codespell
          uses: codespell-project/actions-codespell@master
          with:
            ignore_words_list: hasTable

but it's still being flagged. How can I ignore this error? this action run shows the mistake,

Tag a new version

Greetings team, can we get a new tag?

The latest one v2 is from 1 year ago and since then there's been a few changes. Most notably the switch to node20.

Thanks in advance

exclude_file vs. skip

I don't understand the documentation of exclude_file:

File with lines that should not be checked for spelling mistakes.

This parameter is optional; by default codespell will check all lines.

uses: codespell-project/actions-codespell@master
with:
  exclude_file: src/foo

Does it exclude lines or files? If it excludes specific lines, please give an example how to achieve that. If it excludes files, remove any reference to line and explain how skip and exclude_file are different.

Reply results in PR

I know the action replies on the commit with typos it finds but would it be possible for it to reply with the full results as a comment on the actual pull request rather than the commit? Or even both?

Whitelisting does not work at all

Action configured to whitelist UpToDate

    - name: Check spelling
      uses: codespell-project/actions-codespell@master
      with:
        check_hidden: true
        check_filenames: true
        skip: ./.git,./.gitignore
        ignore_words_list: UpToDate

I am getting the error. The action does notwork.

Error: [...]/UiControls/Test.xaml.cs:59: UpToDate ==> up-to-date

The same happens when I use the ignore_words_file param and a file. It logs that the params are there, but it does not work.

Resulting CLI options  --check-filenames --check-hidden --skip ./.git,./.gitignore --ignore-words-list UpToDate

Add a major version ref

As mentioned in the official documentation, it is common practice for the maintainers of GitHub Actions actions to provide a Git ref for each major version series that always points to the latest tag in that series.

For example, for the 1.x.x major version series, a ref named v1 should be created, and moved to the tagged commit at each release (currently 22ff5a2).

Action dependency version control

There are several possible approaches to controlling the version of an action dependency that will be used in a GitHub Actions workflow

Pin to commit hash

This approach causes the specific version of the action is used by the workflow.

Example:

- uses: codespell-project/actions-codespell@22ff5a2e4b591290baf82d47c9feadac31c65441

This may be appropriate when it is important to ensure an audited version of an action is used for security purposes. However, it also means that the workflow will either require frequent maintenance to keep it up to date, or more likely end up using an outdated version of the action.

Reference branch

This approach causes the version of the action from the current tip of the branch to be used by the workflow.

Example:

- uses: codespell-project/actions-codespell@master

This is appropriate for beta testing, and unavoidable in the case where an action doesn't have releases. However, it is not ideal for use in a production workflow because it subjects it to an unstable version of the action which may introduce bugs or breaking changes at any moment

Major version ref

This approach causes the latest release of the action from within the given major version series to be used by the workflow.

Example:

- uses: codespell-project/actions-codespell@v1

The major version ref offers a balance between the two extremes of the other alternatives by allowing a workflow configuration that will automatically use the latest stable version of the action up to such a time as the major version is bumped due to a breaking change.

Ref options

GitHub Actions supports the use of any Git ref in the jobs.<job_id>.steps[*].uses fields of the workflow. This means there are two options for the creation of a major version ref.

These are functionally identical from the user's perspective, so the choice is a matter of the maintainer's preference or philosophy.

Git tag

This is the most common approach. For example:

It is maybe questionable whether it is generally considered best practices to change a Git tag after pushing it to a shared repository, as would be inherent to the nature of a major ref tag. Some discussion about that here.

Branch

Although less common, this is used in some prominent actions. For example:

gets to analyze .git/ files and "fail" on object files

I guess finds some uncompressed objects it identifies as text files and starts checking them

this basic workflow https://github.com/datalad/tutorials/pull/20/files#diff-ce84a1b2c9eb4ab3ea22f610cad7111cb9a2f66365c3b24679901376a2a73ab2 lead to

Resulting CLI options  --skip *.svg
Warning: WARNING: Decoding file using encoding=utf-8 failed: ./.git/objects/1e/a4a450299271c0a5e69bc79e1cb4a8771b34da
Error: ./.git/objects/1e/a4a450299271c0a5e69bc79e1cb4a8771b34da:755: ot ==> to, of, or, not
WARNING: Trying next encoding iso-8859-1
Warning: WARNING: Decoding file using encoding=utf-8 failed: ./.git/objects/78/f14c2775affc5ed4fcd819b66ff5bfd[15](https://github.com/datalad/tutorials/actions/runs/3696668759/jobs/6260675265#step:4:16)92806
WARNING: Trying next encoding iso-8859-1
Warning: WARNING: Decoding file using encoding=utf-8 failed: ./.git/objects/fb/52afd8fb6f45744569797c8ef1d1b7b1dbace0
WARNING: Trying next encoding iso-8859-1
3
Error: ./.git/objects/1e/a4a450299271c0a5e69bc79e1cb4a8771b34da:838: Te ==> The, Be, We, To
Error: ./.git/objects/1e/a4a450299271c0a5e69bc79e1cb4a8771b34da:911: nd ==> and, 2nd
Codespell found one or more problems

doesn't happen for me locally... but looking at strace -- indeed codespell does go under .git/ to "sniff around":

❯ strace -f -o /tmp/codespell.strace codespell --skip '*.svg' >/dev/null
❯ grep '\.git/objects' /tmp/codespell.strace
1918302 newfstatat(AT_FDCWD, "./.git/objects", {st_mode=S_IFDIR|0700, st_size=16, ...}, AT_SYMLINK_NOFOLLOW) = 0
1918302 openat(AT_FDCWD, "./.git/objects", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
1918302 newfstatat(AT_FDCWD, "./.git/objects/pack", {st_mode=S_IFDIR|0700, st_size=198, ...}, AT_SYMLINK_NOFOLLOW) = 0
1918302 openat(AT_FDCWD, "./.git/objects/pack", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3
1918302 newfstatat(AT_FDCWD, "./.git/objects/pack/pack-5d46e9abf8de8270def5b70004db30dcaa17bda3.pack", {st_mode=S_IFREG|0400, st_size=97786, ...}, 0) = 0
1918302 openat(AT_FDCWD, "./.git/objects/pack/pack-5d46e9abf8de8270def5b70004db30dcaa17bda3.pack", O_RDONLY|O_CLOEXEC) = 3
1918302 newfstatat(AT_FDCWD, "./.git/objects/pack/pack-5d46e9abf8de8270def5b70004db30dcaa17bda3.idx", {st_mode=S_IFREG|0400, st_size=13756, ...}, 0) = 0
1918302 openat(AT_FDCWD, "./.git/objects/pack/pack-5d46e9abf8de8270def5b70004db30dcaa17bda3.idx", O_RDONLY|O_CLOEXEC) = 3
1918302 newfstatat(AT_FDCWD, "./.git/objects/info", {st_mode=S_IFDIR|0700, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
1918302 openat(AT_FDCWD, "./.git/objects/info", O_RDONLY|O_NONBLOCK|O_CLOEXEC|O_DIRECTORY) = 3

ideally should be fixed in codespell itself (to not consider at least .git/objects, some scripts might be under .git/) but I think it should be safe to assume that codespell action for github should not check anything in .git/ since there should be nothing committed / to fix there.

edit: workaround -- add .git to --skip i.e.

❯ strace -f -o /tmp/codespell.strace codespell --skip '*.svg,.git' >/dev/null
❯ grep '\.git/' /tmp/codespell.strace

comes out empty handed

Doesn't work?

I may be doing something stupid, but this does not seem to be working, codespell does not detect any errors:

 6 Running codespell on '' with the following options...
 7 Check filenames? 'true'
 8 Checking filenames
 9 Check hidden? ''
10 Exclude file ''
11 Skipping 'spelling.txt,LICENSE.OpenSSL'
12 Builtin dictionaries ''
13 Ignore words file ''
14 Ignore words list ''
15 Resulting CLI options  --check-filenames --skip spelling.txt,LICENSE.OpenSSL
16 0
17 Codespell found no problems

See pull request adrienverge/openfortivpn#921 and the .github/workflos/codespell.yml file

---
name: Codespell

on:
  push:

  pull_request:
    branches:
      - master

jobs:
  codespell:
    name: Codespell
    runs-on: ubuntu-latest

    steps:
      - name: Run Codespell
        uses: codespell-project/actions-codespell@master
        with:
          check_filenames: true
          skip: spelling.txt,LICENSE.OpenSSL

Improve documentation on `path` option, or rename

It'd be nice if the annotations could be limited to files that changed or were added as part of the PR. If understand correctly right now, I can only limit the action to a single folder (path), or filter files out with globs (skip) which does not quite cover this.

If you are running with only_warn then its possible you'll end up with the same unaddressed misspells being annotated on every pull request (which could become quite noisy in a large monorepo).

Ignore_words_file not working/firing?

Steps to reproduce

Use the following action

name: codespell
on: pull_request
jobs:
    codespell:
        name: Check for spelling errors
        runs-on: ubuntu-latest
        steps:
        - uses: actions/checkout@v2
        - uses: codespell-project/actions-codespell@master
          with:
            ignore_words_file: './.codespellignore'
            check_filenames: true
            check_hidden: true
            skip: ./.git,*.png,*.csv,./archive,./legacy_submissions
            only_warn: 1

Expected Behavior

The words listed in the .codespellignore file should not appear in the action results. The file looks like so

upto
Upto
leapYears
leapYear

Actual Behavior

The action just runs and errors out on these words despite putting them in this file or even in ignore_words_list. I'm not sure if I've got something wrong in my setup, so I'm hoping someone can provide some advice. It just looks like the job isn't using the file.

I have a PR up in a forked repo where I'm encountering this. The job is running on only_warn at the moment: ZachBaird/curriculum#1

The job: https://github.com/ZachBaird/curriculum/runs/3136242643?check_suite_focus=true

Fix line annotation numbers during out of sync PRs

I don't know why this is being annotated at line 289 rather than 269, any ideas @larsoner ? It has the right number when I use git master on the raw file:
https://github.com/codespell-project/codespell/runs/758602736?check_suite_focus=true#step:4:13

It's another false positive apostrophe thing though, see e.g. #651

Originally posted by @peternewman in https://github.com/_render_node/MDExOlB1bGxSZXF1ZXN0Mzg2NzcwNTUx/pull_requests/unread_timeline

ignore_words_file does not work

Steps to reproduce

Use the following action

codespell:
    name: Codespell
    runs-on: ubuntu-latest
    timeout-minutes: 5
    steps:

      - name: Codespell test
        uses: codespell-project/actions-codespell@master
        with:
          skip: vendor, ./lokoctl, *.png, assets/charts/components/*, docs/images/*
          ignore_words_file: './.codespell.ignorewords'
          check_filenames: true
          check_hidden: true

Expected Behaviour

It should find the file

Actual Behaviour

It says Error: ERROR: cannot find ignore-words file: ./.codespell.ignorewords

The file crearly exists at base path. I even tried using relative path. Can you please tell if I am doing anything wrong?

For more information https://github.com/knrt10/lokomotive/runs/1252079699?check_suite_focus=true

What is wrong with this config?

I keep having this happen and I'd like to add this to a number of open source projects. Any chance someone could spot what I'm doing wrong with suppressing known weird words? https://github.com/schwehr/earthengine-catalog/blob/codespell/.github/workflows/codespell.yml ?

Run codespell-project/actions-codespell@master
/usr/bin/docker run --name ec39d3[5](https://github.com/schwehr/earthengine-catalog/actions/runs/3803822601/jobs/6470508769#step:4:6)adf[6](https://github.com/schwehr/earthengine-catalog/actions/runs/3803822601/jobs/6470508769#step:4:7)545898b2dcdc020e27dda_f5e7d4 --label 290506 --workdir /github/workspace --rm -e "INPUT_IGNORE_WORDS_LIST" -e "INPUT_CHECK_FILENAMES" -e "INPUT_CHECK_HIDDEN" -e "INPUT_EXCLUDE_FILE" -e "INPUT_SKIP" -e "INPUT_BUILTIN" -e "INPUT_IGNORE_WORDS_FILE" -e "INPUT_URI_IGNORE_WORDS_LIST" -e "INPUT_PATH" -e "INPUT_ONLY_WARN" -e "HOME" -e "GITHUB_JOB" -e "GITHUB_REF" -e "GITHUB_SHA" -e "GITHUB_REPOSITORY" -e "GITHUB_REPOSITORY_OWNER" -e "GITHUB_RUN_ID" -e "GITHUB_RUN_NUMBER" -e "GITHUB_RETENTION_DAYS" -e "GITHUB_RUN_ATTEMPT" -e "GITHUB_ACTOR" -e "GITHUB_TRIGGERING_ACTOR" -e "GITHUB_WORKFLOW" -e "GITHUB_HEAD_REF" -e "GITHUB_BASE_REF" -e "GITHUB_EVENT_NAME" -e "GITHUB_SERVER_URL" -e "GITHUB_API_URL" -e "GITHUB_GRAPHQL_URL" -e "GITHUB_REF_NAME" -e "GITHUB_REF_PROTECTED" -e "GITHUB_REF_TYPE" -e "GITHUB_WORKSPACE" -e "GITHUB_ACTION" -e "GITHUB_EVENT_PATH" -e "GITHUB_ACTION_REPOSITORY" -e "GITHUB_ACTION_REF" -e "GITHUB_PATH" -e "GITHUB_ENV" -e "GITHUB_STEP_SUMMARY" -e "GITHUB_STATE" -e "GITHUB_OUTPUT" -e "RUNNER_OS" -e "RUNNER_ARCH" -e "RUNNER_NAME" -e "RUNNER_TOOL_CACHE" -e "RUNNER_TEMP" -e "RUNNER_WORKSPACE" -e "ACTIONS_RUNTIME_URL" -e "ACTIONS_RUNTIME_TOKEN" -e "ACTIONS_CACHE_URL" -e GITHUB_ACTIONS=true -e CI=true -v "/var/run/docker.sock":"/var/run/docker.sock" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" -v "/home/runner/work/_temp/_runner_file_commands":"/github/file_commands" -v "/home/runner/work/earthengine-catalog/earthengine-catalog":"/github/workspace" 290506:ec39d35adf6545898b2dcdc020e27dda
Running codespell on '' with the following options...
Check filenames? ''
Check hidden? ''
Exclude file ''
Skipping './.git'
Builtin dictionaries ''
Ignore words file ''
Ignore words list 'Ake,ALOS,DOAS,Fallow,GES,ISTS,Markey,METDATA,nd,NED,Ot,pervious,PRES,REGIO,ro,Ser,vas,waterMask,Wich'
Ignore URI words list ''
Resulting CLI options  --skip ./.git --ignore-words-list Ake,ALOS,DOAS,Fallow,GES,ISTS,Markey,METDATA,nd,NED,Ot,pervious,PRES,REGIO,ro,Ser,vas,waterMask,Wich
Error: ./examples/JAXA_ALOS_PALSAR_YEARLY_FNF4.js:1: ALOS ==> ALSO
Error: ./examples/JAXA_ALOS_PALSAR_YEARLY_SAR_EPOCH.js:1: ALOS ==> ALSO
Error: ./examples/JAXA_ALOS_AW3D30_V1_1.js:1: ALOS ==> ALSO
Error: ./examples/JAXA_ALOS_AW3D30_V2_2.js:1: ALOS ==> ALSO
Error: ./examples/JAXA_ALOS_AVNIR-2_ORI.js:1: ALOS ==> ALSO
Error: ./examples/JAXA_ALOS_PALSAR-2_Level2_2_ScanSAR.js:1: ALOS ==> ALSO
Error: ./examples/JAXA_ALOS_PALSAR_YEARLY_SAR.js:1: ALOS ==> ALSO
Error: ./examples/MODIS_006_MOD44W.js:3: waterMask ==> watermark
Error: ./examples/MODIS_006_MOD44W.js:10: waterMask ==> watermark
Error: ./examples/JAXA_ALOS_PALSAR_YEARLY_FNF.js:1: ALOS ==> ALSO
[SNIP]

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.