opentemplate 0.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,208 @@
1
+ Metadata-Version: 2.4
2
+ Name: opentemplate
3
+ Version: 0.0.1
4
+ Summary: The simplest to use, yet the most comprehensive Python template
5
+ Author: open-nudge
6
+ Maintainer: open-nudge
7
+ License-Expression: Apache-2.0
8
+ Classifier: Development Status :: 2 - Pre-Alpha
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Programming Language :: Python
11
+ Classifier: Programming Language :: Python :: 3 :: Only
12
+ Classifier: Programming Language :: Python :: 3.11
13
+ Classifier: Programming Language :: Python :: 3.12
14
+ Classifier: Programming Language :: Python :: 3.13
15
+ Classifier: Topic :: Software Development :: Libraries
16
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
17
+ Classifier: Typing :: Typed
18
+ Project-URL: Changelog, https://github.com/open-nudge/opentemplate/blob/master/CHANGELOG.md
19
+ Project-URL: Documentation, https://open-nudge.github.io/opentemplate
20
+ Project-URL: Homepage, https://open-nudge.github.io/opentemplate
21
+ Project-URL: Issues, https://github.com/open-nudge/opentemplate/issues
22
+ Project-URL: Repository, https://github.com/open-nudge/opentemplate
23
+ Requires-Python: >=3.11
24
+ Description-Content-Type: text/markdown
25
+
26
+ <!--
27
+ SPDX-FileCopyrightText: © 2025 open-nudge <https://github.com/open-nudge>
28
+ SPDX-FileContributor: szymonmaszke <github@maszke.co>
29
+
30
+ SPDX-License-Identifier: Apache-2.0
31
+ -->
32
+
33
+ # opentemplate
34
+
35
+ <!-- mkdocs remove start -->
36
+
37
+ <!-- vale off -->
38
+
39
+ <!-- pyml disable-num-lines 30 line-length-->
40
+
41
+ <p align="center">
42
+ <em>The simplest to use, yet the most comprehensive Python template</em>
43
+ </p>
44
+
45
+ <div align="center">
46
+
47
+ <a href="https://pypi.org/project/opentemplate">![PyPI - Python Version](https://img.shields.io/pypi/v/opentemplate?style=for-the-badge&label=release&labelColor=grey&color=blue)
48
+ </a>
49
+ <a href="https://pypi.org/project/opentemplate">![Python Version from PEP 621 TOML](https://img.shields.io/python/required-version-toml?tomlFilePath=https%3A%2F%2Fraw.githubusercontent.com%2Fopen-nudge%2Fopentemplate%2Fmain%2Fpyproject.toml&style=for-the-badge&label=python&labelColor=grey&color=blue)
50
+ </a>
51
+ <a href="https://opensource.org/licenses/Apache-2.0">![License](https://img.shields.io/badge/License-Apache_2.0-blue?style=for-the-badge)
52
+ </a>
53
+ <a>![Coverage Hardcoded](https://img.shields.io/badge/coverage-100%25-green?style=for-the-badge)
54
+ </a>
55
+ <a href="https://scorecard.dev/viewer/?uri=github.com/open-nudge/opentemplate">![OSSF-Scorecard Score](https://img.shields.io/ossf-scorecard/github.com/open-nudge/opentemplate?style=for-the-badge&label=OSSF)
56
+ </a>
57
+
58
+ </div>
59
+
60
+ <p align="center">
61
+ ✨ <a href="#features">Features</a>
62
+ 🚀 <a href="#quick-start">Quick start</a>
63
+ 📚 <a href="https://open-nudge.github.io/opentemplate">Documentation</a>
64
+ 🤝 <a href="#contribute">Contribute</a>
65
+ 👍 <a href="https://github.com/open-nudge/opentemplate/blob/main/ADOPTERS.md">Adopters</a>
66
+ 📜 <a href="#legal">Legal</a>
67
+ </p>
68
+ <!-- vale on -->
69
+
70
+ ______________________________________________________________________
71
+
72
+ <!-- mkdocs remove end -->
73
+
74
+ ## Features
75
+
76
+ __opentemplate__ is a Python template with the following features:
77
+
78
+ - [__Truly open source__](https://open-nudge.github.io/opentemplate/template/about/philosophy):
79
+ no tokens, no fees, no premium plans, open source software only
80
+ - [__Ease of use__](https://open-nudge.github.io/opentemplate/template/quickstart/usage):
81
+ clone templated repo, run `pdm setup` and __focus on your code__
82
+ - [__Consistency__](https://open-nudge.github.io/opentemplate/template/configuration/basic):
83
+ `pre-commit` and `GitHub Actions` share the same config (`pyproject.toml`)
84
+ - [__Security__](https://open-nudge.github.io/opentemplate/template/details/security):
85
+ [SLSA](https://slsa.dev/) L3+ (public/enterprise) or L2 (private),
86
+ [OSSF Best Practices](https://github.com/ossf/scorecard)
87
+ - [__Batteries included__](https://open-nudge.github.io/opentemplate/template/details):
88
+ multiple checkers for Python, YAML, Markdown, prose, etc.
89
+ - [__Performance__](https://open-nudge.github.io/opentemplate/template/details/github-actions):
90
+ Parallel checks, builds, minimally-sized caches and checkouts
91
+
92
+ ## Quick start
93
+
94
+ ### Installation
95
+
96
+ > [!NOTE]
97
+ > [Install `pdm`](https://pdm-project.org/en/latest/#recommended-installation-method)
98
+ > (if you don't have it already), for Linux/MacOS:
99
+
100
+ ```sh
101
+ curl -sSL https://pdm-project.org/install-pdm.py | python3 -
102
+ ```
103
+
104
+ 1. Create a new GitHub repository using this template
105
+ (green `Use this template` button)
106
+ 1. Name your repo (__use underscore `_`, not hyphens `-`__)
107
+ 1. Add project description (__necessary!__)
108
+ 1. __Wait until the setup commit appears__
109
+ (performed by `github-actions[bot]`, it may take a few minutes)
110
+ 1. Clone the repository
111
+ 1. Run `pdm setup` command locally to setup development environment
112
+
113
+ > [!IMPORTANT]
114
+ > For more details read the
115
+ > [documentation](https://open-nudge.github.io/opentemplate/template/quickstart/installation)
116
+
117
+ ### Usage
118
+
119
+ 1. Create a new branch
120
+ 1. Optionally add dependencies to `pyproject.toml`
121
+ 1. Write code in `/src/<project_name>` and tests in `/tests`
122
+ 1. Use `git add`, `git commit` and `git push` your changes
123
+ 1. `pre-commit` will guide you through the process
124
+
125
+ > [!IMPORTANT]
126
+ > For more details read the
127
+ > [documentation](https://open-nudge.github.io/opentemplate/template/quickstart/usage)
128
+
129
+ ### Examples
130
+
131
+ <details>
132
+ <summary><b><big>Run checkers or fixers manually</big></b> (click me)</summary>
133
+ &nbsp;
134
+
135
+ ```sh
136
+ > pdm check-<group> # pdm fix-<group>
137
+ ```
138
+
139
+ Note that all `check` and `fix` commands are grouped for your convenience:
140
+
141
+ ```sh
142
+ > pdm check-all # pdm fix-all
143
+ ```
144
+
145
+ </details>
146
+
147
+ <details>
148
+ <summary><b><big>Adjust template</big></b> (click me)</summary>
149
+ &nbsp;
150
+
151
+ > Most of the adjustments can be done by __only__ editing `pyproject.toml`
152
+
153
+ Common changes to `pyproject.toml`:
154
+
155
+ - Add dev dependencies under `[dependency-groups]`
156
+ (everything is named `dev-<group>`)
157
+ - Modify `[tool.pdm.scripts]` for custom command
158
+ (`check-<group>` or `fix-<group>`, the latter modifies files)
159
+ - Use `[tool.<name>]` to adjust specific tool configuration
160
+
161
+ > __Adjusting these sections will affect `pre-commit` and `GitHub Actions`__
162
+
163
+ </details>
164
+
165
+ <details>
166
+ <summary><b><big>Disable some pre-commit check</big></b> (click me)</summary>
167
+ &nbsp;
168
+
169
+ > Disabling checks should be done cautiously!
170
+
171
+ `pre-commit` checks are defined in `.pre-commit-config.yaml`.
172
+
173
+ Disable a check using `SKIP` environment variable:
174
+
175
+ ```sh
176
+ SKIP='<group1>,<group2>` git commit -m <message>
177
+ ```
178
+
179
+ For details, refer to the `id` fields in `.pre-commit-config.yaml`.
180
+
181
+ > Some commands have both `<group>-fix` and `<group>-check`
182
+ > for different actions!
183
+
184
+ </details>
185
+
186
+ <!-- mkdocs remove start -->
187
+
188
+ ## Contribute
189
+
190
+ We welcome your contributions! Start here:
191
+
192
+ - [Code of Conduct](/CODE_OF_CONDUCT.md)
193
+ - [Contributing Guide](/CONTRIBUTING.md)
194
+ - [Roadmap](/ROADMAP.md)
195
+ - [Changelog](/CHANGELOG.md)
196
+ - [Report security vulnerabilities](/SECURITY.md)
197
+ - [Open an Issue](https://github.com/open-nudge/opentemplate/issues)
198
+
199
+ ## Legal
200
+
201
+ - This project is licensed under the _Apache 2.0 License_ - see
202
+ the [LICENSE](/LICENSE.md) file for details.
203
+ - This project is copyrighted by _open-nudge_ - the
204
+ appropriate copyright notice is included in each file.
205
+
206
+ <!-- mkdocs remove end -->
207
+
208
+ <!-- md-dead-link-check: on -->
@@ -0,0 +1,4 @@
1
+ opentemplate-0.0.1.dist-info/METADATA,sha256=JqjFja6oPUsh8eo2vUVPSJPhe09u7GdY2CC3j-jkT2U,7229
2
+ opentemplate-0.0.1.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
3
+ opentemplate-0.0.1.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
4
+ opentemplate-0.0.1.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: pdm-backend (2.4.4)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,4 @@
1
+ [console_scripts]
2
+
3
+ [gui_scripts]
4
+