feat: built-out certificate page, /health route via Traefik

This commit is contained in:
artale 2026-06-12 09:57:49 +02:00
parent 716ab89a7d
commit cd4d4cd0e2
58 changed files with 373 additions and 244 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
import{c as t,Q as a,j as r,m as o}from"./chunks/framework.BPKcPtvA.js";const f=JSON.parse('{"title":"Certificate of Completion","description":"","frontmatter":{},"headers":[],"relativePath":"certificate.md","filePath":"certificate.md","lastUpdated":1780488246000}'),n={name:"certificate.md"};function s(i,e,c,_,d,l){return a(),r("div",null,[...e[0]||(e[0]=[o('<h1 id="certificate-of-completion" tabindex="-1">Certificate of Completion <a class="header-anchor" href="#certificate-of-completion" aria-label="Permalink to &quot;Certificate of Completion&quot;"></a></h1><p>This certifies that</p><p><strong>________________________________</strong></p><p>has completed the</p><h2 id="fdsa-agentic-engineering-course" tabindex="-1">FDSA Agentic Engineering Course <a class="header-anchor" href="#fdsa-agentic-engineering-course" aria-label="Permalink to &quot;FDSA Agentic Engineering Course&quot;"></a></h2><p><strong>65 lessons across 8 modules</strong><strong>13 hands-on labs with starter code and solutions</strong><strong>56 quiz questions across 7 module checkpoints</strong><strong>20 production-ready SKILL.md files in 7 kits</strong><strong>Capstone: production-grade multi-agent system</strong></p><hr><p><em>Curriculum: Agent Harness (M1-M3), Software Factory (M4), Extensible Software (M2+M5), Always-On Agents (M7), Agentic Access (M2+M5), Tokenomics (M6). Framework-agnostic across Claude Code, Pi Agent, OpenCode, Hermes, and OpenClaw.</em></p><p><em>Verify at: <a href="https://fdsa.agency/verify" target="_blank" rel="noreferrer">https://fdsa.agency/verify</a></em></p>',9)])])}const g=t(n,[["render",s]]);export{f as __pageData,g as default};

View File

@ -1 +0,0 @@
import{c as t,Q as a,j as r,m as o}from"./chunks/framework.BPKcPtvA.js";const f=JSON.parse('{"title":"Certificate of Completion","description":"","frontmatter":{},"headers":[],"relativePath":"certificate.md","filePath":"certificate.md","lastUpdated":1780488246000}'),n={name:"certificate.md"};function s(i,e,c,_,d,l){return a(),r("div",null,[...e[0]||(e[0]=[o("",9)])])}const g=t(n,[["render",s]]);export{f as __pageData,g as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"404.md":"BiCvjdaY","api-keys.md":"D2Kyj8T3","blog_index.md":"B5nL9faf","blog_posts_cascade-routing.md":"DvBM3TSf","blog_posts_choosing-security-level.md":"BYXRZEDN","blog_posts_mental-models.md":"BRY80gtq","blog_posts_repo-is-spec.md":"BxY1cXc_","blog_posts_security-ladder.md":"DQaqn6Yt","blog_posts_three-x-rule.md":"BHO6bhvz","blog_posts_verifier-pattern.md":"Gha_L_u5","blog_posts_vibe-vs-agentic.md":"7mduPfz1","blog_posts_what-is-an-agent.md":"BU2wUq_Y","blog_posts_why-multi-agent.md":"BVRIN2vH","buy.md":"qEifz7WE","certificate.md":"0V0n-TLl","checkout.md":"Ccj6L__h","checkout_cancel.md":"DwL5mulX","checkout_success.md":"CYTg6xhL","downloads.md":"BkgENRDR","free-preview.md":"C5BtRucn","getting-started.md":"Boo_V9xC","index.md":"BNS2TR1g","labs_index.md":"sAzXzfkI","labs_l1-first-agent.md":"BwU9yf-G","labs_l2-context.md":"BexGm8_s","labs_l2-multi-tool.md":"Bj3Mb-oj","labs_l3-verifier.md":"xilrGGap","labs_l3-whitelist-hook.md":"DJtbL66Y","labs_l4-agent-chain.md":"D89P8dwJ","labs_l4-multi-team.md":"DmSK8e2P","labs_l5-cicd.md":"Dz1Jl78z","labs_l5-observability.md":"BDpqVYjT","labs_l6-cost-optimization.md":"CabFK4GB","labs_l6-eval-harness.md":"CBwH6xOR","labs_l7-autoresearch.md":"BYlzPLYo","labs_l7-meta-agent.md":"iTswbOPg","modules_competitive-analysis.md":"BHMHacei","modules_curriculum.md":"D7UeKRfo","modules_debate.md":"DWctKMlA","modules_feynman.md":"DBw5sPBP","modules_field-manual.md":"hmt_NLf1","modules_m1-foundations.md":"DHFyTzWj","modules_m2-architecture.md":"DVowtmf9","modules_m3-safety.md":"RiQQ_HWX","modules_m4-orchestration.md":"DFLcAKBv","modules_m5-production.md":"DTkLIrwQ","modules_m6-economics.md":"HihVEOPb","modules_m7-advanced.md":"B8r6DZG5","modules_m8-capstone.md":"CTcrNOvN","modules_non-technical.md":"BnvuUCRo","modules_reference-stack.md":"D9FXitvn","modules_software-factory.md":"C5Yf8Zwe","modules_tool-reference.md":"B40mlgZJ","public_certificate_template.md":"Cg1kPB1b","resources.md":"DcUu1NrK","skills.md":"BX3RBeCK","troubleshooting.md":"B6difx2I","verify.md":"Cl5ZMWNd"}
{"404.md":"BiCvjdaY","api-keys.md":"D2Kyj8T3","blog_index.md":"B5nL9faf","blog_posts_cascade-routing.md":"DvBM3TSf","blog_posts_choosing-security-level.md":"BYXRZEDN","blog_posts_mental-models.md":"BRY80gtq","blog_posts_repo-is-spec.md":"BxY1cXc_","blog_posts_security-ladder.md":"DQaqn6Yt","blog_posts_three-x-rule.md":"BHO6bhvz","blog_posts_verifier-pattern.md":"Gha_L_u5","blog_posts_vibe-vs-agentic.md":"7mduPfz1","blog_posts_what-is-an-agent.md":"BU2wUq_Y","blog_posts_why-multi-agent.md":"BVRIN2vH","buy.md":"qEifz7WE","certificate.md":"CqjbFJYQ","checkout.md":"Ccj6L__h","checkout_cancel.md":"DwL5mulX","checkout_success.md":"CYTg6xhL","downloads.md":"CEHJXSp0","free-preview.md":"C5BtRucn","getting-started.md":"Boo_V9xC","index.md":"BNS2TR1g","labs_index.md":"sAzXzfkI","labs_l1-first-agent.md":"BwU9yf-G","labs_l2-context.md":"BexGm8_s","labs_l2-multi-tool.md":"Bj3Mb-oj","labs_l3-verifier.md":"xilrGGap","labs_l3-whitelist-hook.md":"DJtbL66Y","labs_l4-agent-chain.md":"D89P8dwJ","labs_l4-multi-team.md":"DmSK8e2P","labs_l5-cicd.md":"Dz1Jl78z","labs_l5-observability.md":"BDpqVYjT","labs_l6-cost-optimization.md":"CabFK4GB","labs_l6-eval-harness.md":"CBwH6xOR","labs_l7-autoresearch.md":"BYlzPLYo","labs_l7-meta-agent.md":"iTswbOPg","modules_competitive-analysis.md":"BHMHacei","modules_curriculum.md":"D7UeKRfo","modules_debate.md":"DWctKMlA","modules_feynman.md":"DBw5sPBP","modules_field-manual.md":"hmt_NLf1","modules_m1-foundations.md":"DHFyTzWj","modules_m2-architecture.md":"DVowtmf9","modules_m3-safety.md":"RiQQ_HWX","modules_m4-orchestration.md":"DFLcAKBv","modules_m5-production.md":"DTkLIrwQ","modules_m6-economics.md":"HihVEOPb","modules_m7-advanced.md":"B_jVHqsw","modules_m8-capstone.md":"CqV39Gzl","modules_non-technical.md":"BnvuUCRo","modules_reference-stack.md":"D9FXitvn","modules_software-factory.md":"C5Yf8Zwe","modules_tool-reference.md":"B40mlgZJ","public_certificate_template.md":"Cg1kPB1b","resources.md":"DcUu1NrK","skills.md":"BX3RBeCK","troubleshooting.md":"B6difx2I","verify.md":"Cl5ZMWNd"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,21 +1,152 @@
# Certificate of Completion
This certifies that
**\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_**
has completed the
## FDSA Agentic Engineering Course
**65 lessons across 8 modules**
**13 hands-on labs with starter code and solutions**
**56 quiz questions across 7 module checkpoints**
**20 production-ready SKILL.md files in 7 kits**
**Capstone: production-grade multi-agent system**
---
title: Certificate - Agentic Engineering the Hard Way
---
*Curriculum: Agent Harness (M1-M3), Software Factory (M4), Extensible Software (M2+M5), Always-On Agents (M7), Agentic Access (M2+M5), Tokenomics (M6). Framework-agnostic across Claude Code, Pi Agent, OpenCode, Hermes, and OpenClaw.*
<div class="certificate-wrap">
<div class="certificate">
<div class="cert-ornament"></div>
<div class="cert-badge">&#9670;</div>
<div class="cert-label">Certificate of Completion</div>
<div class="cert-sub">This certifies that</div>
<div class="cert-name">____________________________</div>
<div class="cert-body">has successfully completed all requirements of the</div>
<div class="cert-course">Agentic Engineering<br>the Hard Way</div>
<div class="cert-details">
<span>65 lessons across 8 modules</span>
<span>13 hands-on labs</span>
<span>Production-grade capstone</span>
</div>
<div class="cert-footer">
<div class="cert-date">Date: <span>________________</span></div>
<div class="cert-seal">
<span class="material-symbols-outlined">verified</span>
<span>FDSA</span>
</div>
</div>
<div class="cert-verify">Verify at <strong>fdsa.agency/verify</strong></div>
</div>
</div>
*Verify at: https://fdsa.agency/verify*
## About the Certificate
This certificate verifies completion of the Agentic Engineering the Hard Way course, covering:
- **Agent Harness** (M1-M3): Foundations, architecture, safety & security
- **Software Factory** (M4): Multi-agent orchestration, teams, chains, P2P
- **Production Systems** (M5): CI/CD, observability, deployment, rollback
- **Model Economics** (M6): Cascade routing, pass@k evals, cost optimization
- **Advanced Patterns** (M7): Autoresearch, meta-agents, beyond MCP
- **Capstone** (M8): Production multi-agent system from scratch
## How to Get Your Certificate
1. Complete all 8 modules and 13 labs
2. Submit your capstone project for review
3. Email your submission to [artale@fdsa.agency](mailto:artale@fdsa.agency)
4. Receive your signed certificate within 48 hours
## Verification
Employers can verify certificates at `fdsa.agency/verify` using the certificate ID provided on each certificate.
<style>
.certificate-wrap {
display: flex;
justify-content: center;
margin: 32px 0 48px;
}
.certificate {
width: 100%;
max-width: 600px;
background: var(--vp-c-bg-soft);
border: 2px solid var(--vp-c-border);
border-radius: 16px;
padding: 48px 40px;
text-align: center;
position: relative;
overflow: hidden;
}
.cert-ornament {
position: absolute;
top: 0; left: 0; right: 0;
height: 6px;
background: linear-gradient(90deg, var(--vp-c-brand-1), var(--vp-c-brand-2), var(--vp-c-brand-1));
}
.cert-badge {
font-size: 32px;
color: var(--vp-c-brand-1);
margin-bottom: 8px;
}
.cert-label {
font-size: 11px;
font-weight: 700;
letter-spacing: 0.2em;
text-transform: uppercase;
color: var(--vp-c-brand-1);
margin-bottom: 24px;
}
.cert-sub {
font-size: 13px;
color: var(--vp-c-text-2);
margin-bottom: 8px;
}
.cert-name {
font-size: 28px;
font-weight: 800;
color: var(--vp-c-text-1);
margin-bottom: 12px;
letter-spacing: -0.5px;
}
.cert-body {
font-size: 13px;
color: var(--vp-c-text-2);
margin-bottom: 20px;
}
.cert-course {
font-size: 24px;
font-weight: 800;
color: var(--vp-c-brand-1);
line-height: 1.2;
margin-bottom: 20px;
}
.cert-details {
display: flex;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
margin-bottom: 28px;
}
.cert-details span {
font-size: 11px;
color: var(--vp-c-text-3);
background: rgba(128,128,128,0.08);
padding: 4px 12px;
border-radius: 999px;
}
.cert-footer {
display: flex;
justify-content: space-between;
align-items: center;
padding-top: 20px;
border-top: 1px solid var(--vp-c-border);
}
.cert-date {
font-size: 12px;
color: var(--vp-c-text-2);
}
.cert-date span { color: var(--vp-c-text-1); }
.cert-seal {
display: flex;
align-items: center;
gap: 6px;
font-size: 11px;
font-weight: 700;
letter-spacing: 0.1em;
color: var(--vp-c-brand-1);
}
.cert-verify {
font-size: 11px;
color: var(--vp-c-text-3);
margin-top: 16px;
}
</style>