MCPcopy Create free account
hub / github.com/DevCloudNinjas/DevOps-Projects / write_homepage

Function write_homepage

tools/build_starlight_content.py:652–741  ·  view source on GitHub ↗
(projects: list[dict])

Source from the content-addressed store, hash-verified

650
651
652def write_homepage(projects: list[dict]) -> None:
653 featured_numbers = {50, 51, 52, 53, 54}
654 featured = [
655 project for project in projects if project["number"] in featured_numbers
656 ]
657 featured_cards = "\n".join(project_card(project) for project in featured)
658 start_cards = "\n".join(start_route_card(route) for route in START_ROUTES)
659 hero_routes = "\n".join(hero_route_link(route) for route in START_ROUTES)
660 content = f"""---
661title: DevOps Projects Student Portal
662description: A clean DevOps learning portal with internal project pages, guided paths, and safety-first runbooks.
663---
664
665<section class="hero-lab">
666 <div class="hero-copy">
667 <p class="eyebrow">2026 DevOps portfolio lab</p>
668 <h1>Build DevOps labs at home. Show the proof.</h1>
669 <div class="hero-lede">
670 A student-first portal for 54 hands-on DevOps projects across cloud,
671 containers, Kubernetes, CI/CD, DevSecOps, observability, and platform
672 engineering.
673 </div>
674 <div class="hero-actions">
675 <a class="portal-button primary" href="{site_path('/catalog/start-here/')}">Start here</a>
676 <a class="portal-button secondary" href="{site_path('/projects/')}">Browse projects</a>
677 <a class="portal-button" href="{site_path('/runbooks/credentials-and-cost-safety/')}">Read the safety guide</a>
678 </div>
679 </div>
680 <div class="hero-metrics" aria-label="Start routes">
681 <p class="hero-panel-label">Choose your route</p>
682 <div class="hero-route-list">
683{hero_routes}
684 </div>
685 <div class="tag-cloud compact">
686 <span>54 projects</span><span>8 paths</span><span>5 modern labs</span><span>0 logins</span>
687 </div>
688 </div>
689</section>
690
691## Start Here
692
693<div class="start-route-grid">
694{start_cards}
695</div>
696
697## Current 2026 Home Labs
698
699<div class="project-grid">
700{featured_cards}
701</div>
702
703## How To Use This Portal
704
705<div class="step-grid">
706 <div class="step-card">
707 <strong>1. Pick</strong>
708 <p>Choose a project by cost, cloud, deployability, and outcome.</p>
709 </div>

Callers 1

mainFunction · 0.85

Calls 4

project_cardFunction · 0.85
start_route_cardFunction · 0.85
hero_route_linkFunction · 0.85
site_pathFunction · 0.85

Tested by

no test coverage detected