https://github.com/arup-group/cookiecutter-pypackage

Cookiecutter template for a City Modelling Lab Python package

https://github.com/arup-group/cookiecutter-pypackage

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.5%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Cookiecutter template for a City Modelling Lab Python package

Basic Info
  • Host: GitHub
  • Owner: arup-group
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 1.79 MB
Statistics
  • Stars: 4
  • Watchers: 4
  • Forks: 2
  • Open Issues: 3
  • Releases: 2
Created almost 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme Changelog Contributing License

README.md

Arup Cookiecutter Python Package Template

[!CAUTION] This project is now in maintenance mode. See the Copier Python Package template repository for the latest template.

Daily CI Build Documentation

Cookiecutter template for an Arup Python package.

This template is based on @audreyfeldroy's original cookiecutter template. It has been updated to use latest Python Package best practices and to align with Arup's City Modelling Lab Python projects.

Features

  • Testing setup with pytest.
  • Markdown based documentation, using mkdocs, ready for generation with GitHub pages.
  • Project metadata and plugin configuration specified in a pyproject.toml file, according to the latest standards.
  • Auto-release to your private conda channel when you create a new release on GitHub (optional).
  • Command line interface using click.

Quickstart

To be able to keep your project up-tp-date as changes are made to the template, we recommend you use Cruft, which is fully compatible with Cookiecutter. First, install the latest version of Cruft if you haven't installed it yet.

bash conda create -n cookiecutter cruft conda activate cookiecutter

Generate a local Python package project in a directory of your choice (change my-repositories to the relevant location on your device):

bash cd my-repositories cruft create https://github.com/arup-group/cookiecutter-pypackage

Then:

  • Add the packages you will need for your project and their versions to requirements/base.txt.
  • initialise your project as a git repository and link it to an online repository.

For more details, see the tutorial.

Keeping your project up-to-date

We may make changes to this template that you want to pull into your project after you have created it. Cruft allows you to do this, and one of your project's CI workflows will verify whether there are new template updates that you might like to merge in.

To check if there are updates: bash cruft check

To apply updates: bash cruft update

Not Exactly What You Want?

Don't worry, you have options:

Other Arup Cookiecutter Templates

There are currently no other Arup cookiecutter templates.

Other Cookiecutter Templates

You can find a list of other Python project templates on the parent template repository: audreyfeldroy/cookiecutter-pypackage.

Fork This / Create Your Own

If you have differences in your preferred setup, you can fork this to create your own version. Or you create your own; it doesn't strictly have to be a fork.

  • Once you have your own version working, add it to the Other Arup Cookiecutter Templates list above with a brief description.
  • It's up to you whether or not to rename your fork/own version. Do whatever you think sounds good.

Or Submit a Pull Request

We also accept pull requests on this repository, if they're small!

Owner

  • Name: Arup
  • Login: arup-group
  • Kind: organization
  • Email: media@arup.com

We Shape a Better World

GitHub Events

Total
  • Create event: 11
  • Issues event: 16
  • Watch event: 1
  • Delete event: 8
  • Member event: 1
  • Issue comment event: 15
  • Push event: 48
  • Pull request review comment event: 9
  • Pull request review event: 24
  • Pull request event: 19
Last Year
  • Create event: 11
  • Issues event: 16
  • Watch event: 1
  • Delete event: 8
  • Member event: 1
  • Issue comment event: 15
  • Push event: 48
  • Pull request review comment event: 9
  • Pull request review event: 24
  • Pull request event: 19

Issues and Pull Requests

Last synced: 10 months ago

All Time
  • Total issues: 22
  • Total pull requests: 47
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 6 days
  • Total issue authors: 4
  • Total pull request authors: 2
  • Average comments per issue: 0.64
  • Average comments per pull request: 0.38
  • Merged pull requests: 43
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 12
  • Pull requests: 20
  • Average time to close issues: 9 days
  • Average time to close pull requests: 10 days
  • Issue authors: 3
  • Pull request authors: 2
  • Average comments per issue: 0.92
  • Average comments per pull request: 0.75
  • Merged pull requests: 16
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • brynpickering (18)
  • Dominic-Duke (3)
  • diegoperezalvarez (1)
  • Theodore-Chatziioannou (1)
Pull Request Authors
  • brynpickering (68)
  • Dominic-Duke (2)
Top Labels
Issue Labels
enhancement (11) documentation (7) bug (5)
Pull Request Labels
bug (2) documentation (2)