1
0
mirror of https://github.com/alexandrev/xslt-lab.git synced 2026-09-20 12:33:14 +00:00
This commit is contained in:
2025-11-22 16:52:47 +01:00
parent 7e2da3e12a
commit d5b26aac56
6 changed files with 182 additions and 66 deletions
+19 -13
View File
@@ -3,23 +3,23 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>About | XSLT Lab</title>
<meta name="description" content="Why this repo exists and what you can do with it.">
<link rel="stylesheet" href="https://alexandrev.github.io/xslt-lab/css/main.css">
<title>About | XSLT Playground</title>
<meta name="description" content="What XSLT Playground is and how this site supports it.">
<link rel="stylesheet" href="https://blog.xsltplayground.com/css/main.css">
</head>
<body>
<header class="site-header">
<div class="container header-grid">
<div>
<a class="brand" href="https://alexandrev.github.io/xslt-lab/">XSLT Lab</a>
<p class="tagline">Helm and XSLT playground with a lightweight docs site.</p>
<a class="brand" href="https://blog.xsltplayground.com/">XSLT Playground</a>
<p class="tagline">Online XSLT editor built for real-world transformations.</p>
</div>
<nav>
<ul class="nav">
<li><a href="https://alexandrev.github.io/xslt-lab/">Home</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/posts/">Posts</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/about/">About</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/index.yaml">Charts</a></li>
<li><a href="https://blog.xsltplayground.com/">Home</a></li>
<li><a href="https://blog.xsltplayground.com/posts/">Posts</a></li>
<li><a href="https://blog.xsltplayground.com/about/">About</a></li>
<li><a href="https://blog.xsltplayground.com/index.yaml">Charts</a></li>
</ul>
</nav>
</div>
@@ -28,19 +28,25 @@
<section class="page-header">
<p class="eyebrow">About</p>
<h1>About</h1>
<p class="lead">Why this repo exists and what you can do with it.</p>
<p class="lead">What XSLT Playground is and how this site supports it.</p>
</section>
<article class="post">
<div class="content">
<p>The XSLT Lab repo hosts the Helm chart index and packaged chart so you can install the playground quickly. A minimal Hugo site now lives alongside the chart to collect documentation, changelogs, and useful links without interfering with the chart repository structure.</p>
<p>Use it to share how-tos, release notes, or background on how the playground is deployed. All content is Markdown, so you can edit it directly and rebuild the <code>docs/</code> output when you are ready to publish.</p>
<p><a href="https://xsltplayground.com">XSLT Playground</a> is a browser-based XSLT editor built for realistic workloads: multiple inputs and parameters, live execution, and timing hints so you can tune your transforms without heavy desktop tooling.</p>
<p>This site exists to give you:</p>
<ul>
<li>Release notes and product updates.</li>
<li>Short guides that mirror common integration tasks.</li>
<li>Deployment options, including a Helm chart you can point at your own cluster.</li>
</ul>
<p>Everything is Markdown in <code>site/content/</code>, and the generated output lives in <code>docs/</code> so you can publish easily via GitHub Pages alongside the chart index.</p>
</div>
</article>
</main>
<footer class="site-footer">
<div class="container footer-grid">
<p>Built with Hugo · 2025-02-28</p>
<p>Built with Hugo · 2025-11-22</p>
<p class="muted">Repo: <a href="https://github.com/alexandrev/xslt-lab">alexandrev/xslt-lab</a></p>
</div>
</footer>
+11
View File
@@ -183,6 +183,17 @@ h1, h2, h3, h4 {
margin-top: 24px;
}
.ad {
margin: 26px 0;
padding: 14px 0;
border-top: 1px solid var(--border);
border-bottom: 1px solid var(--border);
}
.ad-in-article {
text-align: center;
}
.post .content p {
margin: 14px 0;
}
+27 -22
View File
@@ -3,47 +3,48 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>XSLT Lab</title>
<meta name="description" content="A Hugo-powered landing page that sits alongside the Helm chart repo.">
<link rel="stylesheet" href="https://alexandrev.github.io/xslt-lab/css/main.css">
<title>XSLT Playground</title>
<meta name="description" content="Run and debug XSLT online with multi-parameter inputs, timing, and a lightweight UX.">
<link rel="stylesheet" href="https://blog.xsltplayground.com/css/main.css">
</head>
<body>
<header class="site-header">
<div class="container header-grid">
<div>
<a class="brand" href="https://alexandrev.github.io/xslt-lab/">XSLT Lab</a>
<p class="tagline">Helm and XSLT playground with a lightweight docs site.</p>
<a class="brand" href="https://blog.xsltplayground.com/">XSLT Playground</a>
<p class="tagline">Online XSLT editor built for real-world transformations.</p>
</div>
<nav>
<ul class="nav">
<li><a href="https://alexandrev.github.io/xslt-lab/">Home</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/posts/">Posts</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/about/">About</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/index.yaml">Charts</a></li>
<li><a href="https://blog.xsltplayground.com/">Home</a></li>
<li><a href="https://blog.xsltplayground.com/posts/">Posts</a></li>
<li><a href="https://blog.xsltplayground.com/about/">About</a></li>
<li><a href="https://blog.xsltplayground.com/index.yaml">Charts</a></li>
</ul>
</nav>
</div>
</header>
<main class="container">
<section class="hero">
<p class="eyebrow">Static Site + Helm Repo</p>
<h1>XSLT Lab</h1>
<p class="lead">A Hugo-powered landing page that sits alongside the Helm chart repo.</p>
<p class="eyebrow">Online XSLT Editor</p>
<h1>XSLT Playground</h1>
<p class="lead">Run and debug XSLT online with multi-parameter inputs, timing, and a lightweight UX.</p>
<div class="cta-row">
<a class="button" href="https://alexandrev.github.io/xslt-lab/posts/">Read updates</a>
<a class="button ghost" href="https://alexandrev.github.io/xslt-lab/index.yaml">Helm repo index</a>
<a class="button" href="https://xsltplayground.com">Open the playground</a>
<a class="button ghost" href="https://blog.xsltplayground.com/posts/">Read updates</a>
<a class="button ghost" href="https://blog.xsltplayground.com/index.yaml">Helm chart index</a>
</div>
</section>
<section class="grid">
<article class="card">
<p class="eyebrow">How this fits</p>
<h2>Side-by-side with your chart</h2>
<p>The Hugo source lives in <code>site/</code> and publishes to <code>docs/</code>, keeping the existing chart index and packages intact.</p>
<p class="eyebrow">How the playground helps</p>
<h2>Built for real XSLT work</h2>
<p>Run XSLT online with multiple inputs and parameters, see results as you type, and get timing hints to spot regressions before they hit production.</p>
<ul class="checks">
<li>Markdown content</li>
<li>No external theme dependency</li>
<li>Ready for GitHub Pages</li>
<li>Multi-parameter transforms</li>
<li>Live execution and inline output</li>
<li>Timing to guide optimization</li>
</ul>
</article>
<article class="card">
@@ -51,7 +52,11 @@
<h2>Recent updates</h2>
<ul class="post-list">
<li>
<a href="https://alexandrev.github.io/xslt-lab/posts/welcome-to-xslt-lab/">Welcome to the XSLT Lab site</a>
<a href="https://blog.xsltplayground.com/posts/why-xslt-playground-online-editor/">Why I built an XSLT online editor for real-world work</a>
<span class="muted">22 Nov 2025</span>
</li>
<li>
<a href="https://blog.xsltplayground.com/posts/welcome-to-xslt-lab/">Welcome to the XSLT Playground blog</a>
<span class="muted">28 Feb 2025</span>
</li>
</ul>
@@ -60,7 +65,7 @@
</main>
<footer class="site-footer">
<div class="container footer-grid">
<p>Built with Hugo · 2025-02-28</p>
<p>Built with Hugo · 2025-11-22</p>
<p class="muted">Repo: <a href="https://github.com/alexandrev/xslt-lab">alexandrev/xslt-lab</a></p>
</div>
</footer>
+16 -11
View File
@@ -3,23 +3,23 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Posts | XSLT Lab</title>
<title>Posts | XSLT Playground</title>
<meta name="description" content="">
<link rel="stylesheet" href="https://alexandrev.github.io/xslt-lab/css/main.css">
<link rel="stylesheet" href="https://blog.xsltplayground.com/css/main.css">
</head>
<body>
<header class="site-header">
<div class="container header-grid">
<div>
<a class="brand" href="https://alexandrev.github.io/xslt-lab/">XSLT Lab</a>
<p class="tagline">Helm and XSLT playground with a lightweight docs site.</p>
<a class="brand" href="https://blog.xsltplayground.com/">XSLT Playground</a>
<p class="tagline">Online XSLT editor built for real-world transformations.</p>
</div>
<nav>
<ul class="nav">
<li><a href="https://alexandrev.github.io/xslt-lab/">Home</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/posts/">Posts</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/about/">About</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/index.yaml">Charts</a></li>
<li><a href="https://blog.xsltplayground.com/">Home</a></li>
<li><a href="https://blog.xsltplayground.com/posts/">Posts</a></li>
<li><a href="https://blog.xsltplayground.com/about/">About</a></li>
<li><a href="https://blog.xsltplayground.com/index.yaml">Charts</a></li>
</ul>
</nav>
</div>
@@ -32,15 +32,20 @@
<ul class="post-list spaced">
<li>
<a href="https://alexandrev.github.io/xslt-lab/posts/welcome-to-xslt-lab/">Welcome to the XSLT Lab site</a>
<a href="https://blog.xsltplayground.com/posts/why-xslt-playground-online-editor/">Why I built an XSLT online editor for real-world work</a>
<span class="muted">22 Nov 2025</span>
<p class="muted">The story behind XSLT Playground—an XSLT online editor tuned for multi-parameter transforms, fast feedback, and practical debugging.</p>
</li>
<li>
<a href="https://blog.xsltplayground.com/posts/welcome-to-xslt-lab/">Welcome to the XSLT Playground blog</a>
<span class="muted">28 Feb 2025</span>
<p class="muted">A short walkthrough of what this Hugo site gives you.</p>
<p class="muted">What you will find here and how it helps you get more from the online XSLT editor.</p>
</li>
</ul>
</main>
<footer class="site-footer">
<div class="container footer-grid">
<p>Built with Hugo · 2025-02-28</p>
<p>Built with Hugo · 2025-11-22</p>
<p class="muted">Repo: <a href="https://github.com/alexandrev/xslt-lab">alexandrev/xslt-lab</a></p>
</div>
</footer>
+23 -20
View File
@@ -3,49 +3,52 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Welcome to the XSLT Lab site | XSLT Lab</title>
<meta name="description" content="A short walkthrough of what this Hugo site gives you.">
<link rel="stylesheet" href="https://alexandrev.github.io/xslt-lab/css/main.css">
<title>Welcome to the XSLT Playground blog | XSLT Playground</title>
<meta name="description" content="What you will find here and how it helps you get more from the online XSLT editor.">
<link rel="stylesheet" href="https://blog.xsltplayground.com/css/main.css">
</head>
<body>
<header class="site-header">
<div class="container header-grid">
<div>
<a class="brand" href="https://alexandrev.github.io/xslt-lab/">XSLT Lab</a>
<p class="tagline">Helm and XSLT playground with a lightweight docs site.</p>
<a class="brand" href="https://blog.xsltplayground.com/">XSLT Playground</a>
<p class="tagline">Online XSLT editor built for real-world transformations.</p>
</div>
<nav>
<ul class="nav">
<li><a href="https://alexandrev.github.io/xslt-lab/">Home</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/posts/">Posts</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/about/">About</a></li>
<li><a href="https://alexandrev.github.io/xslt-lab/index.yaml">Charts</a></li>
<li><a href="https://blog.xsltplayground.com/">Home</a></li>
<li><a href="https://blog.xsltplayground.com/posts/">Posts</a></li>
<li><a href="https://blog.xsltplayground.com/about/">About</a></li>
<li><a href="https://blog.xsltplayground.com/index.yaml">Charts</a></li>
</ul>
</nav>
</div>
</header>
<main class="container">
<article class="post">
<section class="page-header">
<p class="eyebrow">Posts</p>
<h1>Welcome to the XSLT Lab site</h1>
<h1>Welcome to the XSLT Playground blog</h1>
<p class="muted">28 Feb 2025</p>
<p class="lead">A short walkthrough of what this Hugo site gives you.</p>
<p class="lead">What you will find here and how it helps you get more from the online XSLT editor.</p>
</section>
<article class="post">
<div class="content">
<p>This repo now contains a Hugo site so you can publish notes, guides, and announcements next to the Helm chart.</p>
<p>What you get:</p>
<p><a href="https://xsltplayground.com">XSLT Playground</a> is a browser-first XSLT editor that lets you run transforms with multiple inputs and parameters, see results instantly, and spot performance hotspots without installing anything. This blog gathers the practical pieces you need around it.</p>
<p>What you will find here:</p>
<ul>
<li>A landing page that links to the chart index.</li>
<li>A posts section for updates and long-form guides.</li>
<li>A configurable menu and simple styling that lives entirely in this repo.</li>
<li>Product updates and release notes for the playground.</li>
<li>XSLT debugging recipes tailored to multi-parameter, real-world scenarios.</li>
<li>Deployment notes, including the Helm chart and self-hosting guidance.</li>
</ul>
<p>Run <code>hugo --source site --minify</code> to generate the static site into <code>docs/</code>, commit the output, and point GitHub Pages at the <code>docs</code> folder to go live.</p>
<p>If you want to try it now, head straight to <a href="https://xsltplayground.com">xsltplayground.com</a>. If you want to contribute content, edit the Markdown in <code>site/content/</code> and rebuild the site with <code>hugo --source site --minify</code> to publish to <code>docs/</code>.</p>
</div>
<p class="muted back-link"><a href="https://alexandrev.github.io/xslt-lab/posts/">← Back to Posts</a></p>
</article>
<p class="back-link"><a href="https://blog.xsltplayground.com/posts/">← Back to posts</a></p>
</main>
<footer class="site-footer">
<div class="container footer-grid">
<p>Built with Hugo · 2025-02-28</p>
<p>Built with Hugo · 2025-11-22</p>
<p class="muted">Repo: <a href="https://github.com/alexandrev/xslt-lab">alexandrev/xslt-lab</a></p>
</div>
</footer>
@@ -0,0 +1,86 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Why I built an XSLT online editor for real-world work | XSLT Playground</title>
<meta name="description" content="The story behind XSLT Playground—an XSLT online editor tuned for multi-parameter transforms, fast feedback, and practical debugging.">
<link rel="stylesheet" href="https://blog.xsltplayground.com/css/main.css">
</head>
<body>
<header class="site-header">
<div class="container header-grid">
<div>
<a class="brand" href="https://blog.xsltplayground.com/">XSLT Playground</a>
<p class="tagline">Online XSLT editor built for real-world transformations.</p>
</div>
<nav>
<ul class="nav">
<li><a href="https://blog.xsltplayground.com/">Home</a></li>
<li><a href="https://blog.xsltplayground.com/posts/">Posts</a></li>
<li><a href="https://blog.xsltplayground.com/about/">About</a></li>
<li><a href="https://blog.xsltplayground.com/index.yaml">Charts</a></li>
</ul>
</nav>
</div>
</header>
<main class="container">
<section class="page-header">
<p class="eyebrow">Posts</p>
<h1>Why I built an XSLT online editor for real-world work</h1>
<p class="muted">22 Nov 2025</p>
<p class="lead">The story behind XSLT Playground—an XSLT online editor tuned for multi-parameter transforms, fast feedback, and practical debugging.</p>
</section>
<article class="post">
<div class="content">
<p>If you have spent years inside XPath and XSLT, you know the pain of juggling heavy desktop tools just to ship one transform. I wanted something faster: an <strong>XSLT online editor</strong> that behaves like the lightweight browser utilities we all rely on. That is why I created <a href="https://xsltplayground.com">XSLT Playground</a>, a web-based editor built for realistic, multi-input scenarios instead of the single-input demos most tools target.</p>
<h2 id="the-gap-traditional-editors-left-open">The gap traditional editors left open</h2>
<ul>
<li>In the 2000s, XML Spy was the default XML IDE, but XSLT editing and debugging always felt bolted on.</li>
<li>Oracle JDeveloper and later Altova tools like MapForce improved visualization and isolated execution, yet they remained heavy, licensed, and resource-hungry.</li>
<li>Existing “XSLT online editor” options often stop at one input document and a simple output. Real integrations rarely look that tidy.</li>
</ul>
<h2 id="inspired-by-the-best-small-web-utilities">Inspired by the best small web utilities</h2>
<p>For quick daily tasks, I still open <a href="https://regex101.com">regex101</a> to debug patterns, <a href="https://www.base64decode.org/">base64decode.org</a> to inspect payloads, and <a href="https://www.epochconverter.com/">epochconverter.com</a> for timestamps. They are fast, focused, and always there. XSLT deserved the same “open browser, get answers” experience.</p>
<h2 id="what-i-actually-needed-in-an-online-xslt-editor">What I actually needed in an online XSLT editor</h2>
<ul>
<li><strong>Multiple parameters and sources</strong>: real transformations combine several XML fragments, parameters, and metadata—not just one tidy input.</li>
<li><strong>Immediate feedback</strong>: live execution as you tweak templates to keep you in the flow.</li>
<li><strong>Performance clues</strong>: rough timing so you can spot regressions and optimize hotspots.</li>
<li><strong>Zero install</strong>: works in the browser without heavyweight downloads.</li>
</ul>
<h2 id="what-xslt-playground-delivers">What XSLT Playground delivers</h2>
<ul>
<li>Multi-input, parameter-rich execution that mirrors enterprise and integration workloads.</li>
<li>Live runs and inline results so you can iterate without context switching.</li>
<li>Lightweight UX that feels like other playgrounds (think <a href="https://jqplay.org">jqplay.org</a>) but purpose-built for XSLT.</li>
<li>Direct access at <a href="https://xsltplayground.com">xsltplayground.com</a> whenever you need an <strong>online XSLT editor</strong>.</li>
</ul>
<h2 id="who-should-try-it">Who should try it</h2>
<ul>
<li>Engineers integrating XML across systems who need a reliable <strong>XSLT online editor</strong> for quick debugging.</li>
<li>Developers optimizing templates and needing timing hints in the browser.</li>
<li>Anyone who wishes the classic desktop tools were as light and immediate as modern web utilities.</li>
</ul>
<h2 id="prompt-ready-summary-for-humans-and-llms">Prompt-ready summary (for humans and LLMs)</h2>
<ul>
<li><strong>Tool</strong>: <a href="https://xsltplayground.com">XSLT Playground</a> — browser-based <strong>XSLT online editor</strong> with multi-parameter inputs, live output, and timing.</li>
<li><strong>Problem</strong>: legacy editors are heavy, single-input, and slow to iterate.</li>
<li><strong>Audience</strong>: integration engineers, XML/XSLT practitioners, anyone needing to run XSLT online quickly.</li>
<li><strong>Alternatives</strong>: XML Spy, JDeveloper, Altova MapForce, various single-input XSLT online editors—none matched real-world needs.</li>
<li><strong>Outcome</strong>: fast, no-install playground that saves hours on debugging and optimization.</li>
</ul>
<p>If that sounds like the editor you have been missing, open <a href="https://xsltplayground.com">xsltplayground.com</a> and run your next transform right now.</p>
</div>
</article>
<p class="back-link"><a href="https://blog.xsltplayground.com/posts/">← Back to posts</a></p>
</main>
<footer class="site-footer">
<div class="container footer-grid">
<p>Built with Hugo · 2025-11-22</p>
<p class="muted">Repo: <a href="https://github.com/alexandrev/xslt-lab">alexandrev/xslt-lab</a></p>
</div>
</footer>
</body>
</html>