mirror of
https://github.com/fleetdm/fleet
synced 2026-05-19 06:58:30 +00:00
Closes https://github.com/fleetdm/confidential/issues/12017 Closes https://github.com/fleetdm/fleet/issues/32440 Closes https://github.com/fleetdm/fleet/issues/32441 Changes: - Updated CTAs across the website ("Talk to an engineer" » "Get a demo") - Removed the clickable link on the "More" dropdown menu - Removed the funding announcement banner
409 lines
28 KiB
Text
Vendored
409 lines
28 KiB
Text
Vendored
<div id="pricing" v-cloak>
|
||
<div purpose="page-content" class="container-fluid mx-auto">
|
||
<div class="px-0 d-flex flex-column justify-content-center pt-5 mx-auto">
|
||
<div purpose="hero-text">
|
||
<h2 class="text-center mb-5">
|
||
Compare plans and pricing
|
||
</h2>
|
||
</div>
|
||
<div purpose="pricing-tiers" class="d-flex flex-column flex-lg-row justify-content-center">
|
||
<%// Fleet Free tier card %>
|
||
<div purpose="pricing-card">
|
||
<div purpose="free-tier-card" class="card d-flex flex-lg-column flex-sm-row flex-column h-100">
|
||
<div purpose="pricing-tier-image">
|
||
</div>
|
||
<div purpose="pricing-card-body">
|
||
<div purpose="pricing-tier-title">
|
||
<div class="d-flex flex-row justify-content-start">
|
||
<div class="d-flex flex-column justify-content-between">
|
||
<h2>Free</h2>
|
||
<h3>Unlimited hosts</h3>
|
||
<div purpose="tier-price" class="d-flex flex-row align-items-center">
|
||
<h1><span purpose="price-dollar-sign">$</span>0</h1><strong>/ host <br purpose="premium-price-linebreak">/ month</strong>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div purpose="button-container" class="d-flex flex-row align-items-center">
|
||
<animated-arrow-button href="/docs">
|
||
Read the docs
|
||
</animated-arrow-button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<%// Fleet Premium tier card %>
|
||
<div purpose="pricing-card" class="d-flex flex-column justify-content-center">
|
||
<div purpose="premium-tier-card" class="card d-flex h-100 flex-lg-column flex-sm-row flex-column">
|
||
<div purpose="pricing-tier-image">
|
||
</div>
|
||
<div purpose="pricing-card-body">
|
||
<div purpose="pricing-tier-title">
|
||
<div class="d-flex flex-column justify-content-between">
|
||
<div class="d-flex flex-column justify-content-start">
|
||
<h2>Premium</h2>
|
||
<h3>Unlimited baselines</h3>
|
||
<div purpose="tier-price" class="d-flex flex-row align-items-center justify-content-start">
|
||
<h1><span purpose="price-dollar-sign">$</span>7.00</h1><strong>/ host <br purpose="premium-price-linebreak">/ month</strong>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<a purpose="card-button" class="btn btn-block btn-lg btn-primary mx-auto mb-0" href="/register">Get started</a>
|
||
<!-- <div>
|
||
</div> -->
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<%// Custom tier card %>
|
||
<div purpose="pricing-card" class="d-flex flex-column justify-content-center">
|
||
<div purpose="custom-tier-card" class="card d-flex h-100 flex-lg-column flex-sm-row flex-column">
|
||
<div purpose="pricing-tier-image">
|
||
|
||
</div>
|
||
<div purpose="pricing-card-body">
|
||
<div purpose="pricing-tier-title">
|
||
<div class="d-flex flex-column justify-content-between">
|
||
<div class="d-flex flex-column justify-content-center">
|
||
<h2>Custom</h2>
|
||
<h3>For teams who can move quickly with extremely large deployments.</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div>
|
||
<a purpose="card-button" class="btn btn-block btn-lg btn-primary mx-auto mb-0" href="/contact">Get a demo</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div purpose="logos-container" class="flex-column flex-wrap align-items-center w-100">
|
||
<logo-carousel></logo-carousel>
|
||
</div>
|
||
<div purpose="pricing-switch" class="d-flex flex-md-row flex-column justify-content-center mx-auto">
|
||
<div purpose="pricing-switch-option" class="all" :class="[pricingMode === 'all' ? 'selected' : '']" @click="clickChangePricingMode('all')">All features</div>
|
||
<div purpose="pricing-switch-option" class="security" :class="[pricingMode === 'Security' ? 'selected' : '']" @click="clickChangePricingMode('Security')">For security engineers</div>
|
||
<div purpose="pricing-switch-option" class="it" :class="[pricingMode === 'IT' ? 'selected' : '']" @click="clickChangePricingMode('IT')">For IT admins</div>
|
||
<div purpose="pricing-tier-switch" :class="pricingMode+'-selected'"></div>
|
||
</div>
|
||
</div>
|
||
<%// All features %>
|
||
<div purpose="features-table" class="d-flex flex-column justify-content-center mx-auto px-0 " :class="[[pricingMode === 'all' ? 'show' : 'hide']]">
|
||
<div class="d-flex flex-column p-0" :class="[showExpandedTable ? '' : 'truncated']">
|
||
<%// Desktop features tables %>
|
||
<div class="d-none d-md-block">
|
||
<% for(let category of pricingTable) {%>
|
||
<table purpose="pricing-categories-table" class="table">
|
||
<thead>
|
||
<tr>
|
||
<td><h5><%- category.categoryName %></h5></td>
|
||
<%if(pricingTable.indexOf(category) === 0) {%>
|
||
<td class="text-center">
|
||
<strong>Free</strong>
|
||
</td>
|
||
<%}else {%>
|
||
<td ></td>
|
||
<%}%>
|
||
<%if(pricingTable.indexOf(category) === 0) {%>
|
||
<td class="text-center">
|
||
<strong>Premium</strong>
|
||
</td>
|
||
<%}else {%>
|
||
<td ></td>
|
||
<%}%>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<% for( let feature of category.features){ %>
|
||
<tr>
|
||
<%if(feature.description && feature.documentationUrl) {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %><a href="<%- feature.documentationUrl %>" target="_blank" no-icon><img class="d-inline has-link" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" data-toggle="tooltip" tabindex="0" data-placement="top" data-html="true" title="<p><%= feature.description +'</p>'+ [feature.documentationUrl ? '<p class="d-flex flex-row align-items-center mb-0">Click <img src="/images/icon-more-info-25-14x14@2x.png" class="mx-1" style="height: 12px; display: inline;" alt="more info"> to learn more</p>' : ''] %> "></a></td>
|
||
<% } else if(feature.description) {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %><img class="d-inline" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" data-toggle="tooltip" tabindex="0" data-placement="top" data-html="true" title="<%= feature.description %> "></td>
|
||
<% } else {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %></td>
|
||
<% } %>
|
||
<%if(feature.tier === 'Free') {%>
|
||
<td purpose="table-checkmark"><img class="mx-auto" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png"></td>
|
||
<%} else {%>
|
||
<td purpose="table-checkmark"></td>
|
||
<%}%>
|
||
<td purpose="table-checkmark"><img class="mx-auto" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png"></td>
|
||
</tr>
|
||
<% }%>
|
||
</tbody>
|
||
</table>
|
||
<% }%>
|
||
<p style="color: #515774;" class="mb-0 w-100">* Coming soon</p>
|
||
</div>
|
||
<%// Mobile features tables %>
|
||
<div purpose="mobile-feature-table-section" class="d-block d-md-none" v-for="category in pricingTable">
|
||
<h5>{{category.categoryName}}</h5>
|
||
<div purpose="mobile-features-table" class="d-flex flex-column" v-for="feature in category.features">
|
||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||
<strong class="d-block">
|
||
{{feature.name}}{{feature.comingSoon ? '*' : ''}}
|
||
</strong>
|
||
<img class="d-block" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" @click="clickOpenMobileTooltip(feature)" v-if="feature.description">
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-between align-items-center">
|
||
Free
|
||
<img class="d-block" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png" v-if="feature.tier === 'Free'">
|
||
</div>
|
||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||
Premium
|
||
<img class="d-block" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p style="color: #515774;" class="d-block d-md-none mb-0 w-100">* Coming soon</p>
|
||
<div purpose="truncated-features-fade">
|
||
</div>
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-center"><a :class="[showExpandedTable ? 'expanded' : '']" @click="showExpandedTable = !showExpandedTable" purpose="show-all-features-button">Show all features<span></span></a></div>
|
||
</div>
|
||
<%// Filtered features %>
|
||
<div purpose="features-table" class="d-flex flex-column justify-content-center mx-auto px-0" :class="[[pricingMode === 'IT' ? 'show' : 'hide']]">
|
||
<div class="d-flex flex-column p-0" :class="[showExpandedTable ? '' : 'truncated']">
|
||
<%// Desktop features tables %>
|
||
<div class="d-none d-md-block">
|
||
<% for(let category of pricingTableForIt) {%>
|
||
<table purpose="pricing-categories-table" class="table">
|
||
<thead>
|
||
<tr>
|
||
<td><h5><%- category.categoryName %></h5></td>
|
||
<%if(pricingTableForIt.indexOf(category) === 0) {%>
|
||
<td class="text-center">
|
||
<strong>Free</strong>
|
||
</td>
|
||
<%}else {%>
|
||
<td ></td>
|
||
<%}%>
|
||
<%if(pricingTableForIt.indexOf(category) === 0) {%>
|
||
<td class="text-center">
|
||
<strong>Premium</strong>
|
||
</td>
|
||
<%}else {%>
|
||
<td ></td>
|
||
<%}%>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<% for( let feature of category.features){ %>
|
||
<tr>
|
||
<%if(feature.description && feature.documentationUrl) {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %><a href="<%- feature.documentationUrl %>" target="_blank" no-icon><img class="d-inline has-link" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" data-toggle="tooltip" tabindex="0" data-placement="top" data-html="true" title="<p><%= feature.description +'</p>'+ [feature.documentationUrl ? '<p class="d-flex flex-row align-items-center mb-0">Click <img src="/images/icon-more-info-25-14x14@2x.png" class="mx-1" style="height: 12px; display: inline;" alt="more info"> to learn more</p>' : ''] %> "></a></td>
|
||
<% } else if(feature.description) {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %><img class="d-inline" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" data-toggle="tooltip" tabindex="0" data-placement="top" data-html="true" title="<%= feature.description %> "></td>
|
||
<% } else {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %></td>
|
||
<% } %>
|
||
<%if(feature.tier === 'Free') {%>
|
||
<td purpose="table-checkmark"><img class="mx-auto" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png"></td>
|
||
<%} else {%>
|
||
<td purpose="table-checkmark"></td>
|
||
<%}%>
|
||
<td purpose="table-checkmark"><img class="mx-auto" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png"></td>
|
||
</tr>
|
||
<% }%>
|
||
</tbody>
|
||
</table>
|
||
<% }%>
|
||
<p style="color: #515774;" class="mb-0 w-100">* Coming soon</p>
|
||
</div>
|
||
<%// Mobile features tables %>
|
||
<div purpose="mobile-feature-table-section" class="d-block d-md-none" v-for="category in pricingTableForIt">
|
||
<h5>{{category.categoryName}}</h5>
|
||
<div purpose="mobile-features-table" class="d-flex flex-column" v-for="feature in category.features">
|
||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center" @click="">
|
||
<strong class="d-block">
|
||
{{feature.name}}{{feature.comingSoon ? '*' : ''}}
|
||
<img class="d-inline" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" @click="clickOpenMobileTooltip(feature)" v-if="feature.description">
|
||
</strong>
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-between align-items-center">
|
||
Free
|
||
<img class="d-block" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png" v-if="feature.tier === 'Free'">
|
||
</div>
|
||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||
Premium
|
||
<img class="d-block" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p style="color: #515774;" class="d-block d-md-none mb-0 w-100">* Coming soon</p>
|
||
<div purpose="truncated-features-fade"></div>
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-center"><a :class="[showExpandedTable ? 'expanded' : '']" @click="showExpandedTable = !showExpandedTable" purpose="show-all-features-button">Show all features<span></span></a></div>
|
||
</div>
|
||
<div purpose="features-table" class="d-flex flex-column justify-content-center mx-auto px-0" :class="[[pricingMode === 'Security' ? 'show' : 'hide']]">
|
||
<div class="d-flex flex-column p-0" :class="[showExpandedTable ? '' : 'truncated']">
|
||
<%// Desktop features tables %>
|
||
<div class="d-none d-md-block">
|
||
<% for(let category of pricingTableForSecurity) {%>
|
||
<table purpose="pricing-categories-table" class="table">
|
||
<thead>
|
||
<tr>
|
||
<td><h5><%- category.categoryName %></h5></td>
|
||
<%if(pricingTableForSecurity.indexOf(category) === 0) {%>
|
||
<td class="text-center">
|
||
<strong>Free</strong>
|
||
</td>
|
||
<%}else {%>
|
||
<td ></td>
|
||
<%}%>
|
||
<%if(pricingTableForSecurity.indexOf(category) === 0) {%>
|
||
<td class="text-center">
|
||
<strong>Premium</strong>
|
||
</td>
|
||
<%}else {%>
|
||
<td ></td>
|
||
<%}%>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<% for( let feature of category.features){ %>
|
||
<tr>
|
||
<%if(feature.description && feature.documentationUrl) {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %><a href="<%- feature.documentationUrl %>" target="_blank" no-icon><img class="d-inline has-link" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" data-toggle="tooltip" tabindex="0" data-placement="top" data-html="true" title="<p><%= feature.description +'</p>'+ [feature.documentationUrl ? '<p class="d-flex flex-row align-items-center mb-0">Click <img src="/images/icon-more-info-25-14x14@2x.png" class="mx-1" style="height: 12px; display: inline;" alt="more info"> to learn more</p>' : ''] %> "></a></td>
|
||
<% } else if(feature.description) {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %><img class="d-inline" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" data-toggle="tooltip" tabindex="0" data-placement="top" data-html="true" title="<%= feature.description %> "></td>
|
||
<% } else {%>
|
||
<td purpose="feature-name"><%- feature.name %><%- feature.comingSoon ? '*' : '' %></td>
|
||
<% } %>
|
||
<%if(feature.tier === 'Free') {%>
|
||
<td purpose="table-checkmark"><img class="mx-auto" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png"></td>
|
||
<%} else {%>
|
||
<td purpose="table-checkmark"></td>
|
||
<%}%>
|
||
<td purpose="table-checkmark"><img class="mx-auto" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png"></td>
|
||
</tr>
|
||
<% }%>
|
||
</tbody>
|
||
</table>
|
||
<% }%>
|
||
<p style="color: #515774;" class="mb-0 w-100">* Coming soon</p>
|
||
</div>
|
||
<%// Mobile features tables %>
|
||
<div purpose="mobile-feature-table-section" class="d-block d-md-none" v-for="category in pricingTableForSecurity">
|
||
<h5>{{category.categoryName}}</h5>
|
||
<div purpose="mobile-features-table" class="d-flex flex-column" v-for="feature in category.features">
|
||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||
<strong class="d-block">
|
||
{{feature.name}}{{feature.comingSoon ? '*' : ''}}
|
||
</strong>
|
||
<img class="d-block" purpose="tooltip-icon" src="/images/icon-more-info-14x14@2x.png" alt="More info" @click="clickOpenMobileTooltip(feature)" v-if="feature.description">
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-between align-items-center">
|
||
Free
|
||
<img class="d-block" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png" v-if="feature.tier === 'Free'">
|
||
</div>
|
||
<div purpose="striped-row" class="d-flex flex-row justify-content-between align-items-center">
|
||
Premium
|
||
<img class="d-block" alt="checkmark" purpose="checkmark" src="/images/icon-checkmark-green-16x16@2x.png">
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p style="color: #515774;" class="d-block d-md-none mb-0 w-100">* Coming soon</p>
|
||
<div purpose="truncated-features-fade"></div>
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-center"><a :class="[showExpandedTable ? 'expanded' : '']" @click="showExpandedTable = !showExpandedTable" purpose="show-all-features-button">Show all features<span></span></a></div>
|
||
</div>
|
||
<%// Bottom call to action %>
|
||
<div purpose="faq" class="d-flex flex-column flex-md-row justify-content-center">
|
||
<div purpose="faq-header">
|
||
<h2>Frequently <br>asked questions</h2>
|
||
</div>
|
||
<div purpose="accordion" class="d-flex flex-column justify-content-start">
|
||
<div purpose="accordion-body">
|
||
<div purpose="accordion-item" class="mt-md-0">
|
||
<p purpose="accordion-header" id="accordion__header1" style="cursor: pointer;" class="accordion" data-toggle="collapse" data-target="#accordion__body1" aria-controls="accordion__body1">
|
||
<%
|
||
// ███████╗ █████╗ ██████╗ ██████╗ ██╗
|
||
// ██╔════╝██╔══██╗██╔═══██╗ ██╔═══██╗███║
|
||
// █████╗ ███████║██║ ██║ ██║ ██║╚██║
|
||
// ██╔══╝ ██╔══██║██║▄▄ ██║ ██║▄▄ ██║ ██║
|
||
// ██║ ██║ ██║╚██████╔╝ ╚██████╔╝ ██║
|
||
// ╚═╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚══▀▀═╝ ╚═╝
|
||
%>
|
||
Parts of the UI are unfamiliar to us. Is this too far out of my team's comfort zone?
|
||
<span class="fa fa-angle-down"></span>
|
||
</p>
|
||
<p purpose="faq-answer" id="accordion__body1" class="collapse" aria-labelledby="accordion__header1">
|
||
<%
|
||
// ███████╗ █████╗ ██████╗ █████╗ ██╗
|
||
// ██╔════╝██╔══██╗██╔═══██╗ ██╔══██╗███║
|
||
// █████╗ ███████║██║ ██║ ███████║╚██║
|
||
// ██╔══╝ ██╔══██║██║▄▄ ██║ ██╔══██║ ██║
|
||
// ██║ ██║ ██║╚██████╔╝ ██║ ██║ ██║
|
||
// ╚═╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚═╝ ╚═╝ ╚═╝
|
||
%>
|
||
You already know how to manage the operating system. In Fleet, you can focus on managing {{ bowser.windows ? 'Windows, Apple' : 'Apple, Windows'}} and Linux; not "Android MDM", "Apple MDM", "config management", etc.
|
||
</p>
|
||
</div>
|
||
<div purpose="accordion-item">
|
||
<p purpose="accordion-header" id="accordion__header2" style="cursor: pointer;" class="accordion" data-toggle="collapse" data-target="#accordion__body2" aria-controls="accordion__body2">
|
||
<%
|
||
// ███████╗ █████╗ ██████╗ ██████╗ ██████╗
|
||
// ██╔════╝██╔══██╗██╔═══██╗ ██╔═══██╗╚════██╗
|
||
// █████╗ ███████║██║ ██║ ██║ ██║ █████╔╝
|
||
// ██╔══╝ ██╔══██║██║▄▄ ██║ ██║▄▄ ██║██╔═══╝
|
||
// ██║ ██║ ██║╚██████╔╝ ╚██████╔╝███████╗
|
||
// ╚═╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚══▀▀═╝ ╚══════╝
|
||
%>
|
||
Fleet is perfect, it's just missing this one feature...
|
||
<span class="fa fa-angle-down"></span>
|
||
</p>
|
||
<p purpose="faq-answer" id="accordion__body2" class="collapse" aria-labelledby="accordion__header2">
|
||
<%
|
||
// ███████╗ █████╗ ██████╗ █████╗ ██████╗
|
||
// ██╔════╝██╔══██╗██╔═══██╗ ██╔══██╗╚════██╗
|
||
// █████╗ ███████║██║ ██║ ███████║ █████╔╝
|
||
// ██╔══╝ ██╔══██║██║▄▄ ██║ ██╔══██║██╔═══╝
|
||
// ██║ ██║ ██║╚██████╔╝ ██║ ██║███████╗
|
||
// ╚═╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚═╝ ╚═╝╚══════╝
|
||
%>
|
||
We're moving pretty fast, and we have every incentive to listen. At Fleet, everyone can contribute. We also regularly deliver customer promises, and all the code is <a href="https://github.com/fleetdm/fleet">100% source-available</a>.
|
||
</p>
|
||
</div>
|
||
<div purpose="accordion-item">
|
||
<p purpose="accordion-header" id="accordion__header3" style="cursor: pointer;" class="accordion" data-toggle="collapse" data-target="#accordion__body3" aria-controls="accordion__body3">
|
||
<%
|
||
// ███████╗ █████╗ ██████╗ ██████╗ ██████╗
|
||
// ██╔════╝██╔══██╗██╔═══██╗ ██╔═══██╗╚════██╗
|
||
// █████╗ ███████║██║ ██║ ██║ ██║ █████╔╝
|
||
// ██╔══╝ ██╔══██║██║▄▄ ██║ ██║▄▄ ██║ ╚═══██╗
|
||
// ██║ ██║ ██║╚██████╔╝ ╚██████╔╝██████╔╝
|
||
// ╚═╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚══▀▀═╝ ╚═════╝
|
||
%>
|
||
What actually is Fleet? Was it purpose built for this kind of thing?
|
||
<span class="fa fa-angle-down"></span>
|
||
</p>
|
||
<p purpose="faq-answer" id="accordion__body3" class="collapse" aria-labelledby="accordion__header3">
|
||
<%
|
||
// ███████╗ █████╗ ██████╗ █████╗ ██████╗
|
||
// ██╔════╝██╔══██╗██╔═══██╗ ██╔══██╗╚════██╗
|
||
// █████╗ ███████║██║ ██║ ███████║ █████╔╝
|
||
// ██╔══╝ ██╔══██║██║▄▄ ██║ ██╔══██║ ╚═══██╗
|
||
// ██║ ██║ ██║╚██████╔╝ ██║ ██║██████╔╝
|
||
// ╚═╝ ╚═╝ ╚═╝ ╚══▀▀═╝ ╚═╝ ╚═╝╚═════╝
|
||
%>
|
||
Fleet <a href="https://fleetdm.com/handbook/company#history">started as an osquery management server</a>. After 10 years of production osquery use at scale in huge organizations, Fleet added "write" and "execute" device management capabilities, with all the necessary integrations to be comparable with other device management platforms like Omnissa (fka WS1, fka Airwatch), Jamf, Intune, and more. Today, Fleet is used in homelabs all over the world, and at larger fleets at Epic Games, Cisco, Stripe, Fastly, Lear, and more.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
<div class="d-flex flex-row justify-content-start">
|
||
<p purpose="contact-note">Couldn’t find an answer? <a href="/docs/get-started/faq">Read the FAQ</a> or <a href="/contact">talk to an engineer</a>.</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<modal purpose="mobile-tooltip" v-if="modal === 'mobileTooltip'" @close="closeModal()">
|
||
<div>
|
||
<p class="mb-0">{{selectedFeature.description}}</p>
|
||
<a :href="selectedFeature.documentationUrl" target="_blank" v-if="selectedFeature.documentationUrl" no-icon>Learn more</a>
|
||
</div>
|
||
</modal>
|
||
<p style="opacity: 0; line-height: 0px; font-size: 0px; margin: 0;">537c652d-cb1a-440e-ae35-0f0bf5743e75</p>
|
||
</div>
|
||
<%- /* Expose locals as `window.SAILS_LOCALS` :: */ exposeLocalsToBrowser() %>
|