{"id":27870936,"url":"https://github.com/ucl-arc/python-tooling","last_synced_at":"2025-06-21T05:03:22.603Z","repository":{"id":142658575,"uuid":"613825127","full_name":"UCL-ARC/python-tooling","owner":"UCL-ARC","description":"Python package template for new research software projects","archived":false,"fork":false,"pushed_at":"2025-06-17T16:42:54.000Z","size":753,"stargazers_count":49,"open_issues_count":17,"forks_count":5,"subscribers_count":17,"default_branch":"main","last_synced_at":"2025-06-17T17:46:18.467Z","etag":null,"topics":["cookiecutter","hacktoberfest","python","python-template","python-templates","python3","research-software","research-software-engineering","ucl"],"latest_commit_sha":null,"homepage":"http://github-pages.arc.ucl.ac.uk/python-tooling/","language":"Python","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/UCL-ARC.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","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}},"created_at":"2023-03-14T10:49:45.000Z","updated_at":"2025-06-17T16:42:57.000Z","dependencies_parsed_at":"2023-11-17T22:57:28.758Z","dependency_job_id":"91264e91-90f9-480c-ae28-86a79c344c3c","html_url":"https://github.com/UCL-ARC/python-tooling","commit_stats":null,"previous_names":["ucl-arc/python-tooling"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/UCL-ARC/python-tooling","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UCL-ARC%2Fpython-tooling","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UCL-ARC%2Fpython-tooling/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UCL-ARC%2Fpython-tooling/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UCL-ARC%2Fpython-tooling/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UCL-ARC","download_url":"https://codeload.github.com/UCL-ARC/python-tooling/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UCL-ARC%2Fpython-tooling/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":261065261,"owners_count":23104763,"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","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":["cookiecutter","hacktoberfest","python","python-template","python-templates","python3","research-software","research-software-engineering","ucl"],"created_at":"2025-05-04T23:28:42.293Z","updated_at":"2025-06-21T05:03:17.587Z","avatar_url":"https://github.com/UCL-ARC.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-disable MD041 --\u003e\n\u003cdiv style=\"text-align: center;\" align=\"center\"\u003e\n  \u003cimg src=\"https://raw.githubusercontent.com/UCL-ARC/python-tooling/main/images/logo.svg\" alt=\"UCL ARC Python tooling logo\" width=\"120\"/\u003e\n  \u003ch1\u003e UCL ARC Python Recommendations\u003c/h1\u003e\n\u003c/div\u003e\n\u003c!-- markdownlint-restore --\u003e\n\nThis repository collects the [UCL ARC] recommendations for a research software\nproject in Python. It contains a template for new Python packages and a\n[website] documenting our recommendations. We've turned on\n[discussions](https://github.com/UCL-ARC/python-tooling/discussions) for this\nrepo, and we welcome questions there or in the `#helpme` channel on the\n[UCL research programming hub Slack](https://www.ucl.ac.uk/advanced-research-computing/community/ucl-research-programming-hub).\n\n🍪 Our template is a [cookiecutter] template which automatically creates new\nPython packages with our recommended tooling set up and ready to go.\n\n\u003e [!NOTE]\n\u003e If you're making a package within a community that has an existing\n\u003e package template (e.g., [`scikit-hep`](https://github.com/scikit-hep/cookie)),\n\u003e we recommend using their template instead of this one.\n\n## Tutorial\n\nSome quick instructions for using our template are below.\nWe also have a [tutorial](./tutorial.md) that has been presented in a couple of workshops aimed at researchers at UCL.\n\n## Using our template\n\nIf you have [uv] installed, you can use our template with the following one-liner:\n\n```sh\nuvx cookiecutter gh:ucl-arc/python-tooling --checkout latest\n```\n\nAlternatively you can [install cookiecutter] (following the recommended instructions).\nDo this if you don't use [uv], or if you're likely to want to use cookiecutter again.\n\nThen you'll need to run cookiecutter with our template:\n\n```sh\ncookiecutter gh:ucl-arc/python-tooling --checkout latest\n```\n\nWhen [cookiecutter] runs, it will ask you a series of questions to configure your project.\nType the answer or hit return without typing anything to use the default option (shown in parenthesis).\nAt the end, it will print some more follow-up information in the terminal for things like creating a remote repository and making a website for your package.\n\nIt will have created a directory for your project.\nYou can see the structure with the `tree` command.\nIn our example we've called our project `example-research-software-project`:\n\n```sh\nls -ltr | tail -n1 # Shows the last directory that was created\ntree example-research-software-project\n```\n\nTo work on your project, initialise a `git` repository and _install_ your new package editable mode.\nYou probably want to do this in a [virtual environment](./docs/pages/virtual.md).\nThe comments show how to do this in [uv] with `uv venv`:\n\n```sh\ncd example-research-software-project\ngit init\n# uv venv\n# source .venv/bin/activate\nuv pip install -e \".[dev]\"\n```\n\n\u003c!-- links here --\u003e\n\n\u003c!-- prettier-ignore-start --\u003e\n[website]: https://github-pages.arc.ucl.ac.uk/python-tooling\n[UCL ARC]: https://ucl.ac.uk/arc\n[cookiecutter]: https://cookiecutter.readthedocs.io/en/stable\n[install cookiecutter]: https://cookiecutter.readthedocs.io/en/stable/README.html#installation\n[uv]: https://docs.astral.sh/uv\n\u003c!-- prettier-ignore-end --\u003e\n\n## Contributors\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://paddyroddy.github.io\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/15052188?v=4?s=100\" width=\"100px;\" alt=\"Patrick J. Roddy\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePatrick J. Roddy\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-paddyroddy\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"#bug-paddyroddy\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-paddyroddy\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-paddyroddy\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#doc-paddyroddy\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#eventOrganizing-paddyroddy\" title=\"Event Organizing\"\u003e📋\u003c/a\u003e \u003ca href=\"#projectManagement-paddyroddy\" title=\"Project Management\"\u003e📆\u003c/a\u003e \u003ca href=\"#question-paddyroddy\" title=\"Answering Questions\"\u003e💬\u003c/a\u003e \u003ca href=\"#review-paddyroddy\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#talk-paddyroddy\" title=\"Talks\"\u003e📢\u003c/a\u003e \u003ca href=\"#test-paddyroddy\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://scnlf.me\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1836192?v=4?s=100\" width=\"100px;\" alt=\"Sam Cunliffe\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSam Cunliffe\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-samcunliffe\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"#bug-samcunliffe\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-samcunliffe\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-samcunliffe\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#doc-samcunliffe\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#eventOrganizing-samcunliffe\" title=\"Event Organizing\"\u003e📋\u003c/a\u003e \u003ca href=\"#projectManagement-samcunliffe\" title=\"Project Management\"\u003e📆\u003c/a\u003e \u003ca href=\"#question-samcunliffe\" title=\"Answering Questions\"\u003e💬\u003c/a\u003e \u003ca href=\"#review-samcunliffe\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#talk-samcunliffe\" title=\"Talks\"\u003e📢\u003c/a\u003e \u003ca href=\"#test-samcunliffe\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://www.davidstansby.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/6197628?v=4?s=100\" width=\"100px;\" alt=\"David Stansby\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDavid Stansby\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#ideas-dstansby\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"#bug-dstansby\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-dstansby\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-dstansby\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#doc-dstansby\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#eventOrganizing-dstansby\" title=\"Event Organizing\"\u003e📋\u003c/a\u003e \u003ca href=\"#projectManagement-dstansby\" title=\"Project Management\"\u003e📆\u003c/a\u003e \u003ca href=\"#review-dstansby\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#test-dstansby\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://matt-graham.github.io\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/6746980?v=4?s=100\" width=\"100px;\" alt=\"Matt Graham\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMatt Graham\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-matt-graham\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-matt-graham\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-matt-graham\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#doc-matt-graham\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#design-matt-graham\" title=\"Design\"\u003e🎨\u003c/a\u003e \u003ca href=\"#eventOrganizing-matt-graham\" title=\"Event Organizing\"\u003e📋\u003c/a\u003e \u003ca href=\"#review-matt-graham\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#talk-matt-graham\" title=\"Talks\"\u003e📢\u003c/a\u003e \u003ca href=\"#test-matt-graham\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/sfmig\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/33267254?v=4?s=100\" width=\"100px;\" alt=\"sfmig\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003esfmig\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-sfmig\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-sfmig\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-sfmig\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#review-sfmig\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#test-sfmig\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/p-j-smith\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/29753790?v=4?s=100\" width=\"100px;\" alt=\"Paul Smith\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ePaul Smith\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-p-j-smith\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-p-j-smith\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-p-j-smith\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#doc-p-j-smith\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#question-p-j-smith\" title=\"Answering Questions\"\u003e💬\u003c/a\u003e \u003ca href=\"#review-p-j-smith\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"#test-p-j-smith\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://docs.renovatebot.com/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/38656520?v=4?s=100\" width=\"100px;\" alt=\"Renovate Bot\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRenovate Bot\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#maintenance-renovatebot\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/ruaridhg\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/32329546?v=4?s=100\" width=\"100px;\" alt=\"ruaridhg\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eruaridhg\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-ruaridhg\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-ruaridhg\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-ruaridhg\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#review-ruaridhg\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://mxochicale.github.io/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/11370681?v=4?s=100\" width=\"100px;\" alt=\"Miguel Xochicale, PhD\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMiguel Xochicale, PhD\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-mxochicale\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#code-mxochicale\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#content-mxochicale\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#design-mxochicale\" title=\"Design\"\u003e🎨\u003c/a\u003e \u003ca href=\"#doc-mxochicale\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#review-mxochicale\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/yidilozdemir\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/30597301?v=4?s=100\" width=\"100px;\" alt=\"yidilozdemir\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eyidilozdemir\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#doc-yidilozdemir\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#test-yidilozdemir\" title=\"Tests\"\u003e⚠️\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://giordano.github.io\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/765740?v=4?s=100\" width=\"100px;\" alt=\"Mosè Giordano\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMosè Giordano\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-giordano\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#doc-giordano\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#review-giordano\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://t-young31.github.io\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/39765193?v=4?s=100\" width=\"100px;\" alt=\"Tom Young\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eTom Young\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-t-young31\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#content-t-young31\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#review-t-young31\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/alessandrofelder\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/10500965?v=4?s=100\" width=\"100px;\" alt=\"Alessandro Felder\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAlessandro Felder\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-alessandrofelder\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#content-alessandrofelder\" title=\"Content\"\u003e🖋\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://adamltyson.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/13147259?v=4?s=100\" width=\"100px;\" alt=\"Adam Tyson\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAdam Tyson\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#content-adamltyson\" title=\"Content\"\u003e🖋\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://willgraham01.github.io/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/32364977?v=4?s=100\" width=\"100px;\" alt=\"Will Graham\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eWill Graham\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#content-willGraham01\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#review-willGraham01\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/nikk-nikaznan\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/48319650?v=4?s=100\" width=\"100px;\" alt=\"nikk-nikaznan\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003enikk-nikaznan\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#content-nikk-nikaznan\" title=\"Content\"\u003e🖋\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/katiebuntic\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/96536608?v=4?s=100\" width=\"100px;\" alt=\"Katie Buntic\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKatie Buntic\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#content-katiebuntic\" title=\"Content\"\u003e🖋\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/robertvi\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/456100?v=4?s=100\" width=\"100px;\" alt=\"Robert Vickerstaff\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRobert Vickerstaff\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#doc-robertvi\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://dpshelio.github.io\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/963242?v=4?s=100\" width=\"100px;\" alt=\"David Pérez-Suárez\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDavid Pérez-Suárez\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#code-dpshelio\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"#question-dpshelio\" title=\"Answering Questions\"\u003e💬\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/LLapira\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/48060852?v=4?s=100\" width=\"100px;\" alt=\"llapira\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003ellapira\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-llapira\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://pre-commit.ci\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/64617429?v=4?s=100\" width=\"100px;\" alt=\"pre-commit.ci\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003epre-commit.ci\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#maintenance-pre-commit-ci\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://saransh-cpp.github.io/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/74055102?v=4?s=100\" width=\"100px;\" alt=\"Saransh Chopra\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSaransh Chopra\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#doc-Saransh-cpp\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#content-Saransh-cpp\" title=\"Content\"\u003e🖋\u003c/a\u003e \u003ca href=\"#maintenance-Saransh-cpp\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e \u003ca href=\"#review-Saransh-cpp\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://drandrewmitchell.com\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/22335636?v=4?s=100\" width=\"100px;\" alt=\"Andrew Mitchell\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAndrew Mitchell\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-MitchellAcoustics\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://www.ucl.ac.uk/advanced-research-computing/advanced-research-computing-centre\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/24316371?v=4?s=100\" width=\"100px;\" alt=\"Kimberly Meechan\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eKimberly Meechan\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#bug-K-Meech\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#a11y-K-Meech\" title=\"Accessibility\"\u003e️️️️♿️\u003c/a\u003e \u003ca href=\"#review-K-Meech\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fucl-arc%2Fpython-tooling","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fucl-arc%2Fpython-tooling","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fucl-arc%2Fpython-tooling/lists"}