Skip to content

feat: ✨ create template folder with initial files #52

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .copier.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
_subdirectory: template
23 changes: 23 additions & 0 deletions template/.editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# EditorConfig settings. Some editors will read these automatically;
# for those that don't, see here: http://editorconfig.org/

root = true

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

# Have a bit shorter line length for text docs
[*.{txt,md,qmd}]
max_line_length = 72
indent_size = 4

# Python always uses 4 spaces for tabs
[*.py]
indent_style = space
indent_size = 4
12 changes: 12 additions & 0 deletions template/.github/CODEOWNERS.jinja
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# All members on Developers team get added to review PRs
* @seedcase-project/developers

# Ignore these so we don't get added to sync PRs
/.github/
/.vscode/
justfile
.editorconfig
.gitignore
ruff.toml
pyproject.toml
uv.lock
12 changes: 12 additions & 0 deletions template/.github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Description

This PR will [DESCRIBE CHANGES].

Closes #

This PR needs a quick/an in-depth review.

## Checklist

- [ ] Checked that the README is up to date
- [ ] Run `just run-all`
25 changes: 25 additions & 0 deletions template/.github/workflows/add-to-project.yml.jinja
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Add to project board

on:
issues:
types:
- opened
- reopened
- transferred
pull_request:
types:
- reopened
- opened

permissions:
pull-requests: write

jobs:
add-to-project:
uses: seedcase-project/.github/.github/workflows/reusable-add-to-project.yml@main
with:
board-number: 18
app-id: ${{ vars.ADD_TO_BOARD_APP_ID }}
secrets:
add-to-board-token: ${{ secrets.ADD_TO_BOARD }}
gh-token: ${{ secrets.GITHUB_TOKEN }}
86 changes: 86 additions & 0 deletions template/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
# Development files and folders
_ignore
bin/
dev/

# Temporary files
*.tmp

# Any IDE specific folders
.idea

# Any .env files
.env
.env.*
**/.env.*
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Python specific content
venv
__pycache__/
*.py[cod]

# Python packaging and distribution
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# Python testing and code coverage
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# MacOS
.DS_Store

# Quarto
/.quarto/
docs/.quarto/
*.ipynb
*.quarto_ipynb
*.storage

# Quartodoc
/docs/reference/
objects.json

# Website generation
_site
_book
public
site


# Misc files
*.log
30 changes: 30 additions & 0 deletions template/.pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
ci:
autofix_commit_msg: "chore(pre-commit): :pencil2: automatic fixes"
autoupdate_commit_msg: "ci(pre-commit): :construction_worker: update pre-commit CI version"

repos:
- repo: https://github.com/gitleaks/gitleaks
rev: v8.27.2
hooks:
- id: gitleaks

- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer

- repo: https://github.com/commitizen-tools/commitizen
rev: v4.8.3
hooks:
- id: commitizen

# Use the mirror since the main `typos` repo has tags for different
# sub-packages, which confuses pre-commit when it tries to find the latest
# version
- repo: https://github.com/adhtruong/mirrors-typos
rev: v1.33.1
hooks:
- id: typos
File renamed without changes.
4 changes: 4 additions & 0 deletions template/.typos.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[files]
extend-exclude = [
"*.json",
]
22 changes: 22 additions & 0 deletions template/.vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"recommendations": [
"eamodio.gitlens",
"github.vscode-github-actions",
"redhat.vscode-yaml",
"donjayamanne.githistory",
"felipecaputo.git-project-manager",
"GitHub.vscode-pull-request-github",
"ms-python.python",
"ms-python.vscode-pylance",
"njpwerner.autodocstring",
"quarto.quarto",
"ms-toolsai.jupyter",
"vivaxy.vscode-conventional-commits",
"charliermarsh.ruff",
"pshaddel.conventional-branch",
"tekumara.typos-vscode",
"EditorConfig.EditorConfig"
],
// List of extensions recommended by VS Code that should not be recommended for users of this workspace.
"unwantedRecommendations": []
}
41 changes: 41 additions & 0 deletions template/.vscode/google-notypes.mustache
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{{! Copied from https://github.com/NilsJPWerner/autoDocstring/blob/master/src/docstring/templates/google-notypes.mustache with some edits }}
{{! Google Docstring Template without Types for Args, Returns or Yields }}
{{summaryPlaceholder}}.

{{extendedSummaryPlaceholder}}
{{#parametersExist}}

Args:
{{#args}}
{{var}}: {{descriptionPlaceholder}}.
{{/args}}
{{#kwargs}}
{{var}}: {{descriptionPlaceholder}}. Defaults to {{&default}}.
{{/kwargs}}
{{/parametersExist}}
{{#returnsExist}}

Returns:
{{#returns}}
{{descriptionPlaceholder}}.
{{/returns}}
{{/returnsExist}}
{{#exceptionsExist}}

Raises:
{{#exceptions}}
{{type}}: {{descriptionPlaceholder}}.
{{/exceptions}}
{{/exceptionsExist}}
{{#yieldsExist}}

Yields:
{{#yields}}
{{descriptionPlaceholder}}.
{{/yields}}
{{/yieldsExist}}

Examples:
```{python}
{{descriptionPlaceholder}}
```
103 changes: 103 additions & 0 deletions template/.vscode/json.code-snippets
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
{
// Place your snippets for Quarto here.
// Each snippet is defined under a snippet name and has a prefix, body and description.
// The prefix is what is used to trigger the snippet and the body will be expanded and inserted.
// Possible variables are:
//
// - $1 and $2 for tab stops,
// - $0 for the final cursor position, and
// - ${1:label}, ${2:another} for placeholders
//
// Placeholders with the same ids are connected.
//
// How to use the code snippets:
// After you have set the above settings, a suggestion for one of the code snippets below will pop up automatically, when
// you start writing the prefix. Press "Enter" or "Tab" to insert the code snippet.
"Insert TODO formatting": {
"scope": "quarto,markdown",
"prefix": "TODO",
"body": [
"<!-- TODO: ${0:Write text here} -->"
],
"description": "Insert TODO formatting"
},
"Insert bash formatted text": {
"scope": "quarto,markdown",
"prefix": "bash",
"body": [
"``` bash",
"${0:Write text here}",
"```"
],
"description": "Insert bash formatted text"
},
"Insert YAML header for blogs": {
"scope": "quarto,markdown",
"prefix": "post_yaml",
"body": [
"---",
"title: \"\"",
"description: \"Our reasons for ...\"",
"author: \"\"",
"date: last-modified",
"categories:",
" ${0:Type 'category_keywords' to insert categories}",
"---"
],
"description": "Insert YAML header for Quarto blog posts."
},
"Insert a hidden comment section": {
"scope": "quarto,markdown",
"prefix": "hidden",
"body": [
"::: content-hidden",
"${0:Write comments here}",
":::"
],
"description": "Insert a hidden content section"
},
"Insert a 2 col table": {
"scope": "quarto,markdown",
"prefix": "tbl2",
"body": [
"|${1:title} |${0:title} |",
"| --- | --- |",
"| | |"
],
"description": "Insert a 2 col table"
},
"Insert a 3 col table": {
"scope": "quarto,markdown",
"prefix": "tbl3",
"body": [
"|${1:title} |${2:title} |${0:title} |",
"| --- | --- | --- |",
"| | | |"
],
"description": "Insert a 3 col table"
},
"Insert video": {
"scope": "quarto,markdown",
"prefix": "video",
"body": [
"{{< video ${0:Insert link here} >}}"
],
"description": "Insert video that will be shown"
},
"Insert paneltab": {
"scope": "quarto,markdown",
"prefix": "paneltab",
"body": [
"::: panel-tabset",
"### ${0:Header}",
"",
"${1:Text body}",
"",
"### ${2:Header}",
"",
"${3:Text body}",
":::"
],
"description": "Insert paneltab (including two tabs here). If you want additional tabs, just include more headers."
}
}
Loading
Loading