Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tina/enterprise landing page #1575

Merged
merged 15 commits into from
Jun 29, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
3 changes: 2 additions & 1 deletion .github/workflows/nodejs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ env:
TINA_TOKEN: ${{ secrets.TINA_TOKEN }}
NEXT_PUBLIC_TINA_BRANCH: ${{ github.head_ref }}
NODE_OPTIONS: "--max_old_space_size=4096"
TINA_SEARCH_TOKEN: ${{ secrets.TINA_SEARCH_TOKEN }}
jobs:
build:
runs-on: ubuntu-latest
Expand Down Expand Up @@ -44,4 +45,4 @@ jobs:
check_img_http: false
check_external_hash: false
empty_alt_ignore: true
url_ignore_re: '/.+\/(blog|404)\/.+/'
url_ignore_re: '/.+\/(blog|404)\/.+/'
117 changes: 117 additions & 0 deletions components/blocks/HeroForm.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
import { Container } from './Container'
import HeroBg from '../../public/svg/hero-bg.svg'

export function HeroBlock({ data, index }) {
return (
<section
key={index}
className={`relative overflow-visible z-10 text-center px-8 pb-10 md:pb-16 lg:pb-28 pt-32 lg:pt-40`}
>
<Container width="narrow" center>
<HeroFeature item={data} />

<form
action="https://formspree.io/f/mzbqndez"
method="POST"
>
<label>
Your email:
<input type="email" name="email" />
</label>
<label>
Your message:
<textarea name="message"></textarea>
</label>
<button type="submit">Send</button>
</form>

</Container>
<HeroBg className="absolute pointer-events-none -z-1 left-0 bottom-0 w-full h-auto" />
</section>
)
}

export const HeroFeature = ({ item }) => {
return (
<>
<div className="feature">
{item.headline && <h2 className="heading">{item.headline}</h2>}
{item.text && <p className="text-xl mt-6">{item.text}</p>}
</div>
<style jsx>{`
.heading {
font-family: var(--font-tuner);
font-weight: bold;
font-style: normal;
font-size: 2.5rem;
line-height: 1.3;
letter-spacing: 0.1px;
display: inline-block;
color: transparent;
background: linear-gradient(
to right,
var(--color-orange-light),
var(--color-orange),
var(--color-orange-dark)
);
-webkit-background-clip: text;
background-clip: text;
text-align: center;
margin: 0 auto;
max-width: 12em;

@media (min-width: 800px) {
font-size: 3rem;
}

@media (min-width: 1200px) {
font-size: 3.5rem;
}
}
`}</style>
</>
)
}

export const Video = ({ src }) => {
return (
<>
<video
className="video"
autoPlay={true}
loop
muted
playsInline
poster={`https://res.cloudinary.com/forestry-demo/video/upload/so_0/${src}.jpg`}
>
<source
src={`https://res.cloudinary.com/forestry-demo/video/upload/q_100,h_584/${src}.webm`}
type="video/webm"
/>
<source
src={`https://res.cloudinary.com/forestry-demo/video/upload/q_80,h_584/${src}.mp4`}
type="video/mp4"
/>
</video>
<style jsx>{`
.video {
width: 100%;
border-radius: 0.5rem;
box-shadow: inset 0 0 0 1px rgba(236, 72, 21, 0.03),
0 6px 24px rgba(0, 37, 91, 0.05), 0 2px 4px rgba(0, 37, 91, 0.03);
display: flex;
justify-content: center;

@media (min-width: 1100px) {
width: 90%;
margin: 0 auto;
}

@media (min-width: 1400px) {
width: 80%;
}
}
`}</style>
</>
)
}
122 changes: 122 additions & 0 deletions content/blocksPages/enterprise.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
{
"blocks": [
{
"headline": "Tina for Enterpise",
"text": "Reduce costs. Increase security & performance.",
"actions": [
{
"label": "Request 1-Pager",
"icon": false,
"variant": "white",
"size": "small",
"url": "mailto:info@tina.io?subject=TinaCMS Enterprise 1-Pager&body=Hi, I'd like more information about the TinaCMS Enterprise Solution.\""
},
{
"label": "Get a Demo",
"icon": false,
"variant": "blue",
"size": "small",
"url": "mailto:info@tina.io?subject=TinaCMS Enterprise Demo&body=Hi, I'd like to book a demo of TinaCMS."
}
],
"videoSrc": "",
"margin": "",
"spacing": "gap-10",
"_template": "hero"
},
{
"items": [
{
"headline": "Built-in Version Control",
"text": "Tina is built on Git. Easily revert to earlier versions, undo mistakes, work on branches, and deploy with confidence."
},
{
"headline": "Reduced Costs",
"text": "When switching to TinaCMS, most customers reduce licensing and operating costs by more than 50%. "
},
{
"headline": "Self-host",
"text": "TinaCMS can be self-hosted behind your firewall for increased security. "
},
{
"headline": "Editorial Workflow",
"text": "Editorial workflows backed by Git are built into Tina. Your content team can make Pull Requests (PRs) without leaving the CMS. "
},
{
"headline": "Performance and Scalability",
"text": "Static architecture delivers fast load times and scalability by pre-rendering pages as static assets and serving them from a CDN. This often eliminates down-time and results in a 10 x time-to-first-byte."
},
{
"headline": "Enhanced Security",
"text": "Reduce the attack surface without a database and server-side processing. Static files and strict access controls minimize vulnerabilities, offering a more secure architecture. "
}
],
"_template": "featureGrid"
},
{
"options": {
"narrow": true,
"color": "white",
"align": "center"
},
"content": "## Reduced Hosting and Operating Costs\n\nMost customers see greater than 50% reduction in licensing and operating costs when switching from other enterprise-level CMS platforms to TinaCMS\n",
"_template": "content"
},
{
"items": [
{
"headline": "Simplified Development & Maintenance",
"text": "Web teams become efficient when using modern frameworks and TinaCMS. Updates and deployments become simpler, reducing the risk of bugs and downtime."
},
{
"headline": "Single Sign On",
"text": "Compatible with the most popular IdPs like Okta and support for both SAML and OIDC."
},
{
"headline": "SOC 2 and GDPR",
"text": "Actively pursuing SOC 2 certification and GDPR compliance."
},
{
"headline": "Uptime SLAs",
"text": "99.9% server uptime with swift communications if something impacts your sending integration."
},
{
"headline": "CI/CD ",
"text": "Integration with a modern CI/CD pipeline to perform all checks and run scripts. Easily configure separate environments such as pre-production and production. \n"
},
{
"headline": "No More Caching",
"text": "Reduce the need for complex caching layers. Caching is built it with statically generated content distributed through CDN networks. \n"
}
],
"_template": "featureGrid"
},
{
"items": [
{
"headline": "Training & Support",
"text": "Get access to the team behind TinaCMS for training, priority support, and custom development."
}
],
"_template": "featureGrid"
},
{
"headline": "Request a Demo",
"text": "",
"actions": [
{
"label": "Contact Us",
"icon": false,
"variant": "blue",
"size": "large",
"url": "mailto:info@tina.io?subject=TinaCMS Enterprise Demo&body=Hi, I'd like to book a demo of TinaCMS."
}
],
"_template": "hero"
}
],
"seo": {
"title": "Enterprise",
"description": ""
}
}
6 changes: 6 additions & 0 deletions content/navigation.json
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,11 @@
"external": true
}
]
},
{
"id": "enterprise",
"label": "Enterprise",
"href": "/enterprise",
"external": false
}
]