dev: add docker compose for caddy, map 8081; add story placeholders (.md); update SRI via script; local compose run instructions
This commit is contained in:
parent
bd7aca54ee
commit
7e06e335a9
|
@ -0,0 +1,13 @@
|
|||
version: "3.9"
|
||||
|
||||
services:
|
||||
resume:
|
||||
image: caddy:2-alpine
|
||||
container_name: resume-caddy
|
||||
working_dir: /srv
|
||||
volumes:
|
||||
- ./docker/resume:/srv:ro
|
||||
ports:
|
||||
- "8081:8080"
|
||||
command: ["caddy", "run", "--config", "/srv/Caddyfile.local"]
|
||||
restart: unless-stopped
|
|
@ -10,7 +10,7 @@
|
|||
<link rel="stylesheet" href="tool-styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<link rel="stylesheet" href="csv-tool-fix.css?v=2" integrity="sha256-5oTxos9Qxwhor3qIwHSM12YyIZi5E+tHuFdYER0hXoI=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
<script src="../utils.js" integrity="sha256-ryQsJ+aghKKD/CeXgx8jtsnZT3Epp3EjIw8RyHIq544="></script>
|
||||
<style>
|
||||
/* Additional inline styles to fix layout */
|
||||
|
|
|
@ -102,22 +102,22 @@ document.addEventListener('DOMContentLoaded', function() {
|
|||
const link = document.getElementById('nav-viperwire');
|
||||
if (link) link.classList.add('active');
|
||||
} else if (currentPath.includes('fawe-plotsquared.html')) {
|
||||
const link = document.getElementById('nav-fawe');
|
||||
const link = document.getElementById('nav-faweplotsquared');
|
||||
if (link) link.classList.add('active');
|
||||
} else if (currentPath.includes('healthcare-platform.html')) {
|
||||
const link = document.getElementById('nav-healthcare');
|
||||
const link = document.getElementById('nav-healthcareplatform');
|
||||
if (link) link.classList.add('active');
|
||||
} else if (currentPath.includes('wordpress-security.html')) {
|
||||
const link = document.getElementById('nav-wordpress');
|
||||
const link = document.getElementById('nav-wordpresssecurity');
|
||||
if (link) link.classList.add('active');
|
||||
} else if (currentPath.includes('airport-dns.html')) {
|
||||
const link = document.getElementById('nav-airport');
|
||||
const link = document.getElementById('nav-airportdns');
|
||||
if (link) link.classList.add('active');
|
||||
} else if (currentPath.includes('nitric-leadership.html')) {
|
||||
const link = document.getElementById('nav-nitric');
|
||||
const link = document.getElementById('nav-nitricleadership');
|
||||
if (link) link.classList.add('active');
|
||||
} else if (currentPath.includes('open-source-success.html')) {
|
||||
const link = document.getElementById('nav-opensource');
|
||||
const link = document.getElementById('nav-opensourcesuccess');
|
||||
if (link) link.classList.add('active');
|
||||
}
|
||||
} else if (currentPath.includes('/one-pager-tools/')) {
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||||
<link rel="stylesheet" href="styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<script src="theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||||
<link rel="stylesheet" href="styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<script src="theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,62 @@
|
|||
// Load same-named .md and render into .story-content using Marked. No fallbacks.
|
||||
(function () {
|
||||
function getMarkdownPath() {
|
||||
var parts = (window.location.pathname || '').split('/');
|
||||
var last = parts[parts.length - 1] || '';
|
||||
if (!last) return '';
|
||||
return last.replace(/\.html?$/i, '.md');
|
||||
}
|
||||
|
||||
function loadMarked(callback) {
|
||||
if (window.marked && typeof window.marked.parse === 'function') {
|
||||
callback();
|
||||
return;
|
||||
}
|
||||
var script = document.createElement('script');
|
||||
script.src = 'https://cdn.jsdelivr.net/npm/marked/marked.min.js';
|
||||
script.async = true;
|
||||
script.onload = callback;
|
||||
document.head.appendChild(script);
|
||||
}
|
||||
|
||||
function renderMarkdown(container, text) {
|
||||
if (!window.marked || typeof window.marked.parse !== 'function') {
|
||||
container.innerHTML = '';
|
||||
return;
|
||||
}
|
||||
try {
|
||||
if (typeof window.marked.setOptions === 'function') {
|
||||
window.marked.setOptions({ gfm: true, breaks: true });
|
||||
}
|
||||
container.innerHTML = window.marked.parse(text);
|
||||
} catch (_) {
|
||||
container.innerHTML = '';
|
||||
}
|
||||
}
|
||||
|
||||
function init() {
|
||||
var container = document.querySelector('.story-content');
|
||||
if (!container) return;
|
||||
|
||||
// No fallback: clear immediately
|
||||
container.innerHTML = '';
|
||||
|
||||
var mdPath = getMarkdownPath();
|
||||
if (!mdPath) return;
|
||||
|
||||
loadMarked(function () {
|
||||
fetch(mdPath, { cache: 'no-cache' })
|
||||
.then(function (res) { if (!res.ok) throw new Error('md'); return res.text(); })
|
||||
.then(function (text) { renderMarkdown(container, text); })
|
||||
.catch(function () { container.innerHTML = ''; });
|
||||
});
|
||||
}
|
||||
|
||||
if (document.readyState === 'loading') {
|
||||
document.addEventListener('DOMContentLoaded', init);
|
||||
} else {
|
||||
init();
|
||||
}
|
||||
})();
|
||||
|
||||
|
|
@ -10,7 +10,7 @@
|
|||
<link rel="stylesheet" href="tool-styles.css?v=2" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<link rel="stylesheet" href="csv-tool-fix.css?v=2" integrity="sha256-5oTxos9Qxwhor3qIwHSM12YyIZi5E+tHuFdYER0hXoI=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
<script src="../utils.js" integrity="sha256-ryQsJ+aghKKD/CeXgx8jtsnZT3Epp3EjIw8RyHIq544="></script>
|
||||
<style>
|
||||
/* Additional inline styles to fix layout */
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<link rel="stylesheet" href="tool-styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<script src="../utils.js" integrity="sha256-ryQsJ+aghKKD/CeXgx8jtsnZT3Epp3EjIw8RyHIq544=" crossorigin="anonymous"></script>
|
||||
<!-- Add tool-specific scripts here -->
|
||||
</head>
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
<link rel="stylesheet" href="tool-styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../utils.js" integrity="sha256-ryQsJ+aghKKD/CeXgx8jtsnZT3Epp3EjIw8RyHIq544="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
<script src="tool-example.js" defer></script>
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# airport dns
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# app development
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# athion turnaround
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# fawe plotsquared
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# healthcare platform
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# home infrastructure
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# motherUoard repair
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# nitric leadership
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -9,7 +9,8 @@
|
|||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# nuclear dns
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# open source success
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# showerloop
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -9,7 +9,8 @@
|
|||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# viperwire
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# weU design java
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,8 +8,9 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
<script src="../markdown-loader.js" integrity="sha256-4+erbuMKlaalnlqc0+5d+X4Bpr1CZ7W3dUCsyA15spE="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# wordpress security
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
<link rel="icon" type="image/x-icon" href="../favicon.ico">
|
||||
<link rel="stylesheet" href="../styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=" crossorigin="anonymous">
|
||||
<script src="../theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E=" crossorigin="anonymous"></script>
|
||||
<script src="../includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA=" crossorigin="anonymous"></script>
|
||||
<link rel="stylesheet" href="stories.css" integrity="sha256-O+OMb48leSKvekhMTDUK1y6+WG9x33kA0eDw00wUwkY=">
|
||||
</head>
|
||||
<body>
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
# youtuUe game dev
|
||||
|
||||
> Draft placeholder. Content to be written.
|
||||
|
||||
- Summary: TBD
|
||||
- Key outcomes: TBD
|
||||
- Tech stack: TBD
|
||||
- Challenges: TBD
|
||||
- Results: TBD
|
||||
|
|
@ -8,7 +8,7 @@
|
|||
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
||||
<link rel="stylesheet" href="styles.css" integrity="sha256-Y+6RTuKMnPfNa1TjCQCcFhxwo0G+xNy7t1MaAvn5SuU=">
|
||||
<script src="theme.js" integrity="sha256-+dDNTo7WAOmn2YC875+vn9oH4UkMwlVOGlARp2uq3A4="></script>
|
||||
<script src="includes.js" integrity="sha256-q9ac7XWqnIASoBRfs4I4hpSMlnxGARofcEw0cSFfn/E="></script>
|
||||
<script src="includes.js" integrity="sha256-0VPPSi+jVc1DuyZaSYTq+fnpIfv7ft+ZDenYE6pDPqA="></script>
|
||||
</head>
|
||||
<body>
|
||||
<!-- Header Include -->
|
||||
|
|
Loading…
Reference in New Issue