.
This commit is contained in:
47
Toolbox/docs/examples/joplin-note-sample.md
Normal file
47
Toolbox/docs/examples/joplin-note-sample.md
Normal file
@@ -0,0 +1,47 @@
|
||||
# Meeting Notes: Documentation Toolchain Implementation
|
||||
|
||||
## Date: 2025-11-05
|
||||
## Attendees: Charles Wyble, Jane Smith, John Doe
|
||||
## Topic: Documentation Toolchain Setup
|
||||
|
||||
### Agenda
|
||||
1. Review current documentation challenges
|
||||
2. Discuss proposed toolchain solutions
|
||||
3. Plan implementation timeline
|
||||
|
||||
### Current Challenges
|
||||
- Inconsistent documentation formats across projects
|
||||
- Lack of automated generation tools
|
||||
- Poor integration with CI/CD pipelines
|
||||
- Difficult to maintain multiple document versions
|
||||
|
||||
### Proposed Solutions
|
||||
- Implement standardized documentation toolchain using pandoc, mdbook, and typst
|
||||
- Containerize all tools for consistent environments
|
||||
- Integrate with existing CI/CD systems
|
||||
- Create templates for common document types
|
||||
|
||||
### Toolchain Decisions
|
||||
- **Primary Format**: Markdown for source documents
|
||||
- **Conversion Tools**:
|
||||
- pandoc - for general conversions (Markdown to PDF/HTML/Docx)
|
||||
- mdbook - for book-style documentation
|
||||
- typst - for academic-style documents
|
||||
- quarto - for data-driven documents
|
||||
- **Styling**: LaTeX templates for PDF output
|
||||
|
||||
### Implementation Timeline
|
||||
- **Week 1**: Environment setup with Docker
|
||||
- **Week 2**: Template development
|
||||
- **Week 3**: Integration with CI/CD
|
||||
- **Week 4**: Testing and validation
|
||||
- **Week 5**: Deployment and documentation
|
||||
|
||||
### Action Items
|
||||
- [ ] Jane: Research pandoc LaTeX templates
|
||||
- [ ] John: Create Dockerfile for toolchain
|
||||
- [ ] Charles: Define security requirements
|
||||
- [ ] All: Review and test prototype by EOW
|
||||
|
||||
### Next Meeting
|
||||
Date: 2025-11-12, 14:00 UTC
|
||||
38
Toolbox/docs/examples/mdbook-sample/src/SUMMARY.md
Normal file
38
Toolbox/docs/examples/mdbook-sample/src/SUMMARY.md
Normal file
@@ -0,0 +1,38 @@
|
||||
# The Example Book
|
||||
|
||||
This is a sample book to demonstrate mdbook functionality.
|
||||
|
||||
## Chapter 1: Introduction
|
||||
|
||||
Welcome to this example book. This demonstrates the capabilities of mdbook for generating static documentation sites.
|
||||
|
||||
### Features of mdbook
|
||||
|
||||
- Write in Markdown
|
||||
- Automatically generated table of contents
|
||||
- Syntax highlighting for code blocks
|
||||
- Cross-references between chapters
|
||||
- Support for themes and custom CSS
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("Hello, mdbook!");
|
||||
}
|
||||
```
|
||||
|
||||
## Chapter 2: Advanced Features
|
||||
|
||||
Mdbook supports several advanced features that enhance documentation:
|
||||
|
||||
- Internal link: [Introduction](./ch1.md)
|
||||
- External link: [Rust Homepage](https://www.rust-lang.org)
|
||||
- Images and diagrams
|
||||
- Math formulas using KaTeX
|
||||
|
||||
$$
|
||||
\int_0^\infty e^{-x^2} dx = \frac{\sqrt{\pi}}{2}
|
||||
$$
|
||||
|
||||
### Summary
|
||||
|
||||
This example demonstrates mdbook's core functionality. In a real project, you would have multiple chapters with detailed content.
|
||||
38
Toolbox/docs/examples/mdbook-sample/summary.md
Normal file
38
Toolbox/docs/examples/mdbook-sample/summary.md
Normal file
@@ -0,0 +1,38 @@
|
||||
# Example Book
|
||||
|
||||
This is a sample book to demonstrate mdbook functionality.
|
||||
|
||||
## Chapter 1: Introduction
|
||||
|
||||
Welcome to this example book. This demonstrates the capabilities of mdbook for generating static documentation sites.
|
||||
|
||||
### Features of mdbook
|
||||
|
||||
- Write in Markdown
|
||||
- Automatically generated table of contents
|
||||
- Syntax highlighting for code blocks
|
||||
- Cross-references between chapters
|
||||
- Support for themes and custom CSS
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("Hello, mdbook!");
|
||||
}
|
||||
```
|
||||
|
||||
## Chapter 2: Advanced Features
|
||||
|
||||
Mdbook supports several advanced features that enhance documentation:
|
||||
|
||||
- Internal link: [Introduction](./ch1.md)
|
||||
- External link: [Rust Homepage](https://www.rust-lang.org)
|
||||
- Images and diagrams
|
||||
- Math formulas using KaTeX
|
||||
|
||||
$$
|
||||
\int_0^\infty e^{-x^2} dx = \frac{\sqrt{\pi}}{2}
|
||||
$$
|
||||
|
||||
### Summary
|
||||
|
||||
This example demonstrates mdbook's core functionality. In a real project, you would have multiple chapters with detailed content.
|
||||
70
Toolbox/docs/examples/project-plan.md
Normal file
70
Toolbox/docs/examples/project-plan.md
Normal file
@@ -0,0 +1,70 @@
|
||||
# Project Plan: Documentation Toolchain
|
||||
|
||||
## Overview
|
||||
This document outlines the plan for implementing a comprehensive documentation toolchain for the TSYS Development Stack.
|
||||
|
||||
## Timeline
|
||||
- **Start Date:** 2025-11-15
|
||||
- **Estimated Completion:** 2025-12-15
|
||||
- **Review Date:** 2025-11-30
|
||||
|
||||
## Stakeholders
|
||||
- **Project Lead:** Charles Wyble
|
||||
- **Engineering Team:** DevOps Engineers
|
||||
- **Quality Assurance:** Documentation Team
|
||||
- **End Users:** All TSYS Developers
|
||||
|
||||
## Objectives
|
||||
1. Implement a standardized documentation workflow
|
||||
2. Integrate multiple documentation formats (Markdown, LaTeX, Typst)
|
||||
3. Enable automated document generation
|
||||
4. Provide CI/CD integration for documentation
|
||||
|
||||
## Work Packages
|
||||
|
||||
### WP1: Environment Setup (Week 1)
|
||||
- Set up development environment
|
||||
- Install documentation tools (pandoc, mdbook, typst, etc.)
|
||||
- Configure build scripts
|
||||
|
||||
### WP2: Template Development (Week 2)
|
||||
- Create document templates
|
||||
- Develop style guides
|
||||
- Standardize formatting
|
||||
|
||||
### WP3: Integration (Week 3)
|
||||
- Integrate tools with existing systems
|
||||
- Set up CI/CD pipeline
|
||||
- Create documentation workflows
|
||||
|
||||
### WP4: Testing & Validation (Week 4)
|
||||
- Test all document generation workflows
|
||||
- Validate output quality
|
||||
- Perform security scanning
|
||||
|
||||
### WP5: Deployment (Week 5)
|
||||
- Deploy to production environments
|
||||
- Provide user training
|
||||
- Document procedures
|
||||
|
||||
## Deliverables
|
||||
- Containerized documentation environment
|
||||
- Automated build scripts
|
||||
- Documentation templates
|
||||
- User guides and tutorials
|
||||
|
||||
## Resources Required
|
||||
- Development time: 10 person-weeks
|
||||
- Infrastructure: Docker-enabled CI/CD system
|
||||
- Tools: pandoc, mdbook, typst, quarto, and related libraries
|
||||
|
||||
## Success Criteria
|
||||
- All documentation types generate correctly
|
||||
- Integration with existing CI/CD systems
|
||||
- 100% security scan compliance
|
||||
- Performance benchmarks met
|
||||
|
||||
## Risks
|
||||
- Dependency conflicts between tools
|
||||
- Licensing issues with LaTeX packages
|
||||
- Performance degradation with complex documents
|
||||
42
Toolbox/docs/examples/resume-sample.md
Normal file
42
Toolbox/docs/examples/resume-sample.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# John Doe - Software Engineer
|
||||
|
||||
## Contact Information
|
||||
- Email: john.doe@example.com
|
||||
- Phone: (555) 123-4567
|
||||
- LinkedIn: linkedin.com/in/johndoe
|
||||
- GitHub: github.com/johndoe
|
||||
|
||||
## Professional Summary
|
||||
Experienced software engineer with 8+ years of expertise in developing scalable web applications and cloud infrastructure. Specialized in full-stack development with a focus on modern JavaScript frameworks and cloud technologies.
|
||||
|
||||
## Skills
|
||||
- Languages: JavaScript, TypeScript, Python, Java, Go
|
||||
- Frontend: React, Vue, Angular, HTML5, CSS3, SASS
|
||||
- Backend: Node.js, Express, Django, Spring Boot
|
||||
- Databases: PostgreSQL, MongoDB, Redis
|
||||
- Cloud: AWS, Docker, Kubernetes, CI/CD
|
||||
|
||||
## Experience
|
||||
|
||||
### Senior Software Engineer | TechCorp | 2020 - Present
|
||||
- Led development of a microservices architecture serving 1M+ users
|
||||
- Reduced application load time by 40% through performance optimization
|
||||
- Mentored 5 junior developers and conducted code reviews
|
||||
|
||||
### Software Engineer | StartupXYZ | 2018 - 2020
|
||||
- Developed and maintained customer-facing web applications
|
||||
- Implemented CI/CD pipeline reducing deployment time by 60%
|
||||
- Collaborated with design team to improve UI/UX
|
||||
|
||||
### Junior Developer | ABC Solutions | 2016 - 2018
|
||||
- Built and maintained internal tools and dashboards
|
||||
- Participated in agile development process
|
||||
- Assisted in troubleshooting production issues
|
||||
|
||||
## Education
|
||||
**Bachelor of Science in Computer Science**
|
||||
University of Technology | 2012 - 2016
|
||||
|
||||
## Certifications
|
||||
- AWS Certified Solutions Architect
|
||||
- Certified Kubernetes Administrator
|
||||
100
Toolbox/docs/examples/resume-style.tex
Normal file
100
Toolbox/docs/examples/resume-style.tex
Normal file
@@ -0,0 +1,100 @@
|
||||
\documentclass[11pt,letterpaper]{article}
|
||||
\usepackage[margin=1in]{geometry}
|
||||
\usepackage{titlesec}
|
||||
\usepackage{enumitem}
|
||||
\usepackage[dvipsnames]{xcolor}
|
||||
\usepackage{fontspec}
|
||||
\usepackage{hyperref}
|
||||
|
||||
% Define colors
|
||||
\definecolor{primaryColor}{RGB}{0, 43, 54}
|
||||
\definecolor{secondaryColor}{RGB}{147, 161, 161}
|
||||
|
||||
% Set main font
|
||||
\setmainfont{Carlito}
|
||||
|
||||
% Remove page numbering
|
||||
\pagestyle{empty}
|
||||
|
||||
% Format section titles
|
||||
\titleformat{\section}
|
||||
{\large\bfseries\color{primaryColor}}
|
||||
{}
|
||||
{0em}
|
||||
{\underline}
|
||||
\titlespacing{\section}{0pt}{1.5ex}{0.5ex}
|
||||
|
||||
% Format subsection titles
|
||||
\titleformat{\subsection}
|
||||
{\normalsize\bfseries}
|
||||
{}
|
||||
{0em}
|
||||
{}
|
||||
\titlespacing{\subsection}{0pt}{1ex}{0.25ex}
|
||||
|
||||
% Set link colors
|
||||
\hypersetup{
|
||||
colorlinks=true,
|
||||
linkcolor=secondaryColor,
|
||||
urlcolor=secondaryColor
|
||||
}
|
||||
|
||||
\begin{document}
|
||||
|
||||
% Header
|
||||
\begin{center}
|
||||
{\LARGE\bfseries\color{primaryColor} John Doe} \\ \vspace{0.2cm}
|
||||
{\large Software Engineer} \\ \vspace{0.2cm}
|
||||
\color{secondaryColor}
|
||||
john.doe@example.com | (555) 123-4567 | linkedin.com/in/johndoe | github.com/johndoe
|
||||
\end{center}
|
||||
|
||||
\vspace{0.3cm}
|
||||
|
||||
% Summary section
|
||||
\section{Professional Summary}
|
||||
\color{black}
|
||||
Experienced software engineer with 8+ years of expertise in developing scalable web applications and cloud infrastructure. Specialized in full-stack development with a focus on modern JavaScript frameworks and cloud technologies.
|
||||
|
||||
\section{Skills}
|
||||
\begin{itemize}[leftmargin=0.5cm, itemsep=0pt]
|
||||
\item \textbf{Languages:} JavaScript, TypeScript, Python, Java, Go
|
||||
\item \textbf{Frontend:} React, Vue, Angular, HTML5, CSS3, SASS
|
||||
\item \textbf{Backend:} Node.js, Express, Django, Spring Boot
|
||||
\item \textbf{Databases:} PostgreSQL, MongoDB, Redis
|
||||
\item \textbf{Cloud:} AWS, Docker, Kubernetes, CI/CD
|
||||
\end{itemize}
|
||||
|
||||
\section{Experience}
|
||||
\subsection{Senior Software Engineer | TechCorp | 2020 - Present}
|
||||
\begin{itemize}[leftmargin=0.5cm, itemsep=0pt]
|
||||
\item Led development of a microservices architecture serving 1M+ users
|
||||
\item Reduced application load time by 40\% through performance optimization
|
||||
\item Mentored 5 junior developers and conducted code reviews
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Software Engineer | StartupXYZ | 2018 - 2020}
|
||||
\begin{itemize}[leftmargin=0.5cm, itemsep=0pt]
|
||||
\item Developed and maintained customer-facing web applications
|
||||
\item Implemented CI/CD pipeline reducing deployment time by 60\%
|
||||
\item Collaborated with design team to improve UI/UX
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Junior Developer | ABC Solutions | 2016 - 2018}
|
||||
\begin{itemize}[leftmargin=0.5cm, itemsep=0pt]
|
||||
\item Built and maintained internal tools and dashboards
|
||||
\item Participated in agile development process
|
||||
\item Assisted in troubleshooting production issues
|
||||
\end{itemize}
|
||||
|
||||
\section{Education}
|
||||
\textbf{Bachelor of Science in Computer Science} \\
|
||||
University of Technology | 2012 - 2016
|
||||
|
||||
\section{Certifications}
|
||||
\begin{itemize}[leftmargin=0.5cm, itemsep=0pt]
|
||||
\item AWS Certified Solutions Architect
|
||||
\item Certified Kubernetes Administrator
|
||||
\end{itemize}
|
||||
|
||||
\end{document}
|
||||
44
Toolbox/docs/examples/sample-bibliography.bib
Normal file
44
Toolbox/docs/examples/sample-bibliography.bib
Normal file
@@ -0,0 +1,44 @@
|
||||
% Sample bibliography file for BibTool testing
|
||||
|
||||
@article{example2023,
|
||||
title={An Example Article for BibTool},
|
||||
author={Smith, John and Doe, Jane},
|
||||
journal={Journal of Examples},
|
||||
volume={1},
|
||||
number={1},
|
||||
pages={1--10},
|
||||
year={2023},
|
||||
publisher={Example Publisher},
|
||||
doi={10.1234/example2023}
|
||||
}
|
||||
|
||||
@book{another2023,
|
||||
title={Another Example Book for BibTool},
|
||||
author={Brown, Alice},
|
||||
year={2023},
|
||||
publisher={Example Academic Press},
|
||||
address={New York},
|
||||
isbn={978-1234567890}
|
||||
}
|
||||
|
||||
@inproceedings{third2023,
|
||||
title={A Conference Paper Example for BibTool},
|
||||
author={Johnson, Bob and Williams, Carol},
|
||||
booktitle={Proceedings of the International Conference on Examples},
|
||||
pages={123--130},
|
||||
year={2023},
|
||||
organization={Example Organization}
|
||||
}
|
||||
|
||||
% This is a duplicate entry to test BibTool's duplicate detection
|
||||
@article{example2023_duplicate,
|
||||
title={An Example Article for BibTool},
|
||||
author={Smith, John and Doe, Jane},
|
||||
journal={Journal of Examples},
|
||||
volume={1},
|
||||
number={1},
|
||||
pages={1--10},
|
||||
year={2023},
|
||||
publisher={Example Publisher},
|
||||
doi={10.1234/example2023}
|
||||
}
|
||||
10
Toolbox/docs/examples/sample-book/book.toml
Normal file
10
Toolbox/docs/examples/sample-book/book.toml
Normal file
@@ -0,0 +1,10 @@
|
||||
[book]
|
||||
authors = ["TSYS Group"]
|
||||
language = "en"
|
||||
multilingual = false
|
||||
src = "src"
|
||||
title = "Sample mdBook Project"
|
||||
|
||||
[output.html]
|
||||
git-repository-url = "https://github.com/tsysdevstack/toolbox"
|
||||
edit-url-template = "https://github.com/tsysdevstack/toolbox/edit/main/{path}"
|
||||
6
Toolbox/docs/examples/sample-book/src/SUMMARY.md
Normal file
6
Toolbox/docs/examples/sample-book/src/SUMMARY.md
Normal file
@@ -0,0 +1,6 @@
|
||||
# Summary
|
||||
|
||||
[Introduction](./chapters/intro.md)
|
||||
[Getting Started](./chapters/getting-started.md)
|
||||
[Advanced Features](./chapters/advanced.md)
|
||||
[Conclusion](./chapters/conclusion.md)
|
||||
55
Toolbox/docs/examples/sample-book/src/chapters/advanced.md
Normal file
55
Toolbox/docs/examples/sample-book/src/chapters/advanced.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# Advanced Features
|
||||
|
||||
This chapter covers more advanced features of mdBook that can enhance your documentation.
|
||||
|
||||
## Adding Custom CSS
|
||||
|
||||
You can customize the look of your book by adding CSS files to a theme directory:
|
||||
|
||||
```
|
||||
mybook/
|
||||
├── book.toml
|
||||
└── src/
|
||||
├── SUMMARY.md
|
||||
└── ...
|
||||
└── theme/
|
||||
└── css/
|
||||
└── custom.css
|
||||
```
|
||||
|
||||
## Including Files
|
||||
|
||||
Use the `{{#include}}` syntax to include external files:
|
||||
|
||||
```markdown
|
||||
{{#include ../../../path/to/file.rs}}
|
||||
```
|
||||
|
||||
## Adding Math
|
||||
|
||||
Mathematical formulas are supported using KaTeX:
|
||||
|
||||
$$
|
||||
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
|
||||
$$
|
||||
|
||||
Inline math: $E = mc^2$
|
||||
|
||||
## Admonitions
|
||||
|
||||
Special blocks for notes, warnings, etc.:
|
||||
|
||||
> Note: This is a note admonition.
|
||||
|
||||
> Warning: This is a warning admonition.
|
||||
|
||||
> Tip: This is a tip admonition.
|
||||
|
||||
## Adding Interactive Elements
|
||||
|
||||
You can include HTML directly in your markdown:
|
||||
|
||||
<details>
|
||||
<summary>Click to expand</summary>
|
||||
Hidden content goes here.
|
||||
</details>
|
||||
27
Toolbox/docs/examples/sample-book/src/chapters/conclusion.md
Normal file
27
Toolbox/docs/examples/sample-book/src/chapters/conclusion.md
Normal file
@@ -0,0 +1,27 @@
|
||||
# Conclusion
|
||||
|
||||
This concludes our sample mdBook project. You now know the basics of creating documentation with mdBook.
|
||||
|
||||
## What We've Covered
|
||||
|
||||
- Setting up an mdBook project
|
||||
- Creating chapters with markdown
|
||||
- Using advanced features like math and admonitions
|
||||
- Building and serving your book
|
||||
|
||||
## Next Steps
|
||||
|
||||
Now that you understand the basics, you can:
|
||||
|
||||
1. Create your own documentation project
|
||||
2. Customize the theme and styling
|
||||
3. Add more complex content with interactive elements
|
||||
4. Deploy your book to a web server
|
||||
|
||||
## Additional Resources
|
||||
|
||||
- [Official mdBook documentation](https://rust-lang.github.io/mdBook/)
|
||||
- [Markdown guide](https://www.markdownguide.org/)
|
||||
- [TSYS Documentation & Diagrams container](https://github.com/tsysdevstack/toolbox)
|
||||
|
||||
Thank you for exploring the capabilities of mdBook with the TSYS Documentation & Diagrams container!
|
||||
@@ -0,0 +1,47 @@
|
||||
# Getting Started
|
||||
|
||||
This chapter will guide you through the basics of creating content with mdBook.
|
||||
|
||||
## Creating Your First Chapter
|
||||
|
||||
To create a new chapter:
|
||||
|
||||
1. Create a markdown file in the `src` directory
|
||||
2. Add an entry in `SUMMARY.md` to include it in the navigation
|
||||
3. Run `mdbook build` to generate the HTML
|
||||
|
||||
## Basic Markdown Syntax
|
||||
|
||||
You can use standard markdown syntax in your chapters:
|
||||
|
||||
```markdown
|
||||
# Heading 1
|
||||
## Heading 2
|
||||
### Heading 3
|
||||
|
||||
- List item 1
|
||||
- List item 2
|
||||
- List item 3
|
||||
|
||||
[Link text](path/to/page.md)
|
||||
|
||||

|
||||
```
|
||||
|
||||
## Code Blocks
|
||||
|
||||
Code blocks get syntax highlighting:
|
||||
|
||||
```rust
|
||||
fn main() {
|
||||
println!("Hello, world!");
|
||||
}
|
||||
```
|
||||
|
||||
```javascript
|
||||
console.log("Hello, JavaScript!");
|
||||
```
|
||||
|
||||
```python
|
||||
print("Hello, Python!")
|
||||
```
|
||||
15
Toolbox/docs/examples/sample-book/src/chapters/intro.md
Normal file
15
Toolbox/docs/examples/sample-book/src/chapters/intro.md
Normal file
@@ -0,0 +1,15 @@
|
||||
# Introduction
|
||||
|
||||
Welcome to the Sample mdBook Project! This book demonstrates the capabilities of mdBook for creating documentation.
|
||||
|
||||
## What is mdBook?
|
||||
|
||||
mdBook is a utility to create books from markdown files. It is similar to GitBook but written in Rust.
|
||||
|
||||
## Features
|
||||
|
||||
- Write books in markdown
|
||||
- Create a book with multiple chapters
|
||||
- Automatically generated table of contents
|
||||
- Syntax highlighting for code blocks
|
||||
- Responsive design for mobile devices
|
||||
27
Toolbox/docs/examples/sample-diagram.txt
Normal file
27
Toolbox/docs/examples/sample-diagram.txt
Normal file
@@ -0,0 +1,27 @@
|
||||
# Sample diagram for Kroki
|
||||
|
||||
graph TD
|
||||
A[Documentation Tools] --> B[Pandoc]
|
||||
A --> C[mdBook]
|
||||
A --> D[Typst]
|
||||
A --> E[Marp]
|
||||
A --> F[Quarto]
|
||||
|
||||
B --> G[PDF Output]
|
||||
B --> H[DOCX Output]
|
||||
B --> I[HTML Output]
|
||||
|
||||
C --> J[Book Generation]
|
||||
D --> K[Typesetting]
|
||||
E --> L[Presentations]
|
||||
F --> M[Scientific Reports]
|
||||
|
||||
G --> N[Print]
|
||||
H --> O[Word Processing]
|
||||
I --> P[Web Publishing]
|
||||
J --> Q[Documentation Sites]
|
||||
K --> R[Academic Papers]
|
||||
L --> S[Slides]
|
||||
M --> T[Research Papers]
|
||||
|
||||
style A fill:#f9f,stroke:#333,stroke-width:2px
|
||||
62
Toolbox/docs/examples/sample-markdown.md
Normal file
62
Toolbox/docs/examples/sample-markdown.md
Normal file
@@ -0,0 +1,62 @@
|
||||
# Sample Document for Pandoc Testing
|
||||
|
||||
This is a sample document to test the pandoc functionality in the TSYS Documentation & Diagrams container.
|
||||
|
||||
## Heading 2
|
||||
|
||||
This document contains various elements to test pandoc's conversion capabilities:
|
||||
|
||||
- Bullet list item 1
|
||||
- Bullet list item 2
|
||||
- Nested item
|
||||
- Bullet list item 3
|
||||
|
||||
### Heading 3
|
||||
|
||||
1. Numbered list item 1
|
||||
2. Numbered list item 2
|
||||
1. Nested numbered item
|
||||
3. Numbered list item 3
|
||||
|
||||
> This is a blockquote to test pandoc's handling of quoted text.
|
||||
|
||||
Here is some `inline code` and a code block:
|
||||
|
||||
```python
|
||||
def hello_world():
|
||||
print("Hello, world!")
|
||||
return True
|
||||
```
|
||||
|
||||
**Bold text** and *italic text* should render correctly.
|
||||
|
||||
## Table Example
|
||||
|
||||
| Column 1 | Column 2 | Column 3 |
|
||||
| :--- | :--- | :--- |
|
||||
| Left-aligned | Left-aligned | Left-aligned |
|
||||
| Item 1 | Value 1 | Status 1 |
|
||||
| Item 2 | Value 2 | Status 2 |
|
||||
| Item 3 | Value 3 | Status 3 |
|
||||
|
||||
## Link and Image
|
||||
|
||||
Here is a [link to pandoc's website](https://pandoc.org).
|
||||
|
||||

|
||||
|
||||
## Mathematical Formula
|
||||
|
||||
Here is an inline equation: $E = mc^2$
|
||||
|
||||
And here is a block equation:
|
||||
|
||||
$$\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}$$
|
||||
|
||||
## Citations
|
||||
|
||||
This statement needs a citation [@example2023].
|
||||
|
||||
This one too [@another2023; @third2023].
|
||||
|
||||
# References
|
||||
106
Toolbox/docs/examples/sample-presentation.md
Normal file
106
Toolbox/docs/examples/sample-presentation.md
Normal file
@@ -0,0 +1,106 @@
|
||||
---
|
||||
marp: true
|
||||
theme: uncover
|
||||
paginate: true
|
||||
---
|
||||
|
||||
# TSYS Documentation & Diagrams
|
||||
|
||||
## A Marp Presentation Sample
|
||||
|
||||
---
|
||||
|
||||
## What's in this Container?
|
||||
|
||||
- **Pandoc** - Universal document converter
|
||||
- **mdBook** - Book generation from Markdown
|
||||
- **Typst** - Modern typesetting system
|
||||
- **Marp** - Markdown presentation creator
|
||||
- **Quarto** - Scientific publishing system
|
||||
- **And more!**
|
||||
|
||||
---
|
||||
|
||||
## Key Features
|
||||
|
||||
- Runs as non-root user
|
||||
- Uses `mise` for runtime management
|
||||
- Version-pinned packages
|
||||
- Multi-platform support
|
||||
- Security-first design
|
||||
|
||||
---
|
||||
|
||||
## Document Conversion
|
||||
|
||||
Convert documents between formats easily:
|
||||
|
||||
```bash
|
||||
pandoc input.md -o output.pdf
|
||||
```
|
||||
|
||||
Or with custom styling:
|
||||
|
||||
```bash
|
||||
pandoc input.md --reference-doc=template.docx -o output.docx
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Multi-format Publishing
|
||||
|
||||
Create documents in multiple formats simultaneously:
|
||||
|
||||
- PDF for print
|
||||
- HTML for web
|
||||
- DOCX for word processing
|
||||
- EPUB for e-readers
|
||||
|
||||
---
|
||||
|
||||
## Code Example
|
||||
|
||||
Highlighting code in presentations:
|
||||
|
||||
```javascript
|
||||
function helloWorld() {
|
||||
console.log("Hello, world!");
|
||||
return true;
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Math Support
|
||||
|
||||
Equations in presentations:
|
||||
|
||||
$$
|
||||
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
|
||||
$$
|
||||
|
||||
---
|
||||
|
||||
## Diagrams
|
||||
|
||||
Create diagrams with Kroki:
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
A[Document] --> B{Format}
|
||||
B --> C[PDF]
|
||||
B --> D[HTML]
|
||||
B --> E[DOCX]
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Thank You!
|
||||
|
||||
For more information, check out the documentation:
|
||||
|
||||
- README.md
|
||||
- USAGE.md
|
||||
- Troubleshooting Guide
|
||||
|
||||
Questions?
|
||||
97
Toolbox/docs/examples/sample-report.qmd
Normal file
97
Toolbox/docs/examples/sample-report.qmd
Normal file
@@ -0,0 +1,97 @@
|
||||
---
|
||||
title: "TSYS Documentation & Diagrams Sample Report"
|
||||
author: "TSYS Group"
|
||||
date: "2025-11-07"
|
||||
format:
|
||||
html:
|
||||
theme: cosmo
|
||||
toc: true
|
||||
pdf:
|
||||
documentclass: article
|
||||
docx:
|
||||
reference-doc: template.docx
|
||||
jupyter: python3
|
||||
---
|
||||
|
||||
## Overview
|
||||
|
||||
This report demonstrates the capabilities of Quarto for creating reproducible scientific reports. Quarto is a powerful open-source scientific and technical publishing system that supports multiple input formats, numerous output formats, and integrates with R, Python, Julia, and Observable.
|
||||
|
||||
## Data Analysis with Python
|
||||
|
||||
We can embed code directly in the document:
|
||||
|
||||
```{python}
|
||||
#| echo: true
|
||||
import matplotlib.pyplot as plt
|
||||
import numpy as np
|
||||
|
||||
# Generate sample data
|
||||
x = np.linspace(0, 10, 100)
|
||||
y = np.sin(x)
|
||||
|
||||
# Create plot
|
||||
plt.figure(figsize=(10, 6))
|
||||
plt.plot(x, y, label='sin(x)')
|
||||
plt.title('Sine Wave')
|
||||
plt.xlabel('x')
|
||||
plt.ylabel('sin(x)')
|
||||
plt.legend()
|
||||
plt.grid(True)
|
||||
plt.show()
|
||||
```
|
||||
|
||||
## Mathematical Formulas
|
||||
|
||||
Quarto supports both inline math $E = mc^2$ and display math:
|
||||
|
||||
$$\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}$$
|
||||
|
||||
## Citations
|
||||
|
||||
We can reference academic works in our document. For example, research has shown the importance of reproducible research [@peng2009].
|
||||
|
||||
## Tables
|
||||
|
||||
| Tool | Purpose | Key Feature |
|
||||
|------|---------|-------------|
|
||||
| Pandoc | Document conversion | Universal converter |
|
||||
| mdBook | Book generation | Markdown-based |
|
||||
| Typst | Typesetting | Fast and modern |
|
||||
| Marp | Presentations | Markdown-based |
|
||||
| Quarto | Scientific publishing | Multi-language support |
|
||||
|
||||
## Diagrams
|
||||
|
||||
With integrated Kroki support, we can include diagrams:
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
A[Input Document] --> B{Quarto}
|
||||
B --> C[HTML Output]
|
||||
B --> D[PDF Output]
|
||||
B --> E[DOCX Output]
|
||||
B --> F[Beamer Slides]
|
||||
```
|
||||
|
||||
## Code Execution
|
||||
|
||||
Quarto allows executing code in multiple languages:
|
||||
|
||||
```{python}
|
||||
#| echo: true
|
||||
import pandas as pd
|
||||
|
||||
# Create sample data frame
|
||||
data = {'Name': ['Alice', 'Bob', 'Charlie'],
|
||||
'Age': [25, 30, 35],
|
||||
'City': ['New York', 'London', 'Tokyo']}
|
||||
df = pd.DataFrame(data)
|
||||
print(df)
|
||||
```
|
||||
|
||||
## Conclusion
|
||||
|
||||
This sample demonstrates Quarto's powerful features for creating reproducible, multi-format documents that combine narrative text, code, and output. The TSYS Documentation & Diagrams container provides all the necessary tools for comprehensive document production workflows.
|
||||
|
||||
## References
|
||||
66
Toolbox/docs/examples/sample-typst.typ
Normal file
66
Toolbox/docs/examples/sample-typst.typ
Normal file
@@ -0,0 +1,66 @@
|
||||
// Sample Typst document to demonstrate typesetting capabilities
|
||||
|
||||
#set page(width: 12cm, height: 16cm, margin: 2cm)
|
||||
#set text(family: "Linux Libertine", size: 11pt)
|
||||
|
||||
= TSYS Documentation & Diagrams
|
||||
A Typst Sample Document
|
||||
|
||||
#lorem(30)
|
||||
|
||||
== Introduction
|
||||
#lorem(50)
|
||||
|
||||
== Features of Typst
|
||||
|
||||
Typst offers many advantages for document creation:
|
||||
|
||||
- #h(0.3em) *Fast and Modern* - Built for efficiency and speed
|
||||
- #h(0.3em) *Markup-based* - Clean, semantic syntax
|
||||
- #h(0.3em) *Powerful Typesetting* - Professional output quality
|
||||
|
||||
#lorem(40)
|
||||
|
||||
== Code Example
|
||||
|
||||
Here's how to write code in Typst:
|
||||
|
||||
```
|
||||
#let greet(name) = [
|
||||
Hello, #name!
|
||||
]
|
||||
|
||||
#greet("World")
|
||||
```
|
||||
|
||||
== Mathematical Expressions
|
||||
|
||||
Typst has excellent support for mathematical expressions:
|
||||
|
||||
- Inline math: #math.equation( sum_(i=0)^n i^2 = (n(n+1)(2n+1))/6 )
|
||||
- Block equations:
|
||||
$
|
||||
f(x) = int_-∞^∞ hat f(xi),e^2 pi i xi x dxi
|
||||
$
|
||||
|
||||
== Table Example
|
||||
|
||||
#table(
|
||||
columns: 3,
|
||||
[Column 1], [Column 2], [Column 3],
|
||||
[Item 1], [Value 1], [Status 1],
|
||||
[Item 2], [Value 2], [Status 2],
|
||||
[Item 3], [Value 3], [Status 3],
|
||||
)
|
||||
|
||||
== Conclusion
|
||||
|
||||
#lorem(40)
|
||||
|
||||
= References
|
||||
|
||||
#let reference(title, author, year) = [
|
||||
#h(1.5em) #author (#year). #title.
|
||||
]
|
||||
|
||||
#reference("Typst: A New Markup-Based Typesetting System", "Typst Team", 2023)
|
||||
294
Toolbox/docs/examples/workflow-demo.sh
Executable file
294
Toolbox/docs/examples/workflow-demo.sh
Executable file
@@ -0,0 +1,294 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# workflow-demo.sh - Demonstration script for common documentation workflows
|
||||
# Shows how to use the container with various example files
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Configuration
|
||||
IMAGE_NAME="tsysdevstack-toolboxes-docs"
|
||||
EXAMPLES_DIR="examples"
|
||||
OUTPUT_DIR="output/demo"
|
||||
|
||||
# Colors for output
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m' # No Color
|
||||
|
||||
# Function to print colored output
|
||||
print_status() {
|
||||
echo -e "${BLUE}[INFO]${NC} $1"
|
||||
}
|
||||
|
||||
print_success() {
|
||||
echo -e "${GREEN}[SUCCESS]${NC} $1"
|
||||
}
|
||||
|
||||
print_warning() {
|
||||
echo -e "${YELLOW}[WARNING]${NC} $1"
|
||||
}
|
||||
|
||||
print_error() {
|
||||
echo -e "${RED}[ERROR]${NC} $1"
|
||||
}
|
||||
|
||||
# Function to check if container exists
|
||||
check_container() {
|
||||
if ! docker images | grep -q "$IMAGE_NAME"; then
|
||||
print_error "Container image '$IMAGE_NAME' not found. Please build it first:"
|
||||
echo " ./output/build.sh"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to create output directory
|
||||
setup_output() {
|
||||
mkdir -p "$OUTPUT_DIR"
|
||||
print_status "Created output directory: $OUTPUT_DIR"
|
||||
}
|
||||
|
||||
# Function to demonstrate resume generation
|
||||
demo_resume() {
|
||||
print_status "📄 Demonstrating resume generation..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
pandoc /home/tsysdevstack/examples/resume-sample.md \
|
||||
-o /home/tsysdevstack/output/resume.pdf \
|
||||
--pdf-engine=xelatex; then
|
||||
print_success "Resume generated: $OUTPUT_DIR/resume.pdf"
|
||||
else
|
||||
print_error "Failed to generate resume"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate project documentation
|
||||
demo_project_docs() {
|
||||
print_status "📚 Demonstrating project documentation..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
pandoc /home/tsysdevstack/examples/project-plan.md \
|
||||
-o /home/tsysdevstack/output/project-plan.html \
|
||||
--standalone; then
|
||||
print_success "Project documentation generated: $OUTPUT_DIR/project-plan.html"
|
||||
else
|
||||
print_error "Failed to generate project documentation"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate mdbook
|
||||
demo_mdbook() {
|
||||
print_status "📖 Demonstrating mdbook generation..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
bash -c "cd /home/tsysdevstack/examples/mdbook-sample && mdbook build -d /home/tsysdevstack/output/mdbook-demo"; then
|
||||
print_success "mdbook generated: $OUTPUT_DIR/mdbook-demo/"
|
||||
else
|
||||
print_error "Failed to generate mdbook"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate typst
|
||||
demo_typst() {
|
||||
print_status "🎨 Demonstrating typst compilation..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
typst compile /home/tsysdevstack/examples/sample-typst.typ \
|
||||
/home/tsysdevstack/output/typst-demo.pdf; then
|
||||
print_success "Typst document generated: $OUTPUT_DIR/typst-demo.pdf"
|
||||
else
|
||||
print_error "Failed to compile typst document"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate presentation
|
||||
demo_presentation() {
|
||||
print_status "🎯 Demonstrating presentation generation..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
bash -c "npx --package @marp-team/marp-cli marp /home/tsysdevstack/examples/sample-presentation.md -o /home/tsysdevstack/output/presentation.pdf"; then
|
||||
print_success "Presentation generated: $OUTPUT_DIR/presentation.pdf"
|
||||
else
|
||||
print_error "Failed to generate presentation"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate quarto
|
||||
demo_quarto() {
|
||||
print_status "🔬 Demonstrating quarto rendering..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
quarto render /home/tsysdevstack/examples/sample-report.qmd \
|
||||
--output /home/tsysdevstack/output/quarto-report.html; then
|
||||
print_success "Quarto report generated: $OUTPUT_DIR/quarto-report.html"
|
||||
else
|
||||
print_error "Failed to render quarto report"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate Joplin note conversion
|
||||
demo_joplin() {
|
||||
print_status "📝 Demonstrating Joplin note conversion..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
pandoc /home/tsysdevstack/examples/joplin-note-sample.md \
|
||||
-o /home/tsysdevstack/output/joplin-note.pdf \
|
||||
--pdf-engine=xelatex; then
|
||||
print_success "Joplin note converted: $OUTPUT_DIR/joplin-note.pdf"
|
||||
else
|
||||
print_error "Failed to convert Joplin note"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to demonstrate bibliography management
|
||||
demo_bibliography() {
|
||||
print_status "📚 Demonstrating bibliography management..."
|
||||
|
||||
if docker run --rm \
|
||||
-v "$(pwd)/$EXAMPLES_DIR:/home/tsysdevstack/examples:ro" \
|
||||
-v "$(pwd)/$OUTPUT_DIR:/home/tsysdevstack/output" \
|
||||
"$IMAGE_NAME" \
|
||||
bibtool -s /home/tsysdevstack/examples/sample-bibliography.bib > "$OUTPUT_DIR/cleaned-bibliography.bib"; then
|
||||
print_success "Bibliography processed: $OUTPUT_DIR/cleaned-bibliography.bib"
|
||||
else
|
||||
print_error "Failed to process bibliography"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to show generated files
|
||||
show_results() {
|
||||
print_status "📋 Generated files:"
|
||||
if [[ -d "$OUTPUT_DIR" ]]; then
|
||||
ls -la "$OUTPUT_DIR/" || true
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to print usage
|
||||
print_usage() {
|
||||
echo "Usage: $0 [OPTIONS] [WORKFLOW...]"
|
||||
echo ""
|
||||
echo "Demonstration script for documentation workflows."
|
||||
echo ""
|
||||
echo "Options:"
|
||||
echo " --help, -h Show this help message"
|
||||
echo " --all Run all demonstrations (default)"
|
||||
echo " --clean Clean output directory before running"
|
||||
echo ""
|
||||
echo "Available workflows:"
|
||||
echo " resume Generate resume from markdown"
|
||||
echo " project Generate project documentation"
|
||||
echo " mdbook Generate mdbook documentation"
|
||||
echo " typst Compile typst document"
|
||||
echo " presentation Generate presentation"
|
||||
echo " quarto Render quarto report"
|
||||
echo " joplin Convert Joplin note"
|
||||
echo " bibliography Process bibliography"
|
||||
echo ""
|
||||
echo "Examples:"
|
||||
echo " $0 --all # Run all demonstrations"
|
||||
echo " $0 resume presentation # Run specific workflows"
|
||||
echo " $0 --clean mdbook # Clean and run mdbook demo"
|
||||
}
|
||||
|
||||
# Main execution
|
||||
main() {
|
||||
local run_all=true
|
||||
local clean_output=false
|
||||
local workflows=()
|
||||
|
||||
# Parse command line arguments
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case $1 in
|
||||
--help|-h)
|
||||
print_usage
|
||||
exit 0
|
||||
;;
|
||||
--all)
|
||||
run_all=true
|
||||
shift
|
||||
;;
|
||||
--clean)
|
||||
clean_output=true
|
||||
shift
|
||||
;;
|
||||
resume|project|mdbook|typst|presentation|quarto|joplin|bibliography)
|
||||
run_all=false
|
||||
workflows+=("$1")
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
print_error "Unknown option: $1"
|
||||
print_usage
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
print_status "🚀 Starting documentation workflow demonstrations..."
|
||||
|
||||
# Check prerequisites
|
||||
check_container
|
||||
|
||||
# Setup
|
||||
if [[ "$clean_output" == true ]]; then
|
||||
rm -rf "$OUTPUT_DIR"
|
||||
print_status "Cleaned output directory"
|
||||
fi
|
||||
setup_output
|
||||
|
||||
# Run workflows
|
||||
if [[ "$run_all" == true ]]; then
|
||||
demo_resume
|
||||
demo_project_docs
|
||||
demo_mdbook
|
||||
demo_typst
|
||||
demo_presentation
|
||||
demo_quarto
|
||||
demo_joplin
|
||||
demo_bibliography
|
||||
else
|
||||
for workflow in "${workflows[@]}"; do
|
||||
case $workflow in
|
||||
resume) demo_resume ;;
|
||||
project) demo_project_docs ;;
|
||||
mdbook) demo_mdbook ;;
|
||||
typst) demo_typst ;;
|
||||
presentation) demo_presentation ;;
|
||||
quarto) demo_quarto ;;
|
||||
joplin) demo_joplin ;;
|
||||
bibliography) demo_bibliography ;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
# Show results
|
||||
show_results
|
||||
|
||||
print_success "✅ All demonstrations completed successfully!"
|
||||
print_status "Check the '$OUTPUT_DIR' directory for generated files."
|
||||
}
|
||||
|
||||
# Run main function with all arguments
|
||||
main "$@"
|
||||
Reference in New Issue
Block a user