Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
aa29d56
Add homepage
Rokt33r May 6, 2020
83e97c9
Add Hero image
Rokt33r May 6, 2020
f5ed5d6
Improve Header
Rokt33r May 6, 2020
8ba5492
Improve github embed
Rokt33r May 6, 2020
cc605e6
Add roadmap section
Rokt33r May 6, 2020
99848f5
Fix viewport
Rokt33r May 6, 2020
1411a1f
Fix roadmap section
Rokt33r May 6, 2020
1179da2
Fix HeroSection for mobile layout
Rokt33r May 6, 2020
2ec5042
Fix overflow for mobile app
Rokt33r May 6, 2020
1ec28ec
Improve Column padding style
Rokt33r May 6, 2020
7ba8b61
Keep showing locale select in Header
Rokt33r May 6, 2020
98cee29
Add PricingPlansSection
Rokt33r May 6, 2020
8cf9ddf
Change RoadmapSection bg color
Rokt33r May 6, 2020
25899b9
Implement BoostHubSection
Rokt33r May 6, 2020
f9db541
Implement FeaturesSection
Rokt33r May 6, 2020
d02cc94
Adjust vertical margin of BoostHubSection
Rokt33r May 6, 2020
b25a6f6
Implement DownloadSection
Rokt33r May 6, 2020
518504f
Fix favicon and ogp images
Rokt33r May 6, 2020
a2406d9
Implement CommunitySection
Rokt33r May 6, 2020
4c45de3
Send open in browser ga event
Rokt33r May 6, 2020
e8cbff6
Implement legacy links
Rokt33r May 6, 2020
951f537
Fix background style
Rokt33r May 6, 2020
672acda
Implement build script
Rokt33r May 6, 2020
5700a31
Configure deployment
Rokt33r May 6, 2020
cf0a36a
Put roadmap link to Features
Rokt33r May 7, 2020
9eea5b4
Add hover style to mobile app links
Rokt33r May 7, 2020
e1fe226
Add alt to logo image
Rokt33r May 7, 2020
00e21bf
Polish Header locales
Rokt33r May 7, 2020
a12762e
Fix button locales in HeroSection
Rokt33r May 7, 2020
9720775
Implement locales for BoostHub and Features sections
Rokt33r May 7, 2020
939df3c
Clean up all English locales
Rokt33r May 7, 2020
03b2836
Fix all locales
Rokt33r May 7, 2020
7298fdb
Apply responsive heading font size
Rokt33r May 7, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions homepage/.babelrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"presets": ["next/babel"],
"plugins": [
[
"styled-components",
{
"ssr": true
}
]
]
}
5 changes: 5 additions & 0 deletions homepage/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
.next
node_modules

.now
out
73 changes: 73 additions & 0 deletions homepage/components/DefaultLayout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
import React from 'react'
import Head from 'next/head'

import GlobalStyle from './GlobalStyle'
import Header from './organisms/Header'
import Footer from './organisms/Footer'

const DefaultLayout: React.FC = ({ children }) => (
<>
<Head>
<title>Boost Note | Boost Happiness, Productivity, and Creativity.</title>

<meta charSet='utf-8' />
<meta
name='viewport'
content='width=device-width, initial-scale=1, maximum-scale=1'
/>
<meta name='subject' content='Boost Note' />
<meta
name='description'
content="Boost Note is an intuitive and stylish markdown editor for developers. It's fully open-source."
/>
<meta
name='keyword'
content='note app,note-taking,snippet,code,engineer,development,tool,programmer,evernote,markdown,open source'
/>
<meta name='author' content='BoostIO, kazz@boostio.co' />
<meta name='robots' content='INDEX,FOLLOW' />

<meta property='og:type' content='website' />
<meta property='og:title' content='Boost Note' />
<meta
property='og:description'
content="Boost Note is an intuitive and stylish markdown editor for developers. It's fully open-source."
/>
<meta property='og:image' content='https://boostnote.io/static/ogp.jpg' />
<meta property='og:image:alt' content='Image of Boost Note App' />
<meta property='og:url' content='https://boostnote.io/' />
<meta property='og:site_name' content='Boost Note' />
<meta property='fb:app_id' content='966242223397117' />

<meta name='twitter:card' content='summary' />
<meta name='twitter:url' content='https://boostnote.io/' />
<meta name='twitter:title' content='Boost Note' />
<meta
name='twitter:description'
content="Boost Note is an intuitive and stylish markdown editor for developers. It's fully open-source."
/>
<meta
name='twitter:image:src'
content='https://boostnote.io/static/ogp.jpg'
/>
<meta name='twitter:site' content='Boost Note' />

<link rel='icon' href='/static/favicon.ico' />
<link
rel='apple-touch-icon'
sizes='180x180'
href='/static/apple-touch-icon.png'
/>
</Head>

<GlobalStyle />

<Header />

<main>{children}</main>

<Footer />
</>
)

export default DefaultLayout
35 changes: 35 additions & 0 deletions homepage/components/GlobalStyle.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import { createGlobalStyle } from 'styled-components'
import { BaseTheme } from '../lib/styled'

const GlobalStyle = createGlobalStyle<{ theme: BaseTheme }>`
* {
box-sizing: border-box;
}

html {
scroll-behavior: smooth;
}

body {
margin: 0;
background-color: ${({ theme }) => theme.colors.white};
color: ${({ theme }) => theme.colors.black};
font-family: -apple-system, BlinkMacSystemFont,
"Segoe UI", Roboto, "Helvetica Neue",
Arial, "Noto Sans", sans-serif;
font-size: 16px;
line-height: 1.6;
}

ul {
margin: 0;
padding-left: 0;
list-style: none;
}

a {
text-decoration: none;
}
`

export default GlobalStyle
9 changes: 9 additions & 0 deletions homepage/components/atoms/Box.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import styled from '../../lib/styled'
import { space, SpaceProps, color, ColorProps } from 'styled-system'

const Box = styled.div<SpaceProps & ColorProps>`
${space}
${color}
`

export default Box
28 changes: 28 additions & 0 deletions homepage/components/atoms/Button.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import styled from '../../lib/styled'
import { space, color, typography } from 'styled-system'

const Button = styled.button`
padding: 10px;
display: inline-block;
${space}
${color}
${typography}

border-radius: 4px;
border: solid 1px ${({ theme }) => theme.colors.gray};
white-space: nowrap;
font-family: SFMono-Regular,Consolas,Liberation, Mono,Menlo,monospace;


&:hover {
cursor: pointer;
transform: translateY(-3px);
transition: .2s cubic-bezier(0, 0, .25, 1);
}
&:disabled {
cursor: default;
opacity: .5;
}
`

export default Button
37 changes: 37 additions & 0 deletions homepage/components/atoms/ButtonLink.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import styled from '../../lib/styled'
import {
space,
color,
typography,
SpaceProps,
ColorProps,
TypographyProps,
} from 'styled-system'

const ButtonLink = styled.a<SpaceProps & ColorProps & TypographyProps>`
padding: 1em;
display: inline-block;
${space}
${color}
${typography}

border-radius: 4px;
border: solid 1px ${({ theme }) => theme.colors.gray};
white-space: nowrap;
font-family: SFMono-Regular,Consolas,Liberation, Mono,Menlo,monospace;

&:hover {
cursor: pointer;
transform: translateY(-3px);
transition: .2s cubic-bezier(0, 0, .25, 1);
}
&:disabled {
cursor: default;
opacity: .5;
}
&>* {
vertical-align: middle;
}
`

export default ButtonLink
19 changes: 19 additions & 0 deletions homepage/components/atoms/Column.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import styled from '../../lib/styled'
import {
space,
layout,
flexbox,
LayoutProps,
SpaceProps,
FlexboxProps,
} from 'styled-system'

const Column = styled.div<SpaceProps & LayoutProps & FlexboxProps>`
padding-left: ${({ theme }) => theme.space[3]}px;
padding-right: ${({ theme }) => theme.space[3]}px;
${space}
${layout}
${flexbox}
`

export default Column
11 changes: 11 additions & 0 deletions homepage/components/atoms/Container.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import styled from '../../lib/styled'
import { space, SpaceProps, color, ColorProps } from 'styled-system'

const Container = styled.div<SpaceProps | ColorProps>`
max-width: 96em;
margin: 0 auto;
${space}
${color}
`

export default Container
34 changes: 34 additions & 0 deletions homepage/components/atoms/DownloadButtonLink.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
import React from 'react'
import { sendGAEvent, queueNavigateToGA } from '../../lib/analytics'
import ButtonLink from './ButtonLink'

interface DownloadButtonLinkProps {
href: string
gaEventName: string
}

const DownloadButtonLink: React.FC<DownloadButtonLinkProps> = ({
children,
href,
gaEventName,
}) => {
return (
<ButtonLink
bg='teal'
color='white'
mx={1}
my={[1, 0]}
py={2}
href={href}
onClick={(event) => {
event.preventDefault()
sendGAEvent(gaEventName)
queueNavigateToGA(href)
}}
>
{children}
</ButtonLink>
)
}

export default DownloadButtonLink
10 changes: 10 additions & 0 deletions homepage/components/atoms/FlexBox.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import styled from '../../lib/styled'
import { space, SpaceProps, flexbox, FlexboxProps } from 'styled-system'

const FlexBox = styled.div<SpaceProps & FlexboxProps>`
display: flex;
${space}
${flexbox}
`

export default FlexBox
14 changes: 14 additions & 0 deletions homepage/components/atoms/HomeLogoLink.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import React from 'react'
import Link from 'next/link'

const HomeLogoLink = () => {
return (
<Link href='/'>
<a>
<img alt='Boost Note Logo' src='/static/logo.svg' />
</a>
</Link>
)
}

export default HomeLogoLink
41 changes: 41 additions & 0 deletions homepage/components/atoms/Icon.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
import React from 'react'
import { Icon as MdiIcon } from '@mdi/react'

interface IconProps {
path: string
color?: string
size?: number
style?: React.CSSProperties
className?: string
spin?: boolean
}

const Icon = ({
path,
color = 'currentColor',
size,
style,
className,
spin,
}: IconProps) => (
<MdiIcon
path={path}
style={{
...(size == null
? {
width: '1em',
height: '1em',
}
: {
width: `${size}px`,
height: `${size}px`,
}),
...style,
}}
color={color}
className={className}
spin={spin}
/>
)

export default Icon
8 changes: 8 additions & 0 deletions homepage/components/atoms/PageTitle.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
import styled from '../../lib/styled'

const PageTitle = styled.h2`
margin: ${({ theme }) => theme.space[0]};
font-size: ${({ theme }) => theme.fontSizes[5]}px;
`

export default PageTitle
13 changes: 13 additions & 0 deletions homepage/components/atoms/Row.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
import styled from '../../lib/styled'
import { space, flexbox } from 'styled-system'

const Row = styled.div`
${space}
${flexbox}

display: flex;
flex-wrap: wrap;
width: 100%;
`

export default Row
17 changes: 17 additions & 0 deletions homepage/components/atoms/Text.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import styled from '../../lib/styled'
import {
space,
SpaceProps,
color,
ColorProps,
typography,
TypographyProps,
} from 'styled-system'

const Text = styled.div<SpaceProps & ColorProps & TypographyProps>`
${space}
${color}
${typography}
`

export default Text
Loading