diff --git a/monkey/monkey_island/cc/next_ui/src/_components/getting-started/GettingStarted.tsx b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/GettingStarted.tsx index d25801b583e..eb5e5ea1055 100644 --- a/monkey/monkey_island/cc/next_ui/src/_components/getting-started/GettingStarted.tsx +++ b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/GettingStarted.tsx @@ -1,9 +1,67 @@ 'use client'; import Box from '@mui/material/Box'; +import Card from '@mui/material/Card'; +import NumberedCard from '@/_components/getting-started/NumberedCard'; +import Stack from '@mui/material/Stack'; +import ConstructionIcon from '@mui/icons-material/Construction'; +import SecurityIcon from '@mui/icons-material/Security'; +import LanIcon from '@mui/icons-material/Lan'; +import AssessmentIcon from '@mui/icons-material/Assessment'; +import Divider from '@mui/material/Divider'; const GettingStarted = () => { - return Hello There!; + return ( + + + +

How it works?

+

+ The Monkey uses various methods to propagate across a + data center and reports to this Monkey Island Control + server +

+
+ + + + +

+ Setup your Malware +

+

Configure what you want the malware to do

+
+ + +

+ Run Monkey +

+

Configure what you want the malware to do

+
+ + +

+ Review Infection Map +

+

Configure what you want the malware to do

+
+ + +

+ Security Reports +

+

Configure what you want the malware to do

+
+
+
+
+ ); }; export default GettingStarted; diff --git a/monkey/monkey_island/cc/next_ui/src/_components/getting-started/NumberedCard.tsx b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/NumberedCard.tsx new file mode 100644 index 00000000000..26f70707a9f --- /dev/null +++ b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/NumberedCard.tsx @@ -0,0 +1,32 @@ +import Box from '@mui/material/Box'; +import Card from '@mui/material/Card'; +import CardContent from '@mui/material/CardContent'; +import TabLabel from './TabLabel'; +import CardActionArea from '@mui/material/CardActionArea'; + +export interface NumberedCardProps { + children: React.ReactNode; + number: number; + icon?: React.ReactNode; + title?: string; +} + +const NumberedCard = (props: NumberedCardProps) => { + return ( + <> + + {props.number} + + + {props.children} + + + + + ); +}; + +export default NumberedCard; diff --git a/monkey/monkey_island/cc/next_ui/src/_components/getting-started/TabLabel.tsx b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/TabLabel.tsx new file mode 100644 index 00000000000..386d879a31d --- /dev/null +++ b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/TabLabel.tsx @@ -0,0 +1,22 @@ +import { styled } from '@mui/material/styles'; + +export interface NumberedTabProps { + number: number; + color?: string; +} + +const NumberedTabSpan = styled('span')(({ theme }) => ({ + height: '24px', + fontSize: '16px', + paddingLeft: '7px', + paddingRight: '3px', + marginTop: '15px', + textAlign: 'center', + left: 0, + top: '1em', + borderRadius: '12px 0 0 12px', + color: theme.palette.primary.contrastText, + background: theme.palette.primary.main +})); + +export default NumberedTabSpan; diff --git a/monkey/monkey_island/cc/next_ui/src/_components/getting-started/style.ts b/monkey/monkey_island/cc/next_ui/src/_components/getting-started/style.ts new file mode 100644 index 00000000000..e69de29bb2d