@@ -3,12 +3,104 @@ import * as React from 'react';
33import Layout from '../components/shared/layout' ;
44import Listing from '../components/index/listing' ;
55import { GlobalStyles } from '../styles' ;
6+ import {
7+ Heading ,
8+ Box ,
9+ Flex ,
10+ Text ,
11+ Button ,
12+ Image ,
13+ } from '../components/shared/base' ;
14+ import { styled } from '../styles' ;
15+ import { TutorialButton } from '../components/shared/buttons' ;
16+ import { Space } from '../components/shared/Space' ;
617
718const IndexPage : React . FunctionComponent < RouterProps > = ( { location } ) => (
819 < Layout location = { location } >
920 < GlobalStyles />
10- < Listing />
21+ < Flex flexDirection = "column" alignItems = "center" >
22+ < Space height = { 119 } />
23+ < MainHero alignItems = "center" flexDirection = "column" >
24+ < Title width = { 2 / 3 } > The Fullstack Tutorial for GraphQL</ Title >
25+ < Space height = { 32 } />
26+ < Box width = { 4 / 7 } >
27+ < HeroText textAlign = "center" >
28+ How to GraphQL is a free tutorial website that teaches all aspects
29+ of GraphQL - from writing your first GraphQL query to taking your
30+ GraphQL server to production.
31+ </ HeroText >
32+ </ Box >
33+ < Space height = { 54 } />
34+ < TutorialButton > Start with Introduction</ TutorialButton >
35+ < Space height = { 82 } />
36+ < Fundamentals width = { 2 / 3 } px = { 4 } pt = { 4 } >
37+ < Flex >
38+ < Box width = { 1 / 2 } mx = { 4 } mt = { 3 } >
39+ < Heading > GraphQL Fundamentals</ Heading >
40+ < Image
41+ width = { 1 / 20 }
42+ src = "https://image.flaticon.com/icons/svg/84/84510.svg"
43+ />
44+ < Space height = { 12 } />
45+ < Text >
46+ A general introduction to GraphQL for frontend and backend
47+ developers.
48+ < br /> < br />
49+ Read this tutorial to learn about GraphQL's basic concepts and
50+ prepare yourself for a hands-on beginner tutorial.
51+ </ Text >
52+ </ Box >
53+ < Box width = { 1 / 2 } px = { 3 } pt = { 3 } >
54+ < Image src = "https://i.ibb.co/vHkQHv7/Chapters.png" />
55+ </ Box >
56+ </ Flex >
57+ </ Fundamentals >
58+ </ MainHero >
59+ < Box width = { 2 / 3 } backgroundColor = "yellow" >
60+ < Flex backgroundColor = "green" >
61+ < CommunityText width = { 2 / 3 } >
62+ < Heading > Community Tutorials</ Heading >
63+ Community tutorials are targeting a wide range of topics. Client or
64+ server, beginner or advanced, theoretical or code-along, high-level
65+ or niche – discover the amazing tutorials contributed by the GraphQL
66+ community!
67+ </ CommunityText >
68+ < Box backgroundColor = "red" width = { 1 / 3 } >
69+ < TutorialButton > View All Tutorials</ TutorialButton >
70+ </ Box >
71+ </ Flex >
72+ < Listing />
73+ </ Box >
74+ </ Flex >
1175 </ Layout >
1276) ;
1377
78+ const MainHero = styled ( Flex ) `
79+ background-image: url('https://i.ibb.co/rmNKQGk/Group-2.png');
80+ background-position: center;
81+ background-size: cover;
82+ ` ;
83+
84+ const HeroText = styled ( Text ) `
85+ font-family: Open Sans;
86+ font-size: 24px;
87+ ` ;
88+
89+ const Fundamentals = styled ( Box ) `
90+ box-shadow: 0px 4px 27px rgba(14, 15, 59, 0.072);
91+ border-radius: 8px 8px 0px 0px;
92+ background: #ffffff;
93+ ` ;
94+
95+ const Title = styled ( Heading ) `
96+ font-size: 64pt;
97+ text-align: center;
98+ color: #515273;
99+ font-weight: bold;
100+ letter-spacing: -0.03em;
101+ ` ;
102+
103+ const CommunityText = styled ( Text ) `
104+ margin: 0 auto;
105+ ` ;
14106export default IndexPage ;
0 commit comments