{"id":17332989,"url":"https://github.com/raybellwaves/cfanalytics","last_synced_at":"2026-03-04T08:01:22.921Z","repository":{"id":60721963,"uuid":"121818158","full_name":"raybellwaves/cfanalytics","owner":"raybellwaves","description":"Downloading, analyzing and visualizing CrossFit data","archived":false,"fork":false,"pushed_at":"2018-05-17T14:35:28.000Z","size":338933,"stargazers_count":28,"open_issues_count":0,"forks_count":10,"subscribers_count":7,"default_branch":"master","last_synced_at":"2026-01-04T22:54:42.104Z","etag":null,"topics":["crossfit","crossfit-games","data-frames","data-science","python"],"latest_commit_sha":null,"homepage":"http://cfanalytics.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/raybellwaves.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-02-17T01:26:49.000Z","updated_at":"2025-09-06T00:16:30.000Z","dependencies_parsed_at":"2022-10-03T20:45:42.091Z","dependency_job_id":null,"html_url":"https://github.com/raybellwaves/cfanalytics","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/raybellwaves/cfanalytics","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raybellwaves%2Fcfanalytics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raybellwaves%2Fcfanalytics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raybellwaves%2Fcfanalytics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raybellwaves%2Fcfanalytics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raybellwaves","download_url":"https://codeload.github.com/raybellwaves/cfanalytics/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raybellwaves%2Fcfanalytics/sbom","scorecard":{"id":763414,"data":{"date":"2025-08-11","repo":{"name":"github.com/raybellwaves/cfanalytics","commit":"bd3a595ab3c576923daaf013b4cff0feaf7c9d13"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"SAST","score":0,"reason":"no SAST tool detected","details":["Warn: no pull requests merged into dev branch"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}}]},"last_synced_at":"2025-08-23T00:04:02.531Z","repository_id":60721963,"created_at":"2025-08-23T00:04:02.531Z","updated_at":"2025-08-23T00:04:02.531Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30075908,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T05:31:57.858Z","status":"ssl_error","status_checked_at":"2026-03-04T05:31:38.462Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["crossfit","crossfit-games","data-frames","data-science","python"],"created_at":"2024-10-15T14:59:25.432Z","updated_at":"2026-03-04T08:01:22.903Z","avatar_url":"https://github.com/raybellwaves.png","language":"Python","readme":"cfanalytics: Downloading, analyzing and visualizing CrossFit data\n=================================================================\n\n.. image:: https://travis-ci.org/raybellwaves/cfanalytics.svg?branch=master\n   :target: https://travis-ci.org/raybellwaves/cfanalytics\n.. .. image:: https://ci.appveyor.com/api/projects/status/github/raybellwaves/cfanalytics?svg=true\u0026passingText=passing\u0026failingText=failing\u0026pendingText=pending\n.. ..  :target: https://ci.appveyor.com/project/raybellwaves/cfanalytics\n.. .. image:: https://coveralls.io/repos/github/raybellwaves/cfanalytics/badge.svg?branch=master\n.. ..  :target: https://coveralls.io/github/raybellwaves/cfanalytics?branch=master\n.. image:: https://img.shields.io/pypi/v/cfanalytics.svg\n   :target: https://pypi.python.org/pypi/cfanalytics\n.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.1208106.svg\n   :target: https://doi.org/10.5281/zenodo.1208106\n   \n**cfanalytics** is an open source project and Python package that aims to provide analyzes to \nCrossFit® workouts. The goal is to enhance data-driven performance of athletes.\n\n.. image:: https://github.com/raybellwaves/cfanalytics/blob/master/Plots/Men_Rx_2018_Overall_rank_P0.1.png\n.. image:: https://github.com/raybellwaves/cfanalytics/blob/master/Plots/Women_Rx_2018_Miami_Overall_rankP0.png\n\nInstalling\n----------\n\nThe version numbers 0.1.X are all development versions as I chip away at the project on here in my spare time. I occasionally build the package if i've finished something large. But you can grab the least-buggy version of this package by typing:\n\n``pip install git+https://github.com/raybellwaves/cfanalytics``\n\nMake sure you have the optional dependencies installed below for this to work.\n\nThe psudo-stable packages are here.\n\n``conda install -c conda-forge cfanalytics``\n\n``pip install cfanalytics``\n\nAs a precautionary note, it has been developed entirely on Mac OSX using Python installed with `anaconda \u003chttps://anaconda.org/anaconda/python\u003e`__. Therefore, use in Windows and Linux at your \nown peril.\n\nAs good practice, I recommend installing with anaconda/miniconda and in a new enviroment:\n\n.. parsed-literal:: \n \n    $ conda create -n cfa python=3.6\n    $ source activate cfa\n    $ conda install -c matplotlib cartopy joblib netcdf4\n    $ pip install motionless\n    $ pip install git+https://github.com/fmaussion/salem.git\n    $ pip install git+https://github.com/raybellwaves/cfanalytics\n    $ # eventually: conda install -c conda-forge cfanalytics matplotlib cartopy\n\nYou can type ``source deactivate`` when finished. You can also check which environments you have created by typing ``conda info --envs``. \nTo remove an environment type ``conda remove --name cfa --all``.\n\nOptional dependencies (for plotting)\n------------------------------------\n\n- `matplotlib \u003chttps://github.com/matplotlib/matplotlib\u003e`__\n- `cartopy \u003chttps://github.com/SciTools/cartopy\u003e`__\n- `salem \u003chttps://github.com/fmaussion/salem\u003e`__ and its dependencies\n\nExamples\n--------\n\nSee examples `here \u003chttps://github.com/raybellwaves/cfanalytics/tree/master/Examples\u003e`__.\n\nDocumentation\n-------------\n\nThe documentation is hosted at http://cfanalytics.readthedocs.io/\n\nProjects using this data\n------------------------\n\n- `Unofficial 2018 Open Results \u003chttp://www.rpresidente.com.br/Open2018/Index\u003e`__\n- `View a map of the results \u003chttps://app.powerbi.com/view?r=eyJrIjoiNmJmODk0MGUtNjVmNi00ZWYxLTg3NjgtOTQ5ZWFlYzFmYjJiIiwidCI6IjQ2YzUxNzhlLWEwZjQtNGY0ZC04YzQwLTk1OThlM2QxMTg2MCIsImMiOjN9\u003e`__\n\nContributing\n------------\n\nSee my TODO list `here \u003chttps://github.com/raybellwaves/cfanalytics/blob/master/TODO.rst\u003e`__.\n\nAcknowledgements\n----------------\n\n- Thanks to posts on `r/crossfit \u003chttps://www.reddit.com/r/crossfit/\u003e`__. e.g. `here \u003chttps://www.reddit.com/r/crossfit/comments/5uikq8/2017_open_data_analysis/\u003e`__, I worked out how to download data from the `CrossFit® open \u003chttps://games.crossfit.com/leaderboard/open/2017?division=1\u0026region=0\u0026scaled=0\u0026sort=0\u0026occupation=0\u0026page=1\u003e`__. \n- ``Cfopendata`` is a very minor adaptation from `captamericadevs/CFOpenData \u003chttps://github.com/captamericadevs/CFOpenData\u003e`__. Who smartly developed code to download CrossFit® open data using `aiohttp \u003chttps://github.com/aio-libs/aiohttp\u003e`__. \n- ``Affliatelist`` used this `answer \u003chttps://stackoverflow.com/questions/33618324/web-scraping-google-map-website-is-it-possible-to-scrape\u003e`__ as well as this `answer \u003chttps://stackoverflow.com/questions/49211863/scrape-latitude-and-longitude-of-address-obtained-from-mapbox\u003e`__ on SO. \n- ``Cfplot().regionplot()`` was made possible by the work of the `cartopy \u003chttps://github.com/SciTools/cartopy\u003e`__ developers and developers of `Natural Earth \u003chttp://www.naturalearthdata.com/\u003e`__.\n- ``Cfplot().cityplot()`` was made possible by the work by `fmaussion \u003chttps://github.com/fmaussion\u003e`__ in `salem \u003chttps://github.com/fmaussion/salem\u003e`__\n- `xarray \u003chttps://github.com/pydata/xarray\u003e`__ developers. Whose package template I used for this package as well as the package itself.\n\nDisclaimer\n----------\n\nThis project is not affiliated with CrossFit, Inc.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraybellwaves%2Fcfanalytics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraybellwaves%2Fcfanalytics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraybellwaves%2Fcfanalytics/lists"}