Skip to main content

Project template cloner + code snippet library for the SciTeX ecosystem — six templates vendored, shallow-cloned on demand to ~/.scitex/template/cache/

Project description

SciTeX

SciTeX Template (scitex-template)

PyPI Python Tests Install Test Coverage Docs License: AGPL v3

Project template cloner + code snippet library for the SciTeX ecosystem.

PyPI version Tests License: AGPL-3.0

pip install scitex-template · pip install scitex[template]


Problem and Solution

# Problem Solution
1 Six template repos evolving independently — minimal scitex-* package, research project, cloud-module plugin, pip project, LaTeX manuscript, singularity container One vendored monorepo + clonerpip install scitex-template ships every clone_* function, plus a code-snippet library for scitex idioms (session decorator, io save/load, plt subplots)
2 Cloner code buried in scitex-python — release cadence didn't match the templates' Standalone cloner — independent versioning, lazy umbrella imports, MCP server that exposes the same ops to agents

Installation

pip install scitex-template              # core (lazy imports for scitex.git / scitex.logging / scitex.scholar)
pip install scitex-template[mcp]         # MCP server deps (fastmcp)
pip install scitex-template[dev]         # pytest + coverage

The umbrella route also works — pip install scitex[template] pulls this package transitively.

Quick Start

pip install scitex-template
scitex-template list
scitex-template clone research ./my-experiment
from scitex_template import clone_research, get_code_template

clone_research(target="my-experiment", project_name="my-experiment")
print(get_code_template("session"))

3 Interfaces

Python API
import scitex  # noqa: F401 — ensures scitex.git / .logging are importable

from scitex_template import (
    clone_research,
    clone_pip_project,
    clone_scitex_minimal,
    get_available_templates_info,
    get_code_template,
)

# Clone a research project template
clone_research(target="my-experiment", project_name="my-experiment")

# Discover available templates
for info in get_available_templates_info():
    print(f"{info['id']:>10}  {info['description']}")

# Pull a code snippet for a scitex session script
print(get_code_template("session"))

The legacy import path from scitex.template import … also still works via a compatibility shim in scitex-python.

CLI

Entry point: scitex-template (also python -m scitex_template).

scitex-template list                       # enumerate templates
scitex-template info research              # template metadata
scitex-template clone research ./my-proj   # populate from cache
scitex-template cache-refresh              # force re-clone
MCP Server — for AI Agents

Install with pip install scitex-template[mcp] and the package exposes async handlers (template_list, template_info, template_clone, template_cache_refresh) over MCP — agents can scaffold projects without running Python themselves.

Template repos

scitex-template clones from these external repositories:

Template id Repo
research scitex-research-template
app / pip pip-project-template
cloud-module scitex-template-cloud-module
minimal scitex-minimal-template
singularity singularity_template
paper paper-template

A future revision may vendor these as templates/<id>/ subdirs in this repo so the cloner and the templates ship in lockstep.

Dependency notes

Per the SciTeX downstream dependency rule (general/01_arch_02), this package aims to avoid a hard runtime dep on the scitex umbrella. At present three submodules are still imported lazily inside clone_* functions: scitex.git, scitex.logging, scitex.scholar.ensure_workspace. Once scitex-git is extracted as a standalone, those imports will move to the standalone equivalents (scitex_git, scitex_logging, scitex_scholar). Users running pip install scitex[template] pick up the umbrella transitively, so there is no current breakage.

License

AGPL-3.0-only.

Part of SciTeX

scitex-template is part of SciTeX.

Four Freedoms for Research

  1. The freedom to run your research anywhere — your machine, your terms.
  2. The freedom to study how every step works — from raw data to final manuscript.
  3. The freedom to redistribute your workflows, not just your papers.
  4. The freedom to modify any module and share improvements with the community.

AGPL-3.0 — because we believe research infrastructure deserves the same freedoms as the software it runs on.


SciTeX

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scitex_template-0.6.5.tar.gz (140.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scitex_template-0.6.5-py3-none-any.whl (115.9 kB view details)

Uploaded Python 3

File details

Details for the file scitex_template-0.6.5.tar.gz.

File metadata

  • Download URL: scitex_template-0.6.5.tar.gz
  • Upload date:
  • Size: 140.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for scitex_template-0.6.5.tar.gz
Algorithm Hash digest
SHA256 b0685dee71c79a5ba85d3b0303b9b0ecc8e2574d6918b3cfe70648b4dbf75d12
MD5 12e9277d16c26ddcbfa39bb80f6083b7
BLAKE2b-256 d0096a2b8493088b88a339a98fa2fc2f4be9519d5f780e6f84f21cecf291b1b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for scitex_template-0.6.5.tar.gz:

Publisher: publish-pypi.yml on ywatanabe1989/scitex-template

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file scitex_template-0.6.5-py3-none-any.whl.

File metadata

  • Download URL: scitex_template-0.6.5-py3-none-any.whl
  • Upload date:
  • Size: 115.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for scitex_template-0.6.5-py3-none-any.whl
Algorithm Hash digest
SHA256 04ced453109697fa037afc7794a9c3d7912bafcdd7054ea37524b607a435d83d
MD5 7c88c7218df8d1aa9de7c3ac55468a09
BLAKE2b-256 aea3a84b4ad8d3302b10c2b3b10e867344160156ae2f5ba0eaa3bfb2a645d3a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for scitex_template-0.6.5-py3-none-any.whl:

Publisher: publish-pypi.yml on ywatanabe1989/scitex-template

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page