1
0
mirror of https://github.com/uetchy/namae.git synced 2025-03-20 05:50:32 +09:00
namae/web/src/components/Welcome.js

149 lines
2.9 KiB
JavaScript
Raw Normal View History

2019-08-01 13:21:23 +09:00
import React from 'react'
import styled from 'styled-components'
2019-08-03 13:36:29 +09:00
import { useTranslation } from 'react-i18next'
2019-08-01 13:21:23 +09:00
2019-08-07 14:16:06 +09:00
import {
FaMapSigns,
FaGithub,
FaNpm,
FaPython,
FaGem,
FaLinux,
FaAppStore,
FaTwitter,
FaSlack,
FaAws,
FaJsSquare,
FaGoogle,
} from 'react-icons/fa'
2019-08-06 01:17:29 +09:00
import { IoIosBeer } from 'react-icons/io'
2019-08-07 14:16:06 +09:00
import { DiRust } from 'react-icons/di'
2019-08-01 13:21:23 +09:00
import { mobile } from '../util/css'
export default function Welcome() {
2019-08-03 13:36:29 +09:00
const { t } = useTranslation()
2019-08-01 13:21:23 +09:00
return (
<Container>
2019-08-01 14:00:22 +09:00
<Hero>
2019-08-03 13:36:29 +09:00
<Header>{t('title')}</Header>
<Text>{t('description')}</Text>
2019-08-01 14:00:22 +09:00
</Hero>
<List>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaMapSigns /> {t('providers.domains')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaGithub /> {t('providers.github')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaNpm /> {t('providers.npm')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaPython /> {t('providers.pypi')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaGem /> {t('providers.rubygems')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<DiRust /> {t('providers.rust')}
2019-08-01 14:00:22 +09:00
</ListItem>
2019-08-02 17:07:28 +09:00
<ListItem>
2019-08-03 13:36:29 +09:00
<IoIosBeer /> {t('providers.homebrew')}
2019-08-02 17:07:28 +09:00
</ListItem>
2019-08-01 14:00:22 +09:00
<ListItem>
2019-08-06 01:17:29 +09:00
<FaLinux /> {t('providers.linux')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaTwitter /> {t('providers.twitter')}
2019-08-01 14:00:22 +09:00
</ListItem>
<ListItem>
2019-08-03 13:36:29 +09:00
<FaSlack /> {t('providers.slack')}
2019-08-01 14:00:22 +09:00
</ListItem>
2019-08-06 01:17:29 +09:00
<ListItem>
<FaAws /> {t('providers.s3')}
</ListItem>
<ListItem>
<FaJsSquare /> {t('providers.jsorg')}
</ListItem>
2019-08-07 14:16:06 +09:00
<ListItem>
<FaGithub /> {t('providers.githubSearch')}
</ListItem>
<ListItem>
<FaAppStore /> {t('providers.appStore')}
</ListItem>
<ListItem>
<FaGoogle /> {t('providers.google')}
</ListItem>
2019-08-01 14:00:22 +09:00
</List>
2019-08-01 13:21:23 +09:00
</Container>
)
}
const Container = styled.div`
2019-08-01 14:00:22 +09:00
padding-bottom: 40px;
padding-right: 20vw;
padding-left: 20vw;
2019-08-01 13:21:23 +09:00
text-align: center;
font-size: 1.5rem;
line-height: 1.6em;
${mobile} {
text-align: left;
2019-08-01 14:00:22 +09:00
padding-right: 40px;
padding-left: 40px;
2019-08-01 14:32:00 +09:00
font-size: 1.2rem;
2019-08-01 13:21:23 +09:00
}
`
const Header = styled.h1`
2019-08-01 14:32:00 +09:00
font-size: 3.5em;
2019-08-03 13:36:29 +09:00
line-height: 1em;
2019-08-01 14:00:22 +09:00
padding-bottom: 30px;
2019-08-03 13:36:29 +09:00
${mobile} {
font-size: 3em;
}
2019-08-01 14:00:22 +09:00
`
const Text = styled.p`
font-size: 1.2em;
color: #3c3c3c;
`
2019-08-02 04:23:21 +09:00
const Hero = styled.div``
2019-08-01 13:21:23 +09:00
const List = styled.div`
2019-08-01 14:00:22 +09:00
margin-top: 50px;
2019-08-01 13:21:23 +09:00
padding: 20px;
display: flex;
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
background-image: linear-gradient(180deg, #ec7951 0%, #f03054 100%);
color: white;
border-radius: 4px;
font-size: 1rem;
${mobile} {
flex-direction: column;
}
`
const ListItem = styled.div`
margin: 15px;
display: flex;
align-items: center;
2019-08-01 14:00:22 +09:00
font-size: 1.2rem;
line-height: 1em;
2019-08-01 13:21:23 +09:00
${mobile} {
margin: 10px 0;
}
svg {
margin-right: 5px;
}
`