Skip to content

Commit 5a17295

Browse files
author
Gerd Aschbrenner
committed
setup project structure
Initial, almost empty, project structure
0 parents  commit 5a17295

19 files changed

+1100
-0
lines changed

.envrc

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/usr/bin/env bash
2+
3+
HATCH_BIN="$(command -v hatch)"
4+
if [ -z "${HATCH_BIN}" ]
5+
then
6+
pipx install hatch
7+
HATCH_BIN="$(command -v hatch)"
8+
fi
9+
10+
## Create a default test environment with a local softlink for simple IDE integration
11+
HATCH_ENV="hatch-test.py3.12"
12+
VIRTUAL_ENV=$(hatch env find ${HATCH_ENV})
13+
14+
if [[ ! -d ${VIRTUAL_ENV} ]]; then
15+
log_status "No virtual environment exists. Executing \`hatch env create ${HATCH_ENV}\` to create one."
16+
hatch env create ${HATCH_ENV}
17+
fi
18+
PATH_add "${VIRTUAL_ENV}/bin"
19+
export VENV_ACTIVE=1
20+
export VIRTUAL_ENV
21+
22+
## For simple IDE integration as default python with test dependencies
23+
ln -vfns "${VIRTUAL_ENV}" venv

.git_archival.txt

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
node: $Format:%H$
2+
node-date: $Format:%cI$
3+
describe-name: $Format:%(describe:tags=true,match=*[0-9]*)$
4+
ref-names: $Format:%D$

.gitattributes

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
.git_archival.txt export-subst
2+
3+
## Handle line endings automatically for files detected as text and leave all
4+
## files untouched detected as binary.
5+
## Text files should use LF and not CRLF by default (Windows). So git must not
6+
## convert them. (git uses LF internally by default)
7+
* text=auto eol=lf
8+
9+
## The above will handle all files NOT defined below.
10+
## Declaring them explicit prevents false text or binary auto-detection by git.
11+
## (Usually this is no problem.)
12+
## Especially all binary files should be declared here below to prevent
13+
## binary data manipulation by git on auto-detection failure.
14+
15+
# These files are text and should be normalized (Convert crlf => lf)
16+
.gitignore text eol=lf
17+
.gitattributes text eol=lf
18+
*.txt text eol=lf
19+
*.md text eol=lf
20+
.envrc text eol=lf
21+
LICENSE text eol=lf
22+
*.py text eol=lf
23+
*.toml text eol=lf
24+
*.yaml text eol=lf
25+
*.yml text eol=lf
26+
*.jinja text eol=lf

.gitignore

+39
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
## IntelliJ IDEA generated files to ignore
2+
*.iml
3+
*.ipr
4+
*.iws
5+
/.idea/
6+
/out/
7+
/build/
8+
/.shelf/
9+
/.run/
10+
11+
## Visual Studio Code generated files to ignore
12+
/.vscode/
13+
/.history/
14+
15+
## Softlink to hatch env (see .envrc), or directory of a venv.
16+
/venv
17+
18+
## Python build artifacts (hatch build)
19+
/dist/
20+
*.tar.gz
21+
*.whl
22+
23+
## Python test with cverage file (hatch test -a -c)
24+
__pycache__/
25+
/.coverage
26+
/coverage.lcov
27+
/lcov.info
28+
29+
## pytest cache
30+
/.pytest_cache
31+
32+
## Ruff cache
33+
/.ruff_cache
34+
35+
## Mypy cache
36+
/.mypy_cache
37+
38+
## mkbuilds generated site (hatch run mkdocs build)
39+
/site/

.readthedocs.yaml

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
# Read the Docs configuration file for MkDocs projects
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
version: 2
5+
build:
6+
os: 'ubuntu-22.04'
7+
tools:
8+
python: "3.12"
9+
10+
mkdocs:
11+
configuration: 'mkdocs.yml'
12+
13+
python:
14+
install:
15+
- requirements: 'docs/requirements.txt'

LICENSE

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
jinja-file-renderer - A tool for copying a directory, during which *.jinja
2+
files are rendered via Jinja2.
3+
Copyright (C) 2024 Gerd Aschbrenner
4+
5+
This program is free software: you can redistribute it and/or modify
6+
it under the terms of the GNU Affero General Public License as published by
7+
the Free Software Foundation, either version 3 of the License, or
8+
(at your option) any later version.
9+
10+
This program is distributed in the hope that it will be useful,
11+
but WITHOUT ANY WARRANTY; without even the implied warranty of
12+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13+
GNU Affero General Public License for more details.
14+
15+
You should have received a copy of the GNU Affero General Public License
16+
along with this program. If not, see <https://www.gnu.org/licenses/>.
17+
18+
This file is part of 'jinja-file-renderer'.
19+
20+
'jinja-file-renderer' is free software: you can redistribute it and/or modify
21+
it under the terms of the GNU Affero General Public License as published by
22+
the Free Software Foundation, either version 3 of the License, or
23+
(at your option) any later version.
24+
25+
'jinja-file-renderer' is distributed in the hope that it will be useful,
26+
but WITHOUT ANY WARRANTY; without even the implied warranty of
27+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
28+
GNU General Public License for more details.
29+
30+
You should have received a copy of the GNU Affero General Public License
31+
along with 'jinja-file-renderer'. If not, see <http://www.gnu.org/licenses/>.

README.md

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# jinja-file-renderer
2+
A tool for copying a directory, during which *.jinja files are rendered via Jinja2.
3+
4+
This is the git repository of the project, please see the official documentation on:
5+
https://readthedocs.org/projects/jinja-file-renderer/
6+
7+
If the link to the documentation does not work, you can create it locally by running:
8+
```shell
9+
hatch run mkdocs:serve
10+
```
11+
12+
## License
13+
`jinja-file-renderer` is distributed under the terms of the
14+
[GNU Affero General Public License v3 or later (AGPLv3+)](LICENSE) license. see details [agpl-3.0.md](agpl-3.0.md).

0 commit comments

Comments
 (0)