https://github.com/adacs-australia/adacs_template_python_base

Cookiecutter template for a new/base Python project

https://github.com/adacs-australia/adacs_template_python_base

Science Score: 13.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
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.9%) to scientific vocabulary
Last synced: 10 months ago · JSON representation

Repository

Cookiecutter template for a new/base Python project

Basic Info
  • Host: GitHub
  • Owner: ADACS-Australia
  • License: mit
  • Language: Python
  • Default Branch: main
  • Size: 1.16 MB
Statistics
  • Stars: 0
  • Watchers: 3
  • Forks: 0
  • Open Issues: 0
  • Releases: 1
Created almost 2 years ago · Last pushed almost 2 years ago
Metadata Files
Readme License

README.md

ADACS Logo

Python 3.11 Documentation Status MIT License

Base Python Codebase Template

Starting a new Python codebase? Read on to see how this template can have you set-up with all the elements of a professional codebase in less than 30 mins.

Getting Started

Installing the needed dependencies and building your new project is easy with the following steps ...

Make sure Cookiecutter is installed

console pip install cookiecutter (or better yet, use pipx) console pipx install cookiecutter

Make sure Poetry is installed

Use the official installer console curl -sSL https://install.python-poetry.org | python3 - (or better yet, use pipx) console pipx install poetry

Render the project

Run cookiecutter on the template's repository: console cookiecutter gh:ADACS-Australia/adacs_template_python_base and answer the questions:

ADACS Python Template Questions

Install the new project

Create and activate a new virtual environment (use Python version >= 3.11) using your favourite method (if you don't know how to use Python environments, we advise you to go learn about them now) and install the project by running the following in the new repo directory: console poetry install

Configure the services you need

Follow these instructions to configure GitHub, Read the Docs, PyPI, etc.

What do you get for this?

A codebase that eases collaboration and automatically:

  • Ensures that all code on the main branch and released versions:

    • builds correctly (including documentation) and passes all unit tests
    • conforms to the project's code formatting and linting policies
    • is properly versioned
  • And optionally, automates the following for new releases of your project:

    • publication to PyPI so people can easilly install it
    • publication of updated documentation to Read the Docs

Other ADACS Python templates can then be applied to this base template to quickly kickstart a new project.

Owner

  • Name: Astronomy Data and Computing Services
  • Login: ADACS-Australia
  • Kind: organization
  • Location: Australia

GitHub Events

Total
  • Fork event: 1
  • Create event: 1
Last Year
  • Fork event: 1
  • Create event: 1

Dependencies

.github/workflows/bump.yml actions
  • actions/checkout v3 composite
.github/workflows/publish.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • snok/install-poetry v1 composite
.github/workflows/pull_request.yml actions
  • actions/checkout v3 composite
  • actions/setup-python v4 composite
  • snok/install-poetry v1 composite
poetry.lock pypi
  • alabaster 0.7.16
  • arrow 1.3.0
  • babel 2.15.0
  • binaryornot 0.4.4
  • black 22.12.0
  • certifi 2024.6.2
  • cfgv 3.4.0
  • chardet 5.2.0
  • charset-normalizer 3.3.2
  • click 8.1.7
  • colorama 0.4.6
  • cookiecutter 2.6.0
  • distlib 0.3.8
  • docutils 0.18.1
  • filelock 3.15.4
  • identify 2.5.36
  • idna 3.7
  • imagesize 1.4.1
  • iniconfig 2.0.0
  • jinja2 3.1.4
  • markdown-it-py 2.2.0
  • markupsafe 2.1.5
  • mdit-py-plugins 0.3.5
  • mdurl 0.1.2
  • mypy 1.10.1
  • mypy-extensions 1.0.0
  • myst-parser 1.0.0
  • nodeenv 1.9.1
  • packaging 24.1
  • pathspec 0.12.1
  • platformdirs 4.2.2
  • pluggy 1.5.0
  • pre-commit 3.7.1
  • pygments 2.18.0
  • pytest 7.4.4
  • pytest-cookies 0.7.0
  • pytest-mock 3.14.0
  • python-dateutil 2.9.0.post0
  • python-slugify 8.0.4
  • pyyaml 6.0.1
  • requests 2.32.3
  • rich 13.7.1
  • ruff 0.0.243
  • six 1.16.0
  • snowballstemmer 2.2.0
  • sphinx 6.2.1
  • sphinx-click 4.4.0
  • sphinx-copybutton 0.5.2
  • sphinx-rtd-theme 1.2.0
  • sphinxcontrib-applehelp 1.0.8
  • sphinxcontrib-devhelp 1.0.6
  • sphinxcontrib-htmlhelp 2.0.5
  • sphinxcontrib-jquery 4.1
  • sphinxcontrib-jsmath 1.0.1
  • sphinxcontrib-qthelp 1.0.7
  • sphinxcontrib-serializinghtml 1.1.10
  • text-unidecode 1.3
  • types-python-dateutil 2.9.0.20240316
  • typing-extensions 4.12.2
  • urllib3 2.2.2
  • virtualenv 20.26.3
pyproject.toml pypi
  • Sphinx ^6.1.3
  • black ^22.10.0
  • click ^8.1.3
  • cookiecutter ^2.5.0
  • mypy ^1.1.1
  • myst-parser ^1.0.0
  • pre-commit ^3.0.4
  • pytest ^7.0
  • pytest-cookies ^0.7.0
  • pytest-mock ^3.11.1
  • python >=3.11
  • rich ^13.5.2
  • ruff ^0.0.243
  • sphinx-click ^4.4.0
  • sphinx-copybutton ^0.5.1
  • sphinx-rtd-theme 1.2.0
{{cookiecutter.repo_name}}/pyproject.toml pypi
  • Sphinx ^6.1.3
  • black ^22.10.0
  • click ^8.1.3
  • mypy ^1.1.1
  • myst-parser ^1.0.0
  • pre-commit ^3.0.4
  • pytest ^7.0
  • pytest-cov ^4.1.0
  • pytest-mock ^3.11.1
  • python >=3.11
  • ruff ^0.0.243
  • sphinx-click ^4.4.0
  • sphinx-copybutton ^0.5.1
  • sphinx-rtd-theme 1.2.0
Dockerfile docker
  • python 3.11-buster build