1- Insight Journal Publication Template
2- ====================================
1+ # Insight Journal Article Template
32
43[ ![ Build MyST Document] ( https://github.com/InsightSoftwareConsortium/InsightJournalTemplate/actions/workflows/build-myst.yml/badge.svg )] ( https://github.com/InsightSoftwareConsortium/InsightJournalTemplate/actions/workflows/build-myst.yml )
54
@@ -15,26 +14,149 @@ This repository contains a modern template for open science publications for the
1514- 🔄 ** Reproducible builds** and environments
1615- 📄 ** Multiple export formats** (PDF, HTML, DOCX, [ MECA] )
1716- 🧪 ** Integrated source code** testing and validation support
18- - 📚 ** Rich scientific features** (equations, citations, cross-references)
17+ - 📚 ** Rich scientific features** (figures, equations, citations, cross-references)
1918
2019## Quick Start
2120
22- See the complete documentation in [ ` docs/README.md ` ] ( docs/README.md ) .
21+ ### Prerequisites
2322
24- ### With Pixi (Recommended)
23+ 1 . Install [ Pixi] ( https://pixi.sh/latest/ ) :
2524
26- 1 . Install [ Pixi]
27- 2 . Clone and build:
25+ ``` bash
26+ curl -fsSL https://pixi.sh/install.sh | bash
27+ ```
28+
29+ 2 . Clone this repository:
2830
2931``` bash
30- git clone https://github.com/InsightSoftwareConsortium/InsightJournalTemplate.git
32+ git clone https://github.com/InsightSoftwareConsortium/InsightJournalTemplate
3133cd InsightJournalTemplate
32- pixi install
33- pixi run build-complete
3434```
3535
36- License
37- -------
36+ 2 . Build the manuscript, source code, and run tests:
37+
38+ ``` bash
39+ pixi run build
40+ ```
41+
42+ ## Repository Structure
43+
44+ ```
45+ InsightJournalTemplate/
46+ ├── docs/ # MyST Markdown manuscript
47+ │ ├── index.md # Main article content
48+ │ ├── references.bib # Bibliography database
49+ │ └── assets/ # Images and figures
50+ │
51+ ├── src/ # C++ source code examples
52+ │ ├── CMakeLists.txt # Modern CMake configuration
53+ │ ├── ImageCopy.cxx # ITK image copying example
54+ │ ├── ImageCompare.cxx # ITK image comparison example
55+ │
56+ ├── data/ # Input datasets and test data
57+ │ └── img1.png # Sample image data
58+ │
59+ ├── build/ # Build artifacts (auto-generated)
60+ │ ├── ITK/ # ITK source code (if using C++ features)
61+ │ ├── ITK-build/ # ITK build artifacts
62+ │ └── project-build/ # Project build artifacts
63+ │
64+ ├── _build/ # MyST build outputs
65+ │ ├── html/ # HTML documentation
66+ │ └── exports/ # PDF, DOCX, MECA exports
67+ │
68+ ├── .github/workflows/ # CI/CD automation
69+ ├── myst.yml # MyST project configuration
70+ ├── pixi.toml # Dependency and task management
71+ ├── pixi.lock # Locked dependency versions
72+ └── README.md # This file
73+ ```
74+
75+ ## Build Tasks
76+
77+ The project uses [ Pixi] ( https://pixi.sh ) for dependency management and task automation. All tasks can be run with ` pixi run <task-name> ` :
78+
79+ ### Core Manuscript Tasks
80+
81+ | Task | Description |
82+ | ------| -------------|
83+ | ` build-html ` | Generate interactive HTML documentation |
84+ | ` build-pdf ` | Build PDF using Typst (no LaTeX required) |
85+ | ` build-arxiv ` | Build PDF with arXiv formatting (requires LaTeX distribution) |
86+ | ` build-tex ` | Generate LaTeX source files |
87+ | ` build-docx ` | Export to Microsoft Word format |
88+ | ` build-cff ` | Generate [ CITATION.cff] file |
89+
90+ ### Combined Build Tasks
91+
92+ | Task | Description |
93+ | ------| -------------|
94+ | ` build-manuscript ` | Build HTML, PDF, and citation file |
95+ | ` build-pdfs ` | Build both Typst and arXiv PDFs |
96+ | ` build-meca ` | Create complete [ MECA] archive for journal submission |
97+ | ` build ` | ** Main build task** - builds manuscript and tests project |
98+
99+ ### Development Tasks
100+
101+ | Task | Description |
102+ | ------| -------------|
103+ | ` start ` | Start live development server with hot reload |
104+ | ` dev ` | Alias for development server |
105+ | ` clean ` | Remove all build artifacts |
106+
107+ ### C++ Source Code Tasks (Environment: ` cxx ` )
108+
109+ To work with the ITK C++ examples, use the ` cxx ` environment:
110+
111+ ``` bash
112+ # Activate C++ environment
113+ pixi shell -e cxx
114+
115+ # Or run tasks directly in C++ environment
116+ pixi run -e cxx < task-name>
117+ ```
118+
119+ | Task | Description |
120+ | ------| -------------|
121+ | ` clone-itk ` | Download ITK source code |
122+ | ` configure-itk ` | Configure ITK build with CMake |
123+ | ` build-itk ` | Compile ITK libraries |
124+ | ` configure-project ` | Configure project against built ITK |
125+ | ` build-project ` | Compile project executables |
126+ | ` test-project ` | Run project test suite |
127+
128+ ### Example Workflows
129+
130+ ** Build manuscript only:**
131+ ``` bash
132+ pixi run build-manuscript
133+ ```
134+
135+ ** Full development cycle:**
136+ ``` bash
137+ # Start development server
138+ pixi run start
139+
140+ # In another terminal, build and test everything
141+ pixi run build
142+ ```
143+
144+ ** Work with C++ code:**
145+ ``` bash
146+ # Build ITK and project code
147+ pixi run -e cxx build-project
148+
149+ # Run tests
150+ pixi run -e cxx test-project
151+ ```
152+
153+ ** Create journal submission:**
154+ ``` bash
155+ # Generate complete MECA package
156+ pixi run build-meca
157+ ```
158+
159+ ## License
38160
39161All source code in this repository is distributed under the Apache 2.0
40162License. Please see the [ LICENSE] ( ./LICENSE ) file for details.
@@ -46,4 +168,5 @@ All documents and works of art in this repository are distributed under the
46168[ MyST Markdown ] : https://mystmd.org
47169[ Pixi ] : https://pixi.sh/latest/
48170[ MECA ] : https://www.niso.org/standards-committees/meca
49- [ Creative Commons by Attribution License 4.0 ] : https://creativecommons.org/licenses/by/4.0/
171+ [ Creative Commons by Attribution License 4.0 ] : https://creativecommons.org/licenses/by/4.0/
172+ [ CITATION.cff ] : https://citation-file-format.github.io/
0 commit comments