Website: Update product categories on homepage (#20037)

Closes: https://github.com/fleetdm/confidential/issues/7113

Changes:
- Updated the homepage to default to MDM personalization.
- Updated the layout and content of the homepage to match the latest
wireframes.
- Replaced the calendar section on the homepage with the calendar banner
partial
- Added a product category switch for the buying situation agnostic
version of the page

---------

Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
This commit is contained in:
Eric 2024-06-27 18:30:50 -05:00 committed by GitHub
parent 6dfdcdd95d
commit fb1c536533
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 213 additions and 207 deletions

View file

@ -4,6 +4,7 @@ parasails.registerPage('homepage', {
// ╩╝╚╝╩ ╩ ╩╩ ╩╩═╝ ╚═╝ ╩ ╩ ╩ ╩ ╚═╝
data: {
modal: undefined,
selectedCategory: 'mdm'
},
// ╦ ╦╔═╗╔═╗╔═╗╦ ╦╔═╗╦ ╔═╗
@ -12,7 +13,7 @@ parasails.registerPage('homepage', {
beforeMount: function() {
//…
},
mounted: async function(){
mounted: async function() {
//…
},

View file

@ -91,6 +91,9 @@
margin-bottom: 120px; /*increased while testimonial videos are temporarily hidden.*/
h3 {
margin-bottom: 24px;
font-weight: 800;
font-size: 32px;
line-height: 120%;
}
[purpose='calendar-feature-text'] {
max-width: 480px;
@ -289,13 +292,55 @@
}
}
[purpose='platform-block'] {
margin-bottom: 120px;
margin-bottom: 64px;
max-width: 1080px;
}
[purpose='platform-block'].visible {
animation: fadeIn 0.3s forwards;
}
[purpose='category-switch'] {
width: 831px;
cursor: pointer;
border: 1px solid #E2E4EA;
border-radius: 28px;
background: @ui-off-white;
position: relative;
box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.10) inset;
margin-bottom: 64px;
margin-top: 64px;
color: @core-fleet-black;
[purpose='category-tier-switch'] {
position: absolute;
top: 0px;
left: -1px;
background: #fff;
border: 1px solid #E2E4EA;
border-radius: 28px;
height: 100%;
min-width: 140px;
z-index: 1;
transition: 0.3s all;
width: 277px;
}
[purpose='category-switch-option'] {
padding: 16px 40px;
text-align: center;
cursor: pointer;
z-index: 3;
user-select: none;
white-space: nowrap;
width: 277px;
}
.selected {
font-weight: 700;
}
.eo-selected {
transform: translateX(100%);
}
.vm-selected {
transform: translateX(200%);
}
}
@keyframes fadeIn {
from { opacity: 0; }
to { opacity: 1; }
@ -303,12 +348,17 @@
[purpose='category-text-block'] {
max-width: 468px;
h3 {
font-size: 32px;
margin-bottom: 32px;
strong {
font-family: Inter;
font-size: 16px;
font-weight: 800;
line-height: 1.2;
margin-bottom: 8px;
}
p {
margin-bottom: 32px;
margin-bottom: 40px;
font-size: 14px;
line-height: 1.5;
}
[purpose='category-button'] {
width: min-content;
@ -979,15 +1029,15 @@
height: 56px;
width: 100%;
}
.endpoint-ops-selected {
.eo-selected {
width: 100%;
transform: translateY(56px);
}
.vulnerability-management-selected {
.vm-selected {
width: 100%;
transform: translateY(113px);
}
.device-management-selected {
.mdm-selected {
width: 100%;
}
}

View file

@ -7,7 +7,7 @@
<%/* Hero text */%>
<div purpose="hero-text" class="d-flex flex-column justify-content-center">
<h1><%- partial('../partials/primary-tagline.partial.ejs') %></h1>
<p>Replace the sprawl with <%= primaryBuyingSituation === 'mdm'? 'secure, open-source device management that works the way you want' : primaryBuyingSituation === 'vm'? 'secure, open-source reporting that works the way you want' : primaryBuyingSituation === 'eo-security'? 'universal, open-source endpoint visibility' : 'simple, open-source software for managing computers' %>.</p>
<p>Replace the sprawl with <%= primaryBuyingSituation === 'vm'? 'secure, open-source reporting that works the way you want' : primaryBuyingSituation === 'eo-security'? 'universal, open-source endpoint visibility' : 'secure, open-source device management that works the way you want' %>.</p>
<div purpose="button-row" class="d-flex flex-sm-row flex-column justify-content-center align-items-center">
<a purpose="cta-button" href="/register">Start now</a>
<a purpose="animated-arrow-button-red" href="/contact">Talk to us</a>
@ -25,209 +25,167 @@
<div purpose="homepage-content" class="container">
<%/* Testimonial videos */%>
<div purpose="page-section" class="mb-0">
<div purpose="calendar-feature" class="d-flex flex-lg-row flex-column-reverse justify-content-between mx-auto align-items-center">
<div purpose="calendar-feature-text" class="d-flex flex-column">
<div purpose="new-badge">NEW</div>
<% if(!primaryBuyingSituation) {%>
<h2>Timing is everything <!-- "This is a terrible time to mess with my computer." --></h2> <!-- Turn OS updates into coffee breaks --> <!-- Break time for you, update time for your computer -->
<p>Install updates and force restarts when your users computers are actually free.</p>
<%} else if(['mdm'].includes(primaryBuyingSituation)) {%>
<h2>Timing is everything</h2>
<p>Install updates and force restarts when your users computers are actually free.</p>
<%} else if(['eo-it'].includes(primaryBuyingSituation)) {%>
<h2>Patch your C-suite with confidence</h2>
<p>Install updates and force restarts when your users computers are actually free.</p>
<%} else if(['vm', 'eo-security'].includes(primaryBuyingSituation)) {%>
<h2>Tell employees why</h2>
<p>Automatically explain why your security policies matter, and install required updates en masse without locking people out of meetings.</p>
<%} %>
<% if (primaryBuyingSituation && !['eo-security'].includes(primaryBuyingSituation)) { %><div purpose="calendar-checklist" class="flex-column d-flex">
<p>Say goodbye to annoying IT notifications and restarts.</p>
<p>Automatically explain why your security policies matter.</p>
<p>Stop making exceptions for executives when OS updates lock them out of important meetings.</p>
</div><% } %>
<div purpose="video-button" class="d-flex flex-row align-items-center" @click="clickOpenVideoModal('calendar')">
<img src="/images/icon-play-video-32x32@2x.png" alt="play button">Watch the video
</div>
</div>
<div purpose="feature-video">
<video autoplay loop muted playsinline purpose="calendar-video"><source src="/videos/calendar-feature-video.mp4" type="video/mp4"></video>
</div>
</div>
<div purpose="testimonials" class="d-none <!-- temporarily disabled videos --> flex-lg-row flex-column justify-content-center card-deck">
<% if(['mdm', 'eo-it'].includes(primaryBuyingSituation)) {%>
<div purpose="testimonial" class="nick-fohs d-flex align-items-center card" @click="clickOpenVideoModal('nick-fohs')">
<div purpose="testimonial-video" class="card-title">
<img alt="Play video" src="/images/icon-play-48x48@2x.png">
</div>
<div purpose="testimonial-text">
<p purpose="testimonial-quote">“Fleet lets us be as lightweight as possible while surfacing data to other teams and partners.”</p>
<p class="mb-0"><strong>Nick Fohs</strong></p>
<p class="mb-0">Systems and IT infrastructure manager</p>
</div>
</div>
<%} else if(['vm', 'eo-security'].includes(primaryBuyingSituation)) {%>
<div purpose="testimonial" class="austin-anderson d-flex align-items-center card" @click="clickOpenVideoModal('austin-anderson')">
<div purpose="testimonial-video" class="card-title">
<img alt="Play video" src="/images/icon-play-48x48@2x.png">
</div>
<div purpose="testimonial-text">
<p purpose="testimonial-quote">“We can build it exactly the way we want it. Which is just not possible on other platforms.”</p>
<p class="mb-0"><strong>Austin Anderson</strong></p>
<p class="mb-0">Cybersecurity team senior manager</p>
</div>
</div>
<%}%>
<% %>
</div>
<%- partial('../partials/calendar-banner.partial.ejs') %>
</div>
</div>
<div purpose="homepage-content" class="container">
<div purpose="page-section">
<% if(!primaryBuyingSituation){ %>
<%/* Device management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Device management</h4>
<h3>Manage everything in one place</h3>
<p>Modernize your device management practice with a single, open platform for Apple, Windows, and Linux.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/device-management">Start with device management</a>
</div>
</div>
<div purpose="device-management-image" class="right">
<img alt="Operating systems entering a glass device management dome" src="/images/device-management-hero-380x293@2x.png">
<% if(!primaryBuyingSituation){ %>
<div purpose="category-switch" class="d-flex flex-md-row flex-column justify-content-center mx-auto">
<div purpose="category-switch-option" :class="[selectedCategory === 'mdm' ? 'selected' : '']" @click="selectedCategory = 'mdm'">Device management</div>
<div purpose="category-switch-option" :class="[['eo-it', 'eo-security'].includes(selectedCategory) ? 'selected' : '']" @click="selectedCategory = 'endpoint-operations'">Endpoint ops</div>
<div purpose="category-switch-option" :class="[selectedCategory === 'vulnerability-management' ? 'selected' : '']" @click="selectedCategory = 'vm'">Vuln<span class="d-inline d-md-none d-lg-inline">erability</span> management</div>
<div purpose="category-tier-switch" :class="[['eo-it', 'eo-security', 'endpoint-operations'].includes(selectedCategory) ? 'eo-selected' : selectedCategory === 'vm' ? 'vm-selected' : selectedCategory === 'mdm' ? 'mdm-selected' : 'mdm-selected']"></div>
</div>
<%/* Device management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center" :class="[selectedCategory === 'mdm' ? 'visible' : '']" v-if="selectedCategory === 'mdm'">
<div purpose="device-management-image" class="left">
<img alt="Operating systems entering a glass device management dome" src="/images/device-management-hero-380x293@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<strong>Your last MDM migration</strong>
<p>Even if you've never done an MDM migration, you've probably heard it's hard. Fleet makes it easy to get your data in and get it out.</p>
<strong>Tidy up your tools</strong>
<p>Deploy a modern Mac-first MDM purpose-built for IT engineers and cross-training. Use principles from DevOps to manage Apple, Windows, and Linux computers declaratively.</p>
<strong>“Zero” trust, fewer tickets</strong>
<p>You can use Fleets API to customize every aspect of conditional access even the stuff your CISO hasnt thought of yet.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/device-management">Start with device management</a>
</div>
</div>
</div>
<%/* Endpoint ops block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="endpoint-ops-image" class="left">
<img alt="Endpoint ops" src="/images/endpoint-operations-hero-image-380x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Endpoint ops</h4>
<h3><%= primaryBuyingSituation==='eo-security'? 'Instrument your endpoints' : 'Understand your computers'%></h3>
<p>A <%= primaryBuyingSituation==='eo-security'? 'lightweight' : 'quick-fast' %> way to gather <%= primaryBuyingSituation==='vm'? 'patch level and custom reports across all your computing devices, even in OT and production environments' : primaryBuyingSituation==='eo-security'? 'deep context and custom telemetry across all your endpoints, even servers' : primaryBuyingSituation==='mdm'||primaryBuyingSituation==='eo-it'? 'compliance and inventory data across all your devices' : 'device data across all your computers' %>. Pulse check or automate anything on any platform.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/endpoint-ops">Start with endpoint ops</a>
</div>
<%/* Endpoint ops block */%>
<div purpose="platform-block" :class="[selectedCategory === 'endpoint-operations' ? 'visible' : '']" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center" v-if="selectedCategory === 'endpoint-operations'">
<div purpose="endpoint-ops-image" class="left">
<img alt="Endpoint ops" src="/images/endpoint-operations-hero-image-380x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<strong>Pulse check anything</strong>
<p>Use a live connection to every endpoint to simplify audit, compliance, and reporting from workstations to data centers.</p>
<strong>Ship data to any platform</strong>
<p>Ship logs to any platform like Splunk, Snowflake, or <a href="/docs/using-fleet/log-destinations">any streaming infrastructure</a> like AWS Kinesis and Apache Kafka.</p>
<strong>Osquery on easy mode</strong>
<p>Use "read-only" mode or enable remote scripting to automate anything on every operating system, including Linux.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/endpoint-ops">Start with endpoint ops</a>
</div>
</div>
</div>
<%/* Vulnerability management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Vulnerability management</h4>
<h3>Build the vulnerability program you actually want</h3>
<p>Show how quickly zero days and "celebrity CVEs" are resolved and which teams need extra help. Use scoring, known exploit feeds, and live, down-to-the-chip data about your own environment to prioritize, export, automate, and monitor mitigations of everyday vulnerabilities in operating systems, software packages, browsers, and plugins, anywhere.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/vulnerability-management">Start with vuln management</a>
</div>
</div>
<div purpose="vuln-management-image" class="right">
<img alt="An orb being scanned for vulnerabilities" src="/images/vulnerability-management-hero-image-345x380@2x.png">
<%/* Vulnerability management block */%>
<div purpose="platform-block" :class="[selectedCategory === 'vm' ? 'visible' : '']" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center" v-if="selectedCategory === 'vm'">
<div purpose="vuln-management-image" class="left">
<img alt="An orb being scanned for vulnerabilities" src="/images/vulnerability-management-hero-image-345x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<strong>Report what matters</strong>
<p>Let's face it, most built-in graphs leave you wanting more. Report MTTR and any other custom metrics exactly the way you want to using fresh data from real computers.</p>
<strong>Deep context from the environment</strong>
<p>Fleet gives you data down to the chip level on every endpoint to help you make sense of which vulnerabilities to prioritize.</p>
<strong>Untangle your security stack</strong>
<p>Use open data and APIs to connect your vulnerability solution with osquery, the agent you might already have deployed.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/vulnerability-management">Start with vuln management</a>
</div>
</div>
<% } else if(['eo-it', 'eo-security'].includes(primaryBuyingSituation)) {%>
<%/* Endpoint ops block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Endpoint ops</h4>
<h3><%= primaryBuyingSituation==='eo-security'? 'Instrument your endpoints' : 'Understand your computers'%></h3>
<p>A <%= primaryBuyingSituation==='eo-security'? 'lightweight' : 'quick-fast' %> way to gather <%= primaryBuyingSituation==='vm'? 'patch level and custom reports across all your computing devices, even in OT and production environments' : primaryBuyingSituation==='eo-security'? 'deep context and custom telemetry across all your endpoints, even servers' : primaryBuyingSituation==='mdm'||primaryBuyingSituation==='eo-it'? 'compliance and inventory data across all your devices' : 'device data across all your computers' %>. Pulse check or automate anything on any platform.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/endpoint-ops">Start with endpoint ops</a>
</div>
</div>
<div purpose="endpoint-ops-image" class="right">
<img alt="Endpoint ops" src="/images/endpoint-operations-hero-image-380x380@2x.png">
</div>
</div>
<%if(primaryBuyingSituation === 'eo-it'){ %>
<%/* Device management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="device-management-image" class="left">
<img alt="Operating systems entering a glass device management dome" src="/images/device-management-hero-380x293@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Device management</h4>
<h3>Manage everything in one place</h3>
<p>Modernize your device management practice with a single, open platform for Apple, Windows, and Linux.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/device-management">Start with device management</a>
</div>
</div>
</div>
<% } else {%>
<%/* Vulnerability management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="vuln-management-image" class="left">
<img alt="An orb being scanned for vulnerabilities" src="/images/vulnerability-management-hero-image-345x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Vulnerability management</h4>
<h3>Build the vulnerability program you actually want</h3>
<p>Show how quickly zero days and "celebrity CVEs" are resolved and which teams need extra help. Use scoring, known exploit feeds, and live, down-to-the-chip data about your own environment to prioritize, export, automate, and monitor mitigations of everyday vulnerabilities in operating systems, software packages, browsers, and plugins, anywhere.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/vulnerability-management">Start with vuln management</a>
</div>
</div>
</div>
<% } %>
</div>
<% } else if(['eo-it', 'eo-security'].includes(primaryBuyingSituation)) {%>
<%/* Endpoint ops block */%>
<%if(primaryBuyingSituation === 'eo-it'){ %>
<%/* Device management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="device-management-image" class="left">
<img alt="Operating systems entering a glass device management dome" src="/images/device-management-hero-380x293@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Device management</h4>
<h3>Manage everything in one place</h3>
<p>Modernize your device management practice with a single, open platform for Apple, Windows, and Linux.</p>
<div>
<a purpose="animated-arrow-button-red" class="text-nowrap" href="/device-management">Start with device management</a>
</div>
</div>
</div>
<% } %>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Endpoint ops</h4>
<h3><%= primaryBuyingSituation==='eo-security'? 'Instrument your endpoints' : 'Understand your computers'%></h3>
<p>A <%= primaryBuyingSituation==='eo-security'? 'lightweight' : 'quick-fast' %> way to gather <%= primaryBuyingSituation==='vm'? 'patch level and custom reports across all your computing devices, even in OT and production environments' : primaryBuyingSituation==='eo-security'? 'deep context and custom telemetry across all your endpoints, even servers' : primaryBuyingSituation==='mdm'||primaryBuyingSituation==='eo-it'? 'compliance and inventory data across all your devices' : 'device data across all your computers' %>. Pulse check or automate anything on any platform.</p>
<div>
<a purpose="animated-arrow-button-red" class="text-nowrap" href="/endpoint-ops">Start with endpoint ops</a>
</div>
</div>
<div purpose="endpoint-ops-image" class="right">
<img alt="Endpoint ops" src="/images/endpoint-operations-hero-image-380x380@2x.png">
</div>
</div>
<% if(primaryBuyingSituation === 'eo-security') {%>
<%/* Vulnerability management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="vuln-management-image" class="left">
<img alt="An orb being scanned for vulnerabilities" src="/images/vulnerability-management-hero-image-345x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Vulnerability management</h4>
<h3>Build the vulnerability program you actually want</h3>
<p>Show how quickly zero days and "celebrity CVEs" are resolved and which teams need extra help. Use scoring, known exploit feeds, and live, down-to-the-chip data about your own environment to prioritize, export, automate, and monitor mitigations of everyday vulnerabilities in operating systems, software packages, browsers, and plugins, anywhere.</p>
<div>
<a purpose="animated-arrow-button-red" class="text-nowrap" href="/vulnerability-management">Start with vuln management</a>
</div>
</div>
</div>
<% } %>
<% } else if(['vm', 'mdm'].includes(primaryBuyingSituation)) {%>
<% } else if(['vm', 'mdm'].includes(primaryBuyingSituation)) {%>
<%if(primaryBuyingSituation === 'mdm'){ %>
<%/* Device management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="device-management-image" class="left">
<img alt="Operating systems entering a glass device management dome" src="/images/device-management-hero-380x293@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Device management</h4>
<h3>Manage everything in one place</h3>
<p>Modernize your device management practice with a single, open platform for Apple, Windows, and Linux.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/device-management">Start with device management</a>
</div>
</div>
</div>
<% } else {%>
<%/* Vulnerability management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="vuln-management-image" class="left">
<img alt="An orb being scanned for vulnerabilities" src="/images/vulnerability-management-hero-image-345x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Vulnerability management</h4>
<h3>Build the vulnerability program you actually want</h3>
<p>Show how quickly zero days and "celebrity CVEs" are resolved and which teams need extra help. Use scoring, known exploit feeds, and live, down-to-the-chip data about your own environment to prioritize, export, automate, and monitor mitigations of everyday vulnerabilities in operating systems, software packages, browsers, and plugins, anywhere.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/vulnerability-management">Start with vuln management</a>
</div>
</div>
</div>
<% } %>
<%if(primaryBuyingSituation === 'mdm'){ %>
<%/* Device management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Device management</h4>
<h3>Manage everything in one place</h3>
<p>Modernize your device management practice with a single, open platform for Apple, Windows, and Linux.</p>
<div>
<a purpose="animated-arrow-button-red" class="text-nowrap" href="/device-management">Start with device management</a>
</div>
</div>
<div purpose="device-management-image" class="right">
<img alt="Operating systems entering a glass device management dome" src="/images/device-management-hero-380x293@2x.png">
</div>
</div>
<% } else {%>
<%/* Vulnerability management block */%>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Vulnerability management</h4>
<h3>Build the vulnerability program you actually want</h3>
<p>Show how quickly zero days and "celebrity CVEs" are resolved and which teams need extra help. Use scoring, known exploit feeds, and live, down-to-the-chip data about your own environment to prioritize, export, automate, and monitor mitigations of everyday vulnerabilities in operating systems, software packages, browsers, and plugins, anywhere.</p>
<div>
<a purpose="animated-arrow-button-red" class="text-nowrap" href="/vulnerability-management">Start with vuln management</a>
</div>
</div>
<div purpose="vuln-management-image" class="right">
<img alt="An orb being scanned for vulnerabilities" src="/images/vulnerability-management-hero-image-345x380@2x.png">
</div>
</div>
<% } %>
<div purpose="platform-block" class="d-flex flex-md-row flex-column-reverse justify-content-md-between mx-auto align-items-center">
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Endpoint ops</h4>
<h3><%= primaryBuyingSituation==='eo-security'? 'Instrument your endpoints' : 'Understand your computers'%></h3>
<p>A <%= primaryBuyingSituation==='eo-security'? 'lightweight' : 'quick-fast' %> way to gather <%= primaryBuyingSituation==='vm'? 'patch level and custom reports across all your computing devices, even in OT and production environments' : primaryBuyingSituation==='eo-security'? 'deep context and custom telemetry across all your endpoints, even servers' : primaryBuyingSituation==='mdm'||primaryBuyingSituation==='eo-it'? 'compliance and inventory data across all your devices' : 'device data across all your computers' %>. Pulse check or automate anything on any platform.</p>
<div>
<a purpose="category-button" class="text-nowrap btn btn-primary" href="/endpoint-ops">Start with endpoint ops</a>
</div>
</div>
<div purpose="endpoint-ops-image" class="right">
<img alt="Endpoint ops" src="/images/endpoint-operations-hero-image-380x380@2x.png">
</div>
</div>
<% } %>
<div purpose="platform-block" class="d-flex flex-md-row flex-column justify-content-md-between mx-auto align-items-center">
<div purpose="endpoint-ops-image" class="left">
<img alt="Endpoint ops" src="/images/endpoint-operations-hero-image-380x380@2x.png">
</div>
<div purpose="category-text-block" class="d-flex flex-column">
<h4>Endpoint ops</h4>
<h3><%= primaryBuyingSituation==='eo-security'? 'Instrument your endpoints' : 'Understand your computers'%></h3>
<p>A <%= primaryBuyingSituation==='eo-security'? 'lightweight' : 'quick-fast' %> way to gather <%= primaryBuyingSituation==='vm'? 'patch level and custom reports across all your computing devices, even in OT and production environments' : primaryBuyingSituation==='eo-security'? 'deep context and custom telemetry across all your endpoints, even servers' : primaryBuyingSituation==='mdm'||primaryBuyingSituation==='eo-it'? 'compliance and inventory data across all your devices' : 'device data across all your computers' %>. Pulse check or automate anything on any platform.</p>
<div>
<a purpose="animated-arrow-button-red" class="text-nowrap" href="/endpoint-ops">Start with endpoint ops</a>
</div>
</div>
</div>
<% } %>
<%/* Integration cards */%>
<div purpose="integrations-section">
<h2 class="text-center">Connect your favorite tools</h2>
@ -284,7 +242,7 @@
<div purpose="page-section">
<div purpose="endpoints-banner">
<div purpose="endpoint-banner-text">
<h2>An open interface for every endpoint</h2>
<h2>An open interface for every OS</h2>
<p>Normalize how you manage clouds and computers without losing low-level access to OS-specific features.</p>
<div class="d-flex flex-row align-items-center justify-content-md-start justify-content-center">
<a purpose="animated-arrow-button-red-no-transform" href="/docs/get-started/why-fleet">Read the docs</a>
@ -420,7 +378,7 @@
<div purpose="bottom-gradient">
<div purpose="homepage-content" class="container">
<div class="text-center" purpose="bottom-cta">
<h4>For teams with lots of different endpoints</h4>
<h4>For teams with lots of computing devices</h4>
<h1><%- partial('../partials/primary-tagline.partial.ejs') %></h1>
<div purpose="button-row" style="margin-top: 40px;" class="d-flex flex-sm-row flex-column justify-content-center align-items-center mx-auto">
<a purpose="cta-button" href="/register">Start now</a>

View file

@ -4,14 +4,11 @@
<% if(!primaryBuyingSituation) {%>
<h3>"This is a terrible time to mess with my computer."</h3> <!-- Turn OS updates into coffee breaks --> <!-- Break time for you, update time for your computer -->
<p>Install updates and force restarts when your users computers are actually free.</p>
<%} else if(['mdm'].includes(primaryBuyingSituation)) {%>
<h3>Timing is everything</h3>
<p>Install updates and force restarts when your users computers are actually free.</p>
<%} else if(['eo-it'].includes(primaryBuyingSituation)) {%>
<%} else if(['eo-it', 'mdm'].includes(primaryBuyingSituation)) {%>
<h3>Patch your C-suite with confidence</h3>
<p>Install updates and force restarts when your users computers are actually free.</p>
<%} else if(['vm', 'eo-security'].includes(primaryBuyingSituation)) {%>
<h3>Tell employees why</h3>
<h3>Tell me when and why</h3>
<p>Automatically explain why your security policies matter, and install required updates en masse without locking people out of meetings.</p>
<%} %>
<% if (primaryBuyingSituation && !['eo-security'].includes(primaryBuyingSituation)) { %><div purpose="calendar-checklist" class="flex-column d-flex">

View file

@ -1 +1 @@
<%= typeof primaryBuyingSituation !== 'undefined' ? (primaryBuyingSituation === 'mdm' ? 'Your last MDM migration' : primaryBuyingSituation === 'vm' ? 'Focus on vulnerabilities, not vendors' : primaryBuyingSituation === 'eo-security' ? 'Light in every corner' : primaryBuyingSituation === 'eo-it' ? 'Untangle your endpoints' : 'Let people work') : 'Let people work' %>
<%= typeof primaryBuyingSituation !== 'undefined' ? (primaryBuyingSituation === 'vm' ? 'Focus on vulnerabilities, not vendors' : primaryBuyingSituation === 'eo-security' ? 'Light in every corner' : primaryBuyingSituation === 'eo-it' ? 'Untangle your endpoints' : 'Your last MDM migration') : 'Your last MDM migration' %>