This issue captures the suggested direction for turning this repository into a useful, modern Python package template.
Related: #56
Goal
Revive the project as an opinionated template for Python projects that may later be published as Python packages. The value should be in developer experience: fast project bootstrap, clear packaging defaults, CI, release flow, and enough validation to trust the generated scaffold.
Why this is worth doing
This project is still useful if it becomes a practical personal/reusable template rather than a generic placeholder repository. It can help with:
- Learning and practicing modern Python packaging, CI, release, and template design.
- Showing capability around developer tooling and project hygiene in a portfolio.
- Reusing the template for future Python package projects.
- Helping other developers if the template has a clear, opinionated scope.
It is probably not worth treating as a project with direct revenue potential or broad adoption unless it develops a distinct angle.
Suggested scope for v1
- Make the repository itself a real template project, not only a release payload.
- Move or regenerate the current
release/* scaffold into a clearer root/template structure.
- Keep the base template minimal and remove app-specific dependencies from the default scaffold.
- Support a simple package/library and optional CLI entry point.
- Use modern
pyproject.toml packaging defaults.
- Add a short README that explains exactly what the template is for and what it is not for.
- Add generated-project validation so the template can prove it still works.
Technical cleanup
- Review whether to use plain GitHub template repository, Copier, Cookiecutter, or a small script-based generator.
- Update Python version support and packaging metadata.
- Remove or make optional dependencies such as
on_rails, Inject, SQLAlchemy, fake-useragent, and proxy-related packages.
- Fix Pydantic compatibility if any Pydantic-based config remains; current unannotated
BaseModel fields are not compatible with Pydantic v2.
- Replace placeholder project metadata with template variables or clear examples.
- Fix obvious sample issues such as the
say_hellp typo.
- Update GitHub Actions versions.
- Use
docker compose syntax if Docker support remains.
Validation checklist
The template does not need full product-level tests, but it should validate the generated scaffold:
- Generated package installs successfully in a clean environment.
python -m pytest passes on a small sample test.
- Package can be built into wheel/sdist.
- CLI entry point works if CLI support is enabled.
- Lint/type-check commands are documented and run in CI if included.
- TestPyPI/PyPI publishing instructions are documented without committing secrets.
Suggested non-goals
- Do not include a database, proxy/Tor, HTTP client, dependency injection, or custom result library in the default template.
- Do not try to support every Python project shape.
- Do not optimize for monetization; optimize for reuse, portfolio value, and maintainability.
Proposed decision
Do a limited v1 rebuild instead of archiving immediately. If the template is not reused in future projects after that rebuild, freeze/archive it as historical reference.
This issue captures the suggested direction for turning this repository into a useful, modern Python package template.
Related: #56
Goal
Revive the project as an opinionated template for Python projects that may later be published as Python packages. The value should be in developer experience: fast project bootstrap, clear packaging defaults, CI, release flow, and enough validation to trust the generated scaffold.
Why this is worth doing
This project is still useful if it becomes a practical personal/reusable template rather than a generic placeholder repository. It can help with:
It is probably not worth treating as a project with direct revenue potential or broad adoption unless it develops a distinct angle.
Suggested scope for v1
release/*scaffold into a clearer root/template structure.pyproject.tomlpackaging defaults.Technical cleanup
on_rails,Inject,SQLAlchemy,fake-useragent, and proxy-related packages.BaseModelfields are not compatible with Pydantic v2.say_hellptypo.docker composesyntax if Docker support remains.Validation checklist
The template does not need full product-level tests, but it should validate the generated scaffold:
python -m pytestpasses on a small sample test.Suggested non-goals
Proposed decision
Do a limited v1 rebuild instead of archiving immediately. If the template is not reused in future projects after that rebuild, freeze/archive it as historical reference.