Skip to content

Commit

Permalink
cookiecutter commit
Browse files Browse the repository at this point in the history
  • Loading branch information
BrianWhitneyAI committed Aug 10, 2023
0 parents commit 9e672be
Show file tree
Hide file tree
Showing 26 changed files with 1,267 additions and 0 deletions.
10 changes: 10 additions & 0 deletions .cookiecutter.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
default_context:
author_name: "bioio-devs"
author_email: "[email protected]"
hosting_github_username_or_org: "bioio-devs"
project_name: "bioio-nd2"
project_slug: "bioio-nd2"
python_slug: "bioio_nd2"
project_short_description: "A BioIO reader plugin for reading ND2 images."
hosting_pypi_username: "bioio-devs"
license: "MIT License"
24 changes: 24 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# http://editorconfig.org

root = true

[*]
indent_style = space
indent_size = 4
trim_trailing_whitespace = true
insert_final_newline = true
charset = utf-8
end_of_line = lf

[*.yml]
indent_size = 2

[*.bat]
indent_style = tab
end_of_line = crlf

[LICENSE]
insert_final_newline = false

[Makefile]
indent_style = tab
31 changes: 31 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
---
name: Bug Report
about: Create a report to help us improve bioio-nd2
labels: bug
---

<!--
⚠️⚠️ Please do the following before submitting: ⚠️⚠️
📖 Please read our Code of Conduct.
🔎 Please search existing issues to avoid creating duplicates.
-->

### Describe the Bug

<!-- A clear and concise description of the bug. -->

### Expected Behavior

<!-- What did you expect to happen instead? -->

### Reproduction

<!-- Steps to reproduce the behavior and/or a minimal example that exhibits the behavior. -->

### Environment

<!-- Any additional information about your environment. -->

- OS Version: _[e.g. macOS 11.3.1]_
- bioio-nd2 Version: _[e.g. 0.5.0]_
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Feature Request
about: Suggest a feature for bioio-nd2
labels: enhancement
---

<!--
⚠️⚠️ Please do the following before submitting: ⚠️⚠️
📖 Please read our Code of Conduct.
🔎 Please search existing issues to avoid creating duplicates.
-->

### Feature Description

<!-- A clear and concise description of the feature you're requesting. -->

### Use Case

<!-- Please provide a use case to help us understand your request in context. -->

### Solution

<!-- Please describe your ideal solution. -->

### Alternatives

<!-- Please describe any alternatives you've considered, even if you've dismissed them. -->
23 changes: 23 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
<!--
Thank you for submitting a pull request!
⚠️⚠️ Please do the following before submitting: ⚠️⚠️
- Read the CONTRIBUTING.md guide and make sure you've followed all the steps given.
- Ensure that the code is up-to-date with the `main` branch.
- Provide or update documentation for any feature added by your pull request.
- Provide relevant tests for your feature or bug fix.
❗️ Also: ❗️
Please name your pull request {development-type}/{short-description}.
For example: feature/read-tiff-files
-->

### Link to Relevant Issue

This pull request resolves #

### Description of Changes

<!-- Include a description of the proposed changes. -->
10 changes: 10 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "monthly"
commit-message:
prefix: "ci(dependabot):"
105 changes: 105 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
name: CI

on:
push:
branches:
- main
tags:
- "v*"
pull_request:
branches:
- main
schedule:
# <minute [0,59]> <hour [0,23]> <day of the month [1,31]>
# <month of the year [1,12]> <day of the week [0,6]>
# https://pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html#tag_20_25_07
# Run every Monday at 10:24:00 PST
# (Since these CRONs are used by a lot of people -
# let's be nice to the servers and schedule it _not_ on the hour)
- cron: "24 18 * * 1"
workflow_dispatch:

jobs:
# Check that all files listed in manifest make it into build
check-manifest:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: "3.x"
- run: pip install check-manifest && check-manifest

# Check tests pass on multiple Python and OS combinations
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version: [3.9, 3.10, 3.11]
os: [ubuntu-latest, macOS-latest, windows-latest]

steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- uses: extractions/setup-just@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install .[test]
- name: Run Tests
run: just test
- name: Upload Codecov
uses: codecov/codecov-action@v3

# Check linting, formating, types, etc.
lint:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
- uses: extractions/setup-just@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install .[lint]
- name: Lint
run: just lint

# Publish to PyPI if test, lint, and manifest checks passed
publish:
if: "success() && startsWith(github.ref, 'refs/tags/')"
needs: [check-manifest, test, lint]
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install build wheel
- name: Build Package
run: |
python -m build
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
with:
user: bioio-devs
password: ${{ secrets.PYPI_TOKEN }}

32 changes: 32 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Documentation

on:
push:
branches:
- main

jobs:
docs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: extractions/setup-just@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Install Dependencies
run: |
python -m pip install --upgrade pip
pip install .[docs]
- name: Generate Docs
run: |
just generate-docs
touch docs/_build/.nojekyll
- name: Publish Docs
uses: JamesIves/github-pages-deploy-action@v4
with:
folder: docs/_build/
113 changes: 113 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
env/
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
*.egg-info/
.installed.cfg
*.egg

# OS generated files
.DS_Store

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
.hypothesis/
.pytest_cache/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/
docs/bioio_nd2.*rst
docs/modules.rst

# PyBuilder
target/

# Jupyter Notebook
.ipynb_checkpoints

# pyenv
.python-version

# celery beat schedule file
celerybeat-schedule

# Dask
dask-worker-space

# SageMath parsed files
*.sage.py

# dotenv
.env

# virtualenv
.venv
venv/
ENV/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/

# VSCode
.vscode
Loading

0 comments on commit 9e672be

Please sign in to comment.