Skip to content

Commit

Permalink
Add basic Aerie landing page
Browse files Browse the repository at this point in the history
  • Loading branch information
camargo committed Sep 6, 2023
1 parent a2cc3e9 commit 462dcf8
Show file tree
Hide file tree
Showing 7 changed files with 502 additions and 3 deletions.
59 changes: 59 additions & 0 deletions src/components/HomepageFeatures/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
import React from 'react';
import clsx from 'clsx';
import styles from './styles.module.css';

const FeatureList = [
{
title: 'Easy to Use',
Svg: require('@site/static/img/undraw_docusaurus_mountain.svg').default,
description: (
<>
Aerie was designed from the ground up to be easily installed and used to get your mission up and running
quickly.
</>
),
},
{
title: 'Focus on What Matters',
Svg: require('@site/static/img/undraw_docusaurus_tree.svg').default,
description: <>Aerie lets you focus on your mission, and we&apos;ll do the chores.</>,
},
{
title: 'Powered by Java',
Svg: require('@site/static/img/undraw_docusaurus_react.svg').default,
description: (
<>
Extend or customize your mission model by reusing Java. Aerie can be extended while reusing the same underlying
model code.
</>
),
},
];

function Feature({ Svg, title, description }) {
return (
<div className={clsx('col col--4')}>
<div className="text--center">
<Svg className={styles.featureSvg} role="img" />
</div>
<div className="text--center padding-horiz--md">
<h3>{title}</h3>
<p>{description}</p>
</div>
</div>
);
}

export default function HomepageFeatures() {
return (
<section className={styles.features}>
<div className="container">
<div className="row">
{FeatureList.map((props, idx) => (
<Feature key={idx} {...props} />
))}
</div>
</div>
</section>
);
}
11 changes: 11 additions & 0 deletions src/components/HomepageFeatures/styles.module.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
.features {
display: flex;
align-items: center;
padding: 2rem 0;
width: 100%;
}

.featureSvg {
height: 200px;
width: 200px;
}
36 changes: 33 additions & 3 deletions src/pages/index.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,36 @@
import React from 'react';
import { Redirect } from 'react-router-dom';
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import HomepageFeatures from '@site/src/components/HomepageFeatures';
import styles from './index.module.css';

export default function Index() {
return <Redirect to="/aerie-docs/introduction/" />;
function HomepageHeader() {
const { siteConfig } = useDocusaurusContext();
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<div className="container">
<h1 className="hero__title">Aerie</h1>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<Link className="button button--secondary button--lg" to="/aerie-docs/introduction/#fast-track">
Aerie Tutorial - 5min ⏱️
</Link>
</div>
</div>
</header>
);
}

export default function Home() {
const { siteConfig } = useDocusaurusContext();
return (
<Layout title={`Hello from ${siteConfig.title}`} description="Description will go into a meta tag in <head />">
<HomepageHeader />
<main>
<HomepageFeatures />
</main>
</Layout>
);
}
18 changes: 18 additions & 0 deletions src/pages/index.module.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
.heroBanner {
padding: 4rem 0;
text-align: center;
position: relative;
overflow: hidden;
}

@media screen and (max-width: 996px) {
.heroBanner {
padding: 2rem;
}
}

.buttons {
display: flex;
align-items: center;
justify-content: center;
}
Loading

0 comments on commit 462dcf8

Please sign in to comment.