Skip to content

Commit eb8e4b3

Browse files
authored
Add Features Section (#2)
1 parent 40421ef commit eb8e4b3

File tree

10 files changed

+118
-8
lines changed

10 files changed

+118
-8
lines changed

.prettierignore

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
node_modules
2+
**/node_modules
3+
**/lib
4+
.next/

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"react": "17.0.2",
1919
"react-custom-scrollbars-2": "^4.4.0",
2020
"react-dom": "17.0.2",
21+
"react-icons": "^4.2.0",
2122
"react-scroll": "^1.8.3"
2223
},
2324
"devDependencies": {

src/features/CodeSandBox.js

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import React from "react"
2+
3+
export const CodeSandbox = () => {
4+
return <div></div>
5+
}

src/features/Features.js

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import React from "react"
2+
3+
export const Features = () => {
4+
return <div></div>
5+
}

src/features/FeaturesSection.js

+80
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import React from "react"
2+
import {
3+
Container,
4+
SimpleGrid,
5+
Stack,
6+
Text,
7+
Box,
8+
Heading,
9+
HStack,
10+
Icon,
11+
VStack,
12+
} from "@chakra-ui/react"
13+
14+
import { CheckIcon } from "@chakra-ui/icons"
15+
16+
const features = [
17+
{
18+
title: "Interoperability",
19+
text: "Interoperable with Dask, GPU and sparse arrays libraries such as Dask, CuPy, and sparse.",
20+
},
21+
{
22+
title: "Apply operations over named dimensions",
23+
text: "x.sum(['latitude', 'time'])",
24+
},
25+
{
26+
title: "Select values by label instead of integer location",
27+
text: "x.sel(time='2020-01-04')",
28+
},
29+
{
30+
title: "Vectorized operations",
31+
text: "Mathematical operations (e.g., `x - y`) vectorize across multiple dimensions (array broadcasting) based on dimension names, not shape.",
32+
},
33+
{
34+
title: "GroupBy operations",
35+
text: " Flexible split-apply-combine operations with groupby: x.groupby('time.dayofyear').mean()",
36+
},
37+
{
38+
title: "Database like operations",
39+
text: "Database like alignment based on coordinate labels that smoothly handles missing values: x, y = xr.align(x, y, join='outer').",
40+
},
41+
{
42+
title: "Arbitrary metadata tracking",
43+
text: "Keep track of arbitrary metadata in the form of a Python dictionary: ds.attrs",
44+
},
45+
{
46+
title: "Flexible and Extensible I/O backend API",
47+
text: "",
48+
},
49+
]
50+
51+
export const FeaturesSection = () => {
52+
return (
53+
<Box p={4}>
54+
<Stack spacing={4} as={Container} maxW={"3xl"} textAlign={"center"}>
55+
<Heading fontSize={"3xl"}>Key Features & Capabilities</Heading>
56+
<Text color={"gray.600"} fontSize={"lg"}>
57+
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam
58+
nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat,
59+
sed diam voluptua.
60+
</Text>
61+
</Stack>
62+
63+
<Container maxW={"6xl"} mt={10}>
64+
<SimpleGrid columns={{ base: 1, md: 2, lg: 4 }} spacing={10}>
65+
{features.map((feature, index) => (
66+
<HStack key={index} align={"top"}>
67+
<Box color={"green.400"} px={2}>
68+
<Icon as={CheckIcon} />
69+
</Box>
70+
<VStack align={"start"}>
71+
<Text fontWeight={600}>{feature.title}</Text>
72+
<Text color={"gray.600"}>{feature.text}</Text>
73+
</VStack>
74+
</HStack>
75+
))}
76+
</SimpleGrid>
77+
</Container>
78+
</Box>
79+
)
80+
}

src/features/index.js

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export { FeaturesSection } from "./FeaturesSection"

src/herobanner/HeroBanner.js renamed to src/herobanner/HeroBannerSection.js

+12-5
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import {
1111
Box,
1212
Link,
1313
} from "@chakra-ui/react"
14-
export const HeroBanner = () => {
14+
export const HeroBannerSection = () => {
1515
return (
1616
<Container maxW={"7xl"}>
1717
<Stack
@@ -46,10 +46,17 @@ export const HeroBanner = () => {
4646
N-D labeled arrays and datasets in Python
4747
</Text>
4848
</Heading>
49-
<Text color={"gray.500"}>
50-
Xarray introduces labels in the form of dimensions, coordinates, and
51-
attributes on top of raw NumPy-like arrays, which allows for more
52-
intuitive, more concise, and less error-prone user experience.
49+
<Text color={"gray.600"} fontSize={"lg"}>
50+
<strong>xarray</strong> (formerly <strong>xray</strong>) is an open
51+
source project and Python package that introduces labels in the form
52+
of dimensions, coordinates, and attributes on top of raw NumPy-like
53+
arrays, which allows for more intuitive, more concise, and less
54+
error-prone user experience.
55+
<br />
56+
<br />
57+
xarray includes a large and growing library of domain-agnostic
58+
functions for advanced analytics and visualization with these data
59+
structures.
5360
</Text>
5461
<Stack
5562
spacing={{ base: 4, sm: 6 }}

src/herobanner/index.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export { HeroBanner } from "./HeroBanner"
1+
export { HeroBannerSection } from "./HeroBannerSection"

src/pages/index.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import Head from "next/head"
22
import { Container, Stack } from "@chakra-ui/react"
33
import { NavBar } from "navbar"
4-
import { HeroBanner } from "herobanner"
4+
import { HeroBannerSection } from "herobanner"
5+
import { FeaturesSection } from "features"
56

67
export default function IndexPage() {
78
return (
@@ -11,7 +12,8 @@ export default function IndexPage() {
1112
</Head>
1213
<Container maxW={"full"}>
1314
<NavBar />
14-
<HeroBanner />
15+
<HeroBannerSection />
16+
<FeaturesSection />
1517
</Container>
1618
</>
1719
)

yarn.lock

+5
Original file line numberDiff line numberDiff line change
@@ -3424,6 +3424,11 @@ [email protected]:
34243424
use-callback-ref "^1.2.1"
34253425
use-sidecar "^1.0.1"
34263426

3427+
react-icons@^4.2.0:
3428+
version "4.2.0"
3429+
resolved "https://registry.yarnpkg.com/react-icons/-/react-icons-4.2.0.tgz#6dda80c8a8f338ff96a1851424d63083282630d0"
3430+
integrity sha512-rmzEDFt+AVXRzD7zDE21gcxyBizD/3NqjbX6cmViAgdqfJ2UiLer8927/QhhrXQV7dEj/1EGuOTPp7JnLYVJKQ==
3431+
34273432
34283433
version "17.0.2"
34293434
resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0"

0 commit comments

Comments
 (0)