Skip to content

Commit 17c638a

Browse files
committed
design
1 parent 11681e2 commit 17c638a

6 files changed

Lines changed: 43 additions & 286 deletions

File tree

.github/workflows/jekyll-gh-pages.yml

Lines changed: 29 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -42,30 +42,35 @@ jobs:
4242
4343
- name: Copy README to github-pages with TOC
4444
run: |
45-
cat > github-pages/index.md << 'FRONTMATTER'
46-
---
47-
layout: default
48-
title: MCAF Guide
49-
nav_order: 1
50-
---
51-
52-
<nav class="toc">
53-
<div class="toc-title">Table of Contents</div>
54-
<ol>
55-
<li><a href="#1-what-mcaf-is">What MCAF Is</a></li>
56-
<li><a href="#2-context">Context</a></li>
57-
<li><a href="#3-verification">Verification</a></li>
58-
<li><a href="#4-instructions-and-agentsmd">Instructions and AGENTS.md</a></li>
59-
<li><a href="#5-coding-and-testability">Coding and Testability</a></li>
60-
<li><a href="#6-perspectives">Perspectives</a></li>
61-
<li><a href="#7-development-cycle">Development Cycle</a></li>
62-
<li><a href="#8-ai-participation-modes">AI Participation Modes</a></li>
63-
<li><a href="#9-adopting-mcaf-in-a-repository">Adopting MCAF</a></li>
64-
</ol>
65-
</nav>
66-
67-
FRONTMATTER
68-
cat README.md >> github-pages/index.md
45+
# Front matter
46+
printf '%s\n' '---' 'layout: default' 'title: MCAF Guide' 'nav_order: 1' '---' '' > github-pages/index.md
47+
48+
# Header (before first ---)
49+
awk '/^---$/{exit} {print}' README.md >> github-pages/index.md
50+
51+
# TOC
52+
cat >> github-pages/index.md << 'TOCEOF'
53+
54+
<nav class="toc">
55+
<div class="toc-title">Table of Contents</div>
56+
<ol>
57+
<li><a href="#1-what-mcaf-is">What MCAF Is</a></li>
58+
<li><a href="#2-context">Context</a></li>
59+
<li><a href="#3-verification">Verification</a></li>
60+
<li><a href="#4-instructions-and-agentsmd">Instructions and AGENTS.md</a></li>
61+
<li><a href="#5-coding-and-testability">Coding and Testability</a></li>
62+
<li><a href="#6-perspectives">Perspectives</a></li>
63+
<li><a href="#7-development-cycle">Development Cycle</a></li>
64+
<li><a href="#8-ai-participation-modes">AI Participation Modes</a></li>
65+
<li><a href="#9-adopting-mcaf-in-a-repository">Adopting MCAF</a></li>
66+
</ol>
67+
</nav>
68+
69+
---
70+
TOCEOF
71+
72+
# Content (after first ---)
73+
awk '/^---$/{found=1; next} found{print}' README.md >> github-pages/index.md
6974

7075
- name: Setup Pages
7176
uses: actions/configure-pages@v5

github-pages/_config.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,11 @@ description: Managed Code Coding AI Framework
33
url: "https://mcaf.managed-code.com"
44
baseurl: ""
55

6+
markdown: kramdown
7+
kramdown:
8+
auto_ids: true
9+
input: GFM
10+
611
plugins:
712
- jekyll-seo-tag
813

github-pages/_layouts/default.html

Lines changed: 6 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,18 @@
3333
<meta name="twitter:description" content="{{ page.description | default: site.description }}">
3434
<meta name="twitter:image" content="{{ site.url }}/assets/images/og-image.png">
3535

36-
<!-- Favicons -->
36+
<!-- Favicon -->
3737
<link rel="icon" type="image/svg+xml" href="{{ '/assets/images/favicon.svg' | relative_url }}">
38-
<link rel="icon" type="image/png" sizes="32x32" href="{{ '/assets/images/favicon-32.png' | relative_url }}">
39-
<link rel="apple-touch-icon" href="{{ '/assets/images/apple-touch-icon.png' | relative_url }}">
4038

4139
<!-- Theme Color -->
4240
<meta name="theme-color" content="#785D8F">
4341
<meta name="msapplication-TileColor" content="#785D8F">
4442

43+
<!-- Fonts -->
44+
<link rel="preconnect" href="https://fonts.googleapis.com">
45+
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
46+
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet">
47+
4548
<!-- Stylesheet -->
4649
<link rel="stylesheet" href="{{ '/assets/css/style.css' | relative_url }}">
4750

@@ -62,9 +65,6 @@
6265
</script>
6366
</head>
6467
<body>
65-
<!-- Reading progress bar -->
66-
<div class="reading-progress" id="reading-progress"></div>
67-
6868
<nav class="nav">
6969
<a href="{{ '/' | relative_url }}" class="nav-logo">{{ site.title }}</a>
7070
<div class="nav-links">
@@ -88,72 +88,5 @@
8888
</div>
8989
</footer>
9090

91-
<!-- Back to top button -->
92-
<button class="back-to-top" id="back-to-top" aria-label="Back to top">
93-
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
94-
<polyline points="18 15 12 9 6 15"></polyline>
95-
</svg>
96-
</button>
97-
98-
<script>
99-
// Reading progress bar
100-
function updateReadingProgress() {
101-
const article = document.querySelector('.content');
102-
const progressBar = document.getElementById('reading-progress');
103-
const scrollTop = window.scrollY;
104-
const docHeight = article.offsetHeight - window.innerHeight;
105-
const progress = Math.min((scrollTop / docHeight) * 100, 100);
106-
progressBar.style.width = progress + '%';
107-
}
108-
109-
// Back to top button
110-
const backToTop = document.getElementById('back-to-top');
111-
112-
function toggleBackToTop() {
113-
if (window.scrollY > 400) {
114-
backToTop.classList.add('visible');
115-
} else {
116-
backToTop.classList.remove('visible');
117-
}
118-
}
119-
120-
backToTop.addEventListener('click', () => {
121-
window.scrollTo({ top: 0, behavior: 'smooth' });
122-
});
123-
124-
// Add anchor links to headings
125-
document.querySelectorAll('h2, h3, h4').forEach(heading => {
126-
if (heading.id) {
127-
const anchor = document.createElement('a');
128-
anchor.className = 'anchor-link';
129-
anchor.href = '#' + heading.id;
130-
anchor.textContent = '#';
131-
anchor.setAttribute('aria-label', 'Link to this section');
132-
heading.insertBefore(anchor, heading.firstChild);
133-
}
134-
});
135-
136-
// Smooth scroll for anchor links
137-
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
138-
anchor.addEventListener('click', function(e) {
139-
e.preventDefault();
140-
const target = document.querySelector(this.getAttribute('href'));
141-
if (target) {
142-
target.scrollIntoView({ behavior: 'smooth', block: 'start' });
143-
history.pushState(null, null, this.getAttribute('href'));
144-
}
145-
});
146-
});
147-
148-
// Event listeners
149-
window.addEventListener('scroll', () => {
150-
updateReadingProgress();
151-
toggleBackToTop();
152-
});
153-
154-
// Initial call
155-
updateReadingProgress();
156-
toggleBackToTop();
157-
</script>
15891
</body>
15992
</html>

github-pages/assets/css/style.css

Lines changed: 3 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,3 @@
1-
/* Reading progress bar */
2-
.reading-progress {
3-
position: fixed;
4-
top: 0;
5-
left: 0;
6-
width: 0%;
7-
height: 3px;
8-
background: linear-gradient(to right, #27232A, #785D8F);
9-
z-index: 1000;
10-
transition: width 0.1s ease;
11-
}
12-
131
/* Table of Contents */
142
.toc {
153
background: #F5F3F7;
@@ -58,64 +46,6 @@
5846
color: #785D8F;
5947
}
6048

61-
/* Anchor links on headings */
62-
h2, h3, h4 {
63-
position: relative;
64-
}
65-
66-
.anchor-link {
67-
position: absolute;
68-
left: -24px;
69-
opacity: 0;
70-
font-size: 0.8em;
71-
color: #785D8F;
72-
text-decoration: none;
73-
transition: opacity 0.2s;
74-
}
75-
76-
h2:hover .anchor-link,
77-
h3:hover .anchor-link,
78-
h4:hover .anchor-link {
79-
opacity: 1;
80-
}
81-
82-
/* Back to top button */
83-
.back-to-top {
84-
position: fixed;
85-
bottom: 32px;
86-
right: 32px;
87-
width: 48px;
88-
height: 48px;
89-
background: #27232A;
90-
color: white;
91-
border: none;
92-
border-radius: 50%;
93-
cursor: pointer;
94-
display: flex;
95-
align-items: center;
96-
justify-content: center;
97-
opacity: 0;
98-
visibility: hidden;
99-
transition: all 0.3s ease;
100-
box-shadow: 0 4px 12px rgba(39, 35, 42, 0.2);
101-
z-index: 99;
102-
}
103-
104-
.back-to-top.visible {
105-
opacity: 1;
106-
visibility: visible;
107-
}
108-
109-
.back-to-top:hover {
110-
background: #785D8F;
111-
transform: translateY(-3px);
112-
}
113-
114-
.back-to-top svg {
115-
width: 20px;
116-
height: 20px;
117-
}
118-
11949
/* Basic Reset */
12050
* {
12151
margin: 0;
@@ -129,7 +59,7 @@ html, body {
12959
}
13060

13161
body {
132-
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', sans-serif;
62+
font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
13363
font-size: 17px;
13464
color: #27232A;
13565
background: #FFFFFF;
@@ -139,6 +69,8 @@ body {
13969
flex-direction: column;
14070
-webkit-font-smoothing: antialiased;
14171
-moz-osx-font-smoothing: grayscale;
72+
text-rendering: optimizeLegibility;
73+
font-feature-settings: "kern" 1, "liga" 1;
14274
}
14375

14476
html {

github-pages/assets/images/og-image.html

Lines changed: 0 additions & 88 deletions
This file was deleted.

github-pages/assets/images/og-image.svg

Lines changed: 0 additions & 30 deletions
This file was deleted.

0 commit comments

Comments
 (0)