{"id":327932,"name":"FTorch: a library for coupling PyTorch models to Fortran","description":"FTorch: a library for coupling PyTorch models to Fortran - Published in JOSS (2025)","url":"https://github.com/cambridge-iccs/ftorch","last_synced_at":"2025-10-26T17:15:07.160Z","repository":{"id":61432132,"uuid":"551546945","full_name":"Cambridge-ICCS/FTorch","owner":"Cambridge-ICCS","description":"A library for directly calling PyTorch ML models from Fortran.","archived":false,"fork":false,"pushed_at":"2025-10-20T07:23:09.000Z","size":7904,"stargazers_count":149,"open_issues_count":72,"forks_count":31,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-10-20T22:35:33.527Z","etag":null,"topics":["deep-learning","fortran","hacktoberfest","interoperability","libtorch","machine-learning","python","pytorch","torch"],"latest_commit_sha":null,"homepage":"https://cambridge-iccs.github.io/FTorch/","language":"Fortran","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cambridge-ICCS.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-10-14T15:56:34.000Z","updated_at":"2025-10-17T15:06:37.000Z","dependencies_parsed_at":"2023-11-21T14:44:46.336Z","dependency_job_id":"730543ec-8e30-492e-b842-53b342f860d4","html_url":"https://github.com/Cambridge-ICCS/FTorch","commit_stats":{"total_commits":131,"total_committers":12,"mean_commits":"10.916666666666666","dds":0.6030534351145038,"last_synced_commit":"2653bf80d0b807786df72e9ca701208e3ba8f510"},"previous_names":["cambridge-iccs/ftorch","cambridge-iccs/fortran-pytorch-lib"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/Cambridge-ICCS/FTorch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cambridge-ICCS","download_url":"https://codeload.github.com/Cambridge-ICCS/FTorch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281139261,"owners_count":26450188,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-26T02:00:06.575Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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"}},"owner":{"login":"Cambridge-ICCS","name":"Institute of Computing for Climate Science","uuid":"97293575","kind":"organization","description":"Institute of Computing for Climate Science at the University of Cambridge","email":null,"website":"https://cambridge-iccs.github.io/","location":null,"twitter":"Cambridge_ICCS","company":null,"icon_url":"https://avatars.githubusercontent.com/u/97293575?v=4","repositories_count":8,"last_synced_at":"2023-03-05T02:54:20.742Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/Cambridge-ICCS","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-15T04:48:47.535Z","updated_at":"2023-03-05T02:54:20.769Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cambridge-ICCS","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cambridge-ICCS/repositories"},"packages":[],"commits":{"id":1397313,"full_name":"Cambridge-ICCS/FTorch","default_branch":"main","total_commits":408,"total_committers":17,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":24.0,"dds":0.6053921568627452,"past_year_total_commits":184,"past_year_total_committers":10,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":18.4,"past_year_dds":0.6141304347826086,"last_synced_at":"2025-10-25T04:28:22.505Z","last_synced_commit":"978ee13b07f411a95c1c5d4dd7dd72b61ae97714","created_at":"2023-10-05T12:34:48.765Z","updated_at":"2025-10-25T04:27:30.321Z","committers":[{"name":"Jack Atkinson","email":"jwa34@cam.ac.uk","login":"jatkinson1000","count":161},{"name":"Joe Wallwork","email":"22053413+jwallwork23","login":"jwallwork23","count":108},{"name":"tommelt","email":"thomas.meltzer1@gmail.com","login":"TomMelt","count":38},{"name":"ElliottKasoar","email":"ElliottKasoar","login":"ElliottKasoar","count":37},{"name":"Dominic Orchard","email":"dom.orchard@gmail.com","login":"dorchard","count":20},{"name":"Athena Elafrou","email":"ae488@cam.ac.uk","login":null,"count":15},{"name":"Niccolò Zanotti","email":"74741715+niccolozanotti","login":"niccolozanotti","count":10},{"name":"Simon Clifford","email":"sjc306@cam.ac.uk","login":"SimonClifford","count":5},{"name":"Jared Frazier","email":"72281389+jfdev001","login":"jfdev001","count":4},{"name":"Mikolaj-A-Kowalski","email":"32641577+Mikolaj-A-Kowalski","login":"Mikolaj-A-Kowalski","count":3},{"name":"Daniel S. Katz","email":"d.katz@ieee.org","login":"danielskatz","count":1},{"name":"Zhenkun Li","email":"lizhenk@yeah.net","login":"zhenkunl","count":1},{"name":"helgehr","email":"38046421+helgehr","login":"helgehr","count":1},{"name":"mondus","email":"p.richmond@sheffield.ac.uk","login":"mondus","count":1},{"name":"Simon Clifford","email":"s.clifford@imperial.ac.uk","login":null,"count":1},{"name":"Jared Frazier","email":"frazier@iap-kborn.de","login":null,"count":1},{"name":"vopikamm","email":"39192175+vopikamm","login":"vopikamm","count":1}],"past_year_committers":[{"name":"Joe Wallwork","email":"22053413+jwallwork23","login":"jwallwork23","count":71},{"name":"Jack Atkinson","email":"jwa34@cam.ac.uk","login":"jatkinson1000","count":66},{"name":"tommelt","email":"thomas.meltzer1@gmail.com","login":"TomMelt","count":24},{"name":"Niccolò Zanotti","email":"74741715+niccolozanotti","login":"niccolozanotti","count":10},{"name":"Jared Frazier","email":"72281389+jfdev001","login":"jfdev001","count":4},{"name":"Mikolaj-A-Kowalski","email":"32641577+Mikolaj-A-Kowalski","login":"Mikolaj-A-Kowalski","count":3},{"name":"Dominic Orchard","email":"dom.orchard@gmail.com","login":"dorchard","count":3},{"name":"Zhenkun Li","email":"lizhenk@yeah.net","login":"zhenkunl","count":1},{"name":"Daniel S. Katz","email":"d.katz@ieee.org","login":"danielskatz","count":1},{"name":"Jared Frazier","email":"frazier@iap-kborn.de","login":null,"count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-10-26T00:00:38.633Z","repositories_count":6087866,"commits_count":922343364,"contributors_count":35992483,"owners_count":1109100,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"Cambridge-ICCS/FTorch","html_url":"https://github.com/Cambridge-ICCS/FTorch","last_synced_at":"2025-10-26T11:02:53.662Z","status":null,"issues_count":166,"pull_requests_count":303,"avg_time_to_close_issue":5284220.23655914,"avg_time_to_close_pull_request":1338282.1097046414,"issues_closed_count":93,"pull_requests_closed_count":237,"pull_request_authors_count":18,"issue_authors_count":25,"avg_comments_per_issue":1.4216867469879517,"avg_comments_per_pull_request":1.5115511551155116,"merged_pull_requests_count":210,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":91,"past_year_pull_requests_count":223,"past_year_avg_time_to_close_issue":1332667.2,"past_year_avg_time_to_close_pull_request":536717.0760233918,"past_year_issues_closed_count":45,"past_year_pull_requests_closed_count":171,"past_year_pull_request_authors_count":10,"past_year_issue_authors_count":13,"past_year_avg_comments_per_issue":0.9560439560439561,"past_year_avg_comments_per_pull_request":1.3318385650224216,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":157,"created_at":"2023-10-05T12:34:51.266Z","updated_at":"2025-10-26T11:02:53.663Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cambridge-ICCS%2FFTorch/issues","issue_labels_count":{"enhancement":37,"documentation":37,"bug":31,"autograd":21,"testing":15,"good first issue":10,"hackathon":10,"gpu":9,"question":5,"build":4,"online-training":4,"potential placement":1,"Hacktoberfest":1,"help wanted":1},"pull_request_labels_count":{"documentation":65,"enhancement":52,"bug":40,"autograd":38,"testing":37,"hackathon":9,"gpu":9,"good first issue":4,"build":1,"Hacktoberfest":1},"issue_author_associations_count":{"MEMBER":68,"CONTRIBUTOR":55,"COLLABORATOR":24,"NONE":19},"pull_request_author_associations_count":{"MEMBER":120,"COLLABORATOR":101,"CONTRIBUTOR":72,"NONE":10},"issue_authors":{"jatkinson1000":58,"jwallwork23":53,"ElliottKasoar":11,"TomMelt":7,"jfdev001":5,"ma595":4,"mondus":4,"dorchard":3,"IsidreMas":2,"niccolozanotti":2,"timothyas":2,"SimonClifford":2,"nckxneoro52449":1,"anand-me":1,"christopheredsall":1,"siddanib":1,"vbalmer":1,"ch21d012":1,"Mikolaj-A-Kowalski":1,"smhassanerfani":1,"matthewfeickert":1,"lm2612":1,"KingLLee":1,"vopikamm":1,"NicoClinco":1},"pull_request_authors":{"jwallwork23":126,"jatkinson1000":101,"niccolozanotti":16,"TomMelt":16,"dorchard":9,"ElliottKasoar":8,"Mikolaj-A-Kowalski":7,"jfdev001":6,"aysha2016":3,"zhenkunl":2,"ma595":2,"danielskatz":1,"mondus":1,"helgehr":1,"vopikamm":1,"vbalmer":1,"christopheredsall":1,"SimonClifford":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-10-26T00:00:12.178Z","repositories_count":11188507,"issues_count":34778460,"pull_requests_count":112673175,"authors_count":11041534,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"autograd":21,"enhancement":18,"documentation":17,"bug":16,"testing":15,"gpu":9,"good first issue":5,"question":4,"build":3,"hackathon":3,"online-training":2},"past_year_pull_request_labels_count":{"documentation":49,"autograd":37,"testing":34,"bug":31,"enhancement":31,"gpu":9,"hackathon":4,"build":1},"past_year_issue_author_associations_count":{"MEMBER":33,"CONTRIBUTOR":28,"COLLABORATOR":22,"NONE":8},"past_year_pull_request_author_associations_count":{"COLLABORATOR":100,"MEMBER":80,"CONTRIBUTOR":39,"NONE":4},"past_year_issue_authors":{"jwallwork23":43,"jatkinson1000":25,"jfdev001":5,"ma595":4,"TomMelt":3,"IsidreMas":2,"niccolozanotti":2,"timothyas":2,"anand-me":1,"dorchard":1,"matthewfeickert":1,"Mikolaj-A-Kowalski":1,"NicoClinco":1},"past_year_pull_request_authors":{"jwallwork23":111,"jatkinson1000":67,"niccolozanotti":16,"TomMelt":8,"Mikolaj-A-Kowalski":7,"jfdev001":6,"dorchard":3,"zhenkunl":2,"ma595":2,"danielskatz":1},"maintainers":[{"login":"jatkinson1000","count":159,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jatkinson1000"},{"login":"jwallwork23","count":104,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jwallwork23"},{"login":"TomMelt","count":18,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TomMelt"},{"login":"niccolozanotti","count":18,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niccolozanotti"},{"login":"ma595","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ma595"},{"login":"dorchard","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dorchard"},{"login":"SimonClifford","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/SimonClifford"}],"active_maintainers":[{"login":"jwallwork23","count":104,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jwallwork23"},{"login":"jatkinson1000","count":92,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jatkinson1000"},{"login":"niccolozanotti","count":18,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/niccolozanotti"},{"login":"TomMelt","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/TomMelt"},{"login":"ma595","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ma595"},{"login":"dorchard","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/dorchard"}]},"events":null,"keywords":["deep-learning","fortran","hacktoberfest","interoperability","libtorch","machine-learning","python","pytorch","torch"],"dependencies":[{"ecosystem":"pypi","filepath":"examples/n_c_and_cpp/requirements.txt","sha":null,"kind":"manifest","created_at":"2023-09-26T17:55:49.729Z","updated_at":"2023-09-26T17:55:49.729Z","repository_link":"https://github.com/Cambridge-ICCS/FTorch/blob/main/examples/n_c_and_cpp/requirements.txt","dependencies":[{"id":13955217516,"package_name":"torch","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":13955217517,"package_name":"torchvision","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"examples/1_SimpleNet/requirements.txt","sha":null,"kind":"manifest","created_at":"2023-10-11T17:01:46.045Z","updated_at":"2023-10-11T17:01:46.045Z","repository_link":"https://github.com/Cambridge-ICCS/FTorch/blob/main/examples/1_SimpleNet/requirements.txt","dependencies":[{"id":14153891403,"package_name":"torch","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"examples/2_ResNet18/requirements.txt","sha":null,"kind":"manifest","created_at":"2023-10-11T17:01:46.071Z","updated_at":"2023-10-11T17:01:46.071Z","repository_link":"https://github.com/Cambridge-ICCS/FTorch/blob/main/examples/2_ResNet18/requirements.txt","dependencies":[{"id":14153891404,"package_name":"torch","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14153891405,"package_name":"torchvision","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/python_qc.yaml","sha":null,"kind":"manifest","created_at":"2023-11-21T14:44:45.936Z","updated_at":"2023-11-21T14:44:45.936Z","repository_link":"https://github.com/Cambridge-ICCS/FTorch/blob/main/.github/workflows/python_qc.yaml","dependencies":[{"id":14638396159,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":14638396160,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":14638396161,"package_name":"psf/black","ecosystem":"actions","requirements":"stable","direct":true,"kind":"composite","optional":false}]}],"score":8.231376045573969,"created_at":"2025-10-26T17:05:13.271Z","updated_at":"2025-10-26T17:15:07.177Z","avatar_url":"https://github.com/Cambridge-ICCS.png","language":"Fortran","category":null,"sub_category":null,"monthly_downloads":0,"total_dependent_repos":0,"total_dependent_packages":0,"readme":null,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["keras"],"project_url":"https://ost.ecosyste.ms/api/v1/projects/327932","html_url":"https://ost.ecosyste.ms/projects/327932"}