microsoft/hve-core

Public

mirrored fromhttps://github.com/microsoft/hve-coreAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
chore/sync-action-version-comments

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

docs/docusaurus/src/pages/index.tsx

63lines · modecode

1import React, { useMemo } from 'react';
2import Layout from '@theme/Layout';
3import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
4import HeroSection from '../components/HeroSection';
5import { IconCard, BoxCard, CardGrid } from '../components/Cards';
6import CollectionCard from '../components/CollectionCards';
7import { iconCards, boxCards } from '../data/hubCards';
8import { resolveCollectionCards } from '../data/collectionCards';
9import styles from './styles.module.css';
10
11export default function Home(): React.ReactElement {
12 const { siteConfig } = useDocusaurusContext();
13 const counts = (siteConfig.customFields?.collectionCounts ?? {}) as Record<string, number>;
14
15 const collectionCards = useMemo(() => resolveCollectionCards(counts), [counts]);
16
17 return (
18 <Layout title="HVE Core" description="AI-Driven Software Development Across the Full Lifecycle">
19 <HeroSection
20 title="HVE Core"
21 subtitle="AI-Driven Software Development Across the Full Lifecycle"
22 cta={[
23 { label: 'Install the Extension', href: 'https://marketplace.visualstudio.com/items?itemName=ise-hve-essentials.hve-core', primary: true },
24 { label: 'Browse Collections', href: '/docs/getting-started/collections' },
25 ]}
26 />
27
28 <main>
29 <section className={styles.sectionCompact}>
30 <CardGrid>
31 {iconCards.map((card) => (
32 <IconCard key={card.href} icon={card.icon} supertitle={card.supertitle} title={card.title} href={card.href} />
33 ))}
34 </CardGrid>
35 </section>
36
37 <section className={styles.section}>
38 <h2 className={styles.sectionTitle}>Deep dive</h2>
39 <p className={styles.sectionSubtitle}>
40 Explore best practices and patterns for AI-assisted development.
41 </p>
42 <CardGrid columns={4}>
43 {boxCards.map((card) => (
44 <BoxCard key={card.title} {...card} />
45 ))}
46 </CardGrid>
47 </section>
48
49 <section className={styles.section}>
50 <h2 className={styles.sectionTitle}>Collections</h2>
51 <p className={styles.sectionSubtitle}>
52 Browse domain-specific artifact bundles.
53 </p>
54 <CardGrid>
55 {collectionCards.map((card) => (
56 <CollectionCard key={card.name} {...card} />
57 ))}
58 </CardGrid>
59 </section>
60 </main>
61 </Layout>
62 );
63}
64