diff --git a/website/api/controllers/landing-pages/view-jamf-alternative.js b/website/api/controllers/landing-pages/view-jamf-alternative.js new file mode 100644 index 0000000000..95dbc635fc --- /dev/null +++ b/website/api/controllers/landing-pages/view-jamf-alternative.js @@ -0,0 +1,27 @@ +module.exports = { + + + friendlyName: 'View jamf alternative', + + + description: 'Display "Jamf alternative" page.', + + + exits: { + + success: { + viewTemplatePath: 'pages/landing-pages/jamf-alternative' + } + + }, + + + fn: async function () { + + // Respond with view. + return {}; + + } + + +}; diff --git a/website/assets/images/icon-recycle-emoji-32x32@2x.png b/website/assets/images/icon-recycle-emoji-32x32@2x.png new file mode 100644 index 0000000000..2b053ab3de Binary files /dev/null and b/website/assets/images/icon-recycle-emoji-32x32@2x.png differ diff --git a/website/assets/images/icon-robot-arm-emoji-18x18@2x.png b/website/assets/images/icon-robot-arm-emoji-18x18@2x.png new file mode 100644 index 0000000000..48cd888858 Binary files /dev/null and b/website/assets/images/icon-robot-arm-emoji-18x18@2x.png differ diff --git a/website/assets/images/icon-robot-emoji-18x18@2x.png b/website/assets/images/icon-robot-emoji-18x18@2x.png new file mode 100644 index 0000000000..41c742664b Binary files /dev/null and b/website/assets/images/icon-robot-emoji-18x18@2x.png differ diff --git a/website/assets/images/icon-shield-emoji-18x18@2x.png b/website/assets/images/icon-shield-emoji-18x18@2x.png new file mode 100644 index 0000000000..8c6c34c0ed Binary files /dev/null and b/website/assets/images/icon-shield-emoji-18x18@2x.png differ diff --git a/website/assets/images/icon-speech-bubble-emoji-18x18@2x.png b/website/assets/images/icon-speech-bubble-emoji-18x18@2x.png new file mode 100644 index 0000000000..18aa5ac96c Binary files /dev/null and b/website/assets/images/icon-speech-bubble-emoji-18x18@2x.png differ diff --git a/website/assets/images/icon-target-emoji-32x32@2x.png b/website/assets/images/icon-target-emoji-32x32@2x.png new file mode 100644 index 0000000000..0bcf71e4e4 Binary files /dev/null and b/website/assets/images/icon-target-emoji-32x32@2x.png differ diff --git a/website/assets/images/icon-tools-emoji-32x32@2x.png b/website/assets/images/icon-tools-emoji-32x32@2x.png new file mode 100644 index 0000000000..a76b117d6d Binary files /dev/null and b/website/assets/images/icon-tools-emoji-32x32@2x.png differ diff --git a/website/assets/images/jamf-alternative-feature-image-524x591@2x.png b/website/assets/images/jamf-alternative-feature-image-524x591@2x.png new file mode 100644 index 0000000000..60e0992ba6 Binary files /dev/null and b/website/assets/images/jamf-alternative-feature-image-524x591@2x.png differ diff --git a/website/assets/images/social-proof-logo-ghost-86x32@2x.png b/website/assets/images/social-proof-logo-ghost-86x32@2x.png new file mode 100644 index 0000000000..22ab9c62cb Binary files /dev/null and b/website/assets/images/social-proof-logo-ghost-86x32@2x.png differ diff --git a/website/assets/js/pages/landing-pages/jamf-alternative.page.js b/website/assets/js/pages/landing-pages/jamf-alternative.page.js new file mode 100644 index 0000000000..12341537bd --- /dev/null +++ b/website/assets/js/pages/landing-pages/jamf-alternative.page.js @@ -0,0 +1,30 @@ +parasails.registerPage('jamf-alternative', { + // ╦╔╗╔╦╔╦╗╦╔═╗╦ ╔═╗╔╦╗╔═╗╔╦╗╔═╗ + // ║║║║║ ║ ║╠═╣║ ╚═╗ ║ ╠═╣ ║ ║╣ + // ╩╝╚╝╩ ╩ ╩╩ ╩╩═╝ ╚═╝ ╩ ╩ ╩ ╩ ╚═╝ + data: { + modal: '', + }, + + // ╦ ╦╔═╗╔═╗╔═╗╦ ╦╔═╗╦ ╔═╗ + // ║ ║╠╣ ║╣ ║ ╚╦╝║ ║ ║╣ + // ╩═╝╩╚ ╚═╝╚═╝ ╩ ╚═╝╩═╝╚═╝ + beforeMount: function() { + //… + }, + mounted: async function() { + //… + }, + + // ╦╔╗╔╔╦╗╔═╗╦═╗╔═╗╔═╗╔╦╗╦╔═╗╔╗╔╔═╗ + // ║║║║ ║ ║╣ ╠╦╝╠═╣║ ║ ║║ ║║║║╚═╗ + // ╩╝╚╝ ╩ ╚═╝╩╚═╩ ╩╚═╝ ╩ ╩╚═╝╝╚╝╚═╝ + methods: { + clickOpenVideoModal: function(modalName) { + this.modal = modalName; + }, + closeModal: function() { + this.modal = undefined; + }, + } +}); diff --git a/website/assets/styles/importer.less b/website/assets/styles/importer.less index 64f2f8d7e5..eb9d6bd855 100644 --- a/website/assets/styles/importer.less +++ b/website/assets/styles/importer.less @@ -105,4 +105,5 @@ @import 'pages/admin/reset-trial.less'; @import 'pages/landing-pages/linux-management.less'; @import 'pages/articles/basic-whitepaper.less'; +@import 'pages/landing-pages/jamf-alternative.less'; @import 'pages/partners.less'; diff --git a/website/assets/styles/pages/landing-pages/jamf-alternative.less b/website/assets/styles/pages/landing-pages/jamf-alternative.less new file mode 100644 index 0000000000..c5e40216e4 --- /dev/null +++ b/website/assets/styles/pages/landing-pages/jamf-alternative.less @@ -0,0 +1,955 @@ +#jamf-alternative { + // Line-heights: + @text-lineheight: 150%; + @heading-lineheight: 120%; + + + @section-gap-xl: 160px; + @section-gap-l: 120px; + @section-gap-m: 80px; + + @inner-gap-xl: 64px; + @inner-gap-l: 48px; + @inner-gap-m: 32px; + @inner-gap-s: 24px; + @inner-gap-xs: 16px; + @inner-gap-xxs: 8px; + + + + + h4 { + color: #515774; + text-align: center; + font-feature-settings: 'salt' on, 'ss01' on, 'ss02' on; + font-family: 'Roboto Mono'; + font-size: 16px; + font-style: normal; + font-weight: 400; + line-height: @text-lineheight; + text-transform: uppercase; + margin-bottom: 0px; + } + h2 { + color: #192147; + text-align: center; + + /* Heading/H2 */ + font-family: Inter; + font-size: 32px; + font-style: normal; + font-weight: 800; + line-height: @heading-lineheight; + margin-bottom: 0px; + } + + p { + margin-bottom: 0px; + } + + [purpose='landing-page-container'] { + padding: 64px; + display: flex; + flex-direction: column; + align-items: center; + gap: @section-gap-xl; + } + [purpose='landing-page-content'] { + max-width: 1072px; + width: 100%; + min-width: 0px; + display: flex; + flex-direction: column; + align-items: center; + gap: @section-gap-xl; + } + [purpose='page-hero'] { + display: flex; + flex-direction: column; + align-items: center; + gap: @inner-gap-m; + text-align: center; + width: 100%; + } + [purpose='hero-heading'] { + h1 { + color: #192147; + text-align: center; + + /* Heading/H1 */ + font-family: Inter; + font-size: 48px; + font-style: normal; + font-weight: 800; + line-height: @heading-lineheight; + margin-bottom: 0px; + } + } + [purpose='hero-logos'] { + margin-top: 88px; + max-width: 1072px; + width: 100%; + [parasails-component='logo-carousel'] { + margin-bottom: 0px; + } + } + [purpose='hero-content'] { + max-width: 582px; + } + [purpose='button-row'] { + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + gap: @inner-gap-s; + padding-top: 16px; + a { + font-weight: 700; + font-size: 14px; + line-height: @text-lineheight; + white-space: nowrap; + } + [purpose='cta-button'] { + cursor: pointer; + background: @core-vibrant-green; + border-radius: 8px; + padding: 8px 16px; + height: 36px; + display: flex; + justify-content: center; + align-items: center; + color: #FFF; + position: relative; + text-decoration: none; + overflow: hidden; + min-width: 140px; + } + [purpose='cta-button']::before { + background: linear-gradient(180deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0) 100%); + opacity: 1; + content: ' '; + position: absolute; + top: 0; + left: -5px; + width: 70%; + height: 100%; + transform: skew(-10deg); + transition: left 0.5s ease-in, opacity 0.50s ease-in, width 0.5s ease-in; + } + [purpose='cta-button']:hover:before { + opacity: 0; + left: 160px; + width: 110%; + } + [purpose='video-button'] { + display: flex; + flex-direction: row; + align-items: center; + cursor: pointer; + color: #192147; + img { + height: 32px; + margin-right: 8px; + } + span { + margin-left: 4px; + display: inline-block; + color: #8B8FA2; + font-size: 12px; + margin-top: 2px; + font-weight: 400; + } + } + } + + + [purpose='page-section'] { + display: flex; + flex-direction: column; + align-items: center; + gap: @inner-gap-xl; + min-width: 0px; + } + [purpose='section-title'] { + display: flex; + flex-direction: column; + align-items: center; + // gap: @inner-gap-s; + } + [purpose='section-intro'] { + max-width: 800px; + } + [purpose='section-heading'] { + text-align: center; + display: flex; + flex-direction: column; + align-items: center; + gap: @inner-gap-s; + } + + [purpose='feature-card-deck'], [purpose='feature-cards'] { + + display: flex; + align-items: flex-start; + align-content: flex-start; + gap: @inner-gap-s; + align-self: stretch; + flex-wrap: wrap; + + // justify-content: center; + } + + [purpose='feature-card'] { + display: flex; + align-self: stretch; + min-width: 288px; + max-width: 31%; + padding: 32px 32px; + flex-direction: column; + align-items: flex-start; + justify-content: space-between; + flex: 1 0 0; + border-radius: 16px; + border: 1px solid #E2E4EA; + gap: @inner-gap-s; + [purpose='card-title'] { + color: #192147; + + /* Title XS */ + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 700; + line-height: @heading-lineheight; + } + [purpose='card-body'] { + color: #515774; + + /* Body/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 400; + line-height: 20px; /* 142.857% */ + align-self: stretch; + gap: 16px; + display: flex; + flex-direction: column; + } + [purpose='card-footer'] { + border-top: 1px solid #E2E4EA; + margin-top: 16px; + padding-top: 24px; + width: 100%; + justify-self: flex-end; + p { + margin-bottom: 0px; + color: #8B8FA2; + + /* Body/XS */ + font-family: Inter; + font-size: 12px; + font-style: normal; + font-weight: 400; + line-height: 18px; + } + [purpose='callout'] { + color: #009A7D; + + /* Body/Emphasis/MD */ + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 700; + line-height: @text-lineheight; + } + } + } + + [purpose='table-legend'] { + display: flex; + flex-direction: row; + gap: @inner-gap-xs; + align-items: center; + justify-content: center; + div { + display: flex; + flex-direction: row; + align-items: center; + gap: @inner-gap-xxs; + img { + height: 16px; + } + } + [purpose='tilde'] { + font-weight: 800; + } + } + [purpose='comparison-table-section'] { + width: 100%; + } + [purpose='comparison-table'] { + margin-top: 32px; + border-radius: 8px; + outline: 1px solid #E2E4EA; + thead { + background: #FFF; + border-bottom: 1px solid #E2E4EA; + th { + border-top: none; + color: #192147; + padding: 12px 24px; + + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: @text-lineheight; + // border-right: 1px solid #E2E4EA; + &:last-of-type { + // border-right: none; + } + } + } + tbody { + tr { + border-bottom: 1px solid #E2E4EA; + &:last-of-type { + border-bottom: none; + } + &:nth-of-type(even) { + background: #F9FAFC; + } + td { + // height: 124px; + padding: 12px 24px; + align-items: flex-start; + align-self: stretch; + color: #515774; + /* Body XS (FKA p small) */ + font-family: Inter; + font-size: 12px; + font-style: normal; + font-weight: 400; + line-height: @text-lineheight; + img { + display: inline-block; + height: 16px; + } + [purpose='table-cell'] { + display: flex; + flex-direction: row; + align-items: center; + gap: 8px; + p { + margin-bottom: 0px; + } + } + [purpose='tilde'] { + font-weight: 800; + display: inline-block; + padding: 0 3px 0 4px; + justify-content: center; + align-items: center; + } + } + td:first-of-type { + color: #192147; + + + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 400; + line-height: @text-lineheight; + } + td:nth-of-type(2) { + border-left: none; + border-right: none; + } + + td:nth-of-type(4) { + border-left: 1px solid #E2E4EA; + } + } + } + } + [purpose='mobile-comparison-table'] { + display: none; + flex-direction: column; + gap: @inner-gap-xs; + [purpose='mobile-comparison'] { + display: flex; + flex-direction: column; + justify-content: center; + align-items: flex-start; + align-self: stretch; + border-radius: 8px; + outline: 1px solid #E2E4EA; + font-size: 14px; + color: #515774; + [purpose='product-name'] { + display: flex; + padding: 12px 24px; + align-items: center; + color: #515774; + + /* Body/Emphasis/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: @text-lineheight; + } + [purpose='capability'] { + display: flex; + padding: 12px 24px; + align-items: center; + align-self: stretch; + border-bottom: 1px solid #E2E4EA; + color: #515774; + + /* Body/Emphasis/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: @text-lineheight; + } + [purpose='fleet-row'] { + display: flex; + // padding: 12px 24px; + align-items: center; + align-self: stretch; + border-bottom: 1px solid #E2E4EA; + } + [purpose='jamf-row'] { + display: flex; + // padding: 12px 24px; + align-items: center; + align-self: stretch; + background: #F9FAFC; + } + + [purpose='status'] { + display: flex; + padding: 12px 24px; + align-items: center; + gap: 8px; + flex: 1 0 0; + align-self: stretch; + flex-direction: row; + img { + // margin-right: 8px; + height: 16px; + } + [purpose='red-x'] { + height: 12px; + width: 12px; + } + [purpose='tilde'] { + font-weight: 800; + // margin-right: 8px; + display: inline-block; + } + color: #515774; + + /* Body XS (FKA p small) */ + font-family: Inter; + font-size: 12px; + font-style: normal; + font-weight: 400; + line-height: @text-lineheight; + } + } + } + + + [purpose='three-column-features'] { + display: flex; + flex-direction: row; + gap: 64px; + [purpose='feature'] { + text-align: center; + display: flex; + flex-direction: column; + align-items: center; + gap: @inner-gap-xs; + color: #515774; + + /* Body/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 400; + line-height: 20px; /* 142.857% */ + p { + + margin-bottom: 0px; + } + [purpose='step-title'] { + color: #192147; + text-align: center; + + /* Title XS */ + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 700; + line-height: @heading-lineheight; + } + [purpose='step-number'] { + display: flex; + width: 24px; + height: 24px; + padding: 1.25px 8px 1.75px 8px; + justify-content: center; + align-items: center; + border-radius: 12px; + border: 2px solid #009A7D; + color: #009A7D; + + /* Body/Emphasis/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: @text-lineheight; + } + + } + } + [purpose='testimonial-cards'] { + display: flex; + flex-direction: row; + max-width: 800px; + align-items: flex-start; + gap: 32px; + [purpose='testimonial-card'] { + width: 50%; + } + + } + [purpose='testimonial-card'] { + display: flex; + padding: 32px; + flex-direction: column; + align-items: flex-start; + gap: 24px; + align-self: stretch; + justify-content: space-between; + border-radius: 16px; + border: 1px solid #E2E4EA; + background: #FFF; + p { + margin-bottom: 0px; + } + [purpose='testimonial-logo'] { + img { + max-height: 28px; + } + } + + [purpose='testimonial-quote'] { + color: #515774; + + /* Body/MD */ + font-family: Inter; + font-size: 16px; + font-style: italic; + font-weight: 400; + line-height: @text-lineheight; + } + [purpose='testimonial-quote-author-info'] { + display: flex; + // height: 61px; + align-items: center; + gap: 16px; + justify-self: flex-end; + [purpose='profile-image'] { + img { + border-radius: 50%; + height: 48px; + } + } + [purpose='name'] { + color: #192147; + + /* Body/Emphasis/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 700; + line-height: @text-lineheight; + } + [purpose='title'] { + color: #515774; + + /* Body/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 400; + line-height: 20px; /* 142.857% */ + } + } + } + + + [purpose='feature-list-with-image'] { + display: flex; + flex-direction: row; + gap: 48px; + align-items: center; + [purpose='feature-list'] { + width: 50%; + display: flex; + flex-direction: column; + gap: @inner-gap-l; + } + [purpose='feature-image'] { + width: 50%; + display: flex; + max-width: 523.878px; + max-height: 590.566px; + flex-direction: column; + justify-content: center; + align-items: center; + img { + width: 100%; + } + } + + [purpose='feature-list-item'] { + display: flex; + flex-direction: row; + gap: @inner-gap-xs; + p { + margin-bottom: 0px; + } + [purpose='feature-icon'] { + height: 19.2px; + display: flex; + align-items: center; + img { + width: 18px; + } + } + [purpose='feature'] { + display: flex; + flex-direction: column; + gap: @inner-gap-xs; + [purpose='feature-heading'] { + color: #192147; + + /* Title XS */ + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 700; + line-height: @heading-lineheight; + } + + } + } + } + + [purpose='customer-stories-cards'] { + display: flex; + align-items: flex-start; + align-content: flex-start; + gap: 64px 32px; + align-self: stretch; + flex-wrap: wrap; + justify-content: center; + [purpose='testimonial-card'] { + display: flex; + min-width: 288px; + flex-direction: column; + align-items: flex-start; + flex: 1 0 0; + } + } + [purpose='banner-container'] { + background: linear-gradient(0deg, #E9F4F4 25.73%, #FFF 94.97%); + padding: 64px; + } + + [purpose='call-to-action-cards'] { + display: flex; + flex-direction: row; + gap: @inner-gap-s; + + } + [purpose='cta-card'] { + display: flex; + padding: 32px 32px; + flex-direction: column; + cursor: pointer; + text-align: center; + align-items: center; + flex: 1 0 0; + border-radius: 16px; + gap: 16px; + border: 1px solid #E2E4EA; + background: #FFF; + p { + margin-bottom: 0px; + } + [purpose='cta-icon'] { + img { + height: 39px; + } + } + [purpose='cta-heading'] { + color: #192147; + text-align: center; + + /* Title XS */ + font-family: Inter; + font-size: 16px; + font-style: normal; + font-weight: 700; + line-height: @heading-lineheight; + } + [purpose='cta-text'] { + color: #515774; + text-align: center; + + /* Body/SM */ + font-family: Inter; + font-size: 14px; + font-style: normal; + font-weight: 400; + line-height: 20px; /* 142.857% */ + } + } + + [purpose='video-modal'] { + [purpose='modal-dialog'] { + width: 100%; + max-width: 100%; + } + [purpose='modal-content'] { + max-width: 1140px; + height: 641px; + background-color: transparent; + box-shadow: none; + border: none; + padding: 0px; + margin-top: 150px; + margin-left: auto; + margin-right: auto; + [purpose='modal-close-button'] { + top: -40px; + right: 0px; + border-radius: 50%; + width: 32px; + height: 32px; + padding: 0px 0px 4px 0px; + background-color: #192147; + color: #FFF; + opacity: 1; + } + } + iframe { + border-radius: 16px; + width: 1140px; + height: 641px; + } + } + + + + @media(max-width: 1200px) { + [purpose='feature-card-deck'] { + + [purpose='feature-card'] { + max-width: unset; + min-width: 272px; + } + } + [purpose='feature-cards'] { + [purpose='feature-card'] { + max-width: unset; + } + } + [purpose='hero-logos'] { + margin-top: 48px; + } + [purpose='feature-list-with-image'] { + gap: @inner-gap-l; + } + [purpose='landing-page-content'] { + gap: @section-gap-l; + } + } + @media(max-width: 991px) { + [purpose='landing-page-container'] { + padding: 48px; + } + [purpose='page-section'] { + gap: @inner-gap-l; + } + [purpose='banner-container'] { + padding: 48px; + } + [purpose='three-column-features'] { + gap: 48px; + } + [purpose='feature-list-with-image'] { + flex-direction: column; + gap: @inner-gap-l; + [purpose='feature-list'] { + width: 100%; + gap: @inner-gap-m; + } + [purpose='feature-image'] { + width: 100%; + } + } + [purpose='feature-card-deck'] { + justify-content: stretch; + [purpose='feature-card']:last-of-type { + display: none; + } + + } + [purpose='feature-card'] { + display: flex; + min-width: 288px; + max-width: unset; + padding: 32px 32px; + flex-direction: column; + align-items: flex-start; + flex: 1 0 0; + + } + [purpose='customer-stories-cards'] { + gap: @inner-gap-l @inner-gap-m; + } + [purpose='video-modal'] { + [purpose='modal-dialog'] { + width: 100%; + max-width: 100%; + } + [purpose='modal-content'] { + max-width: 720px; + height: 405px; + } + iframe { + width: 720px; + height: 405px; + } + } + } + @media(max-width: 767px) { + + [purpose='landing-page-container'] { + padding: 32px; + } + [purpose='banner-container'] { + padding: 32px; + } + [purpose='landing-page-content'] { + gap: @section-gap-m; + } + [purpose='hero-logos'] { + margin-top: 32px; + } + [purpose='comparison-table'] { + display: none; + } + [purpose='mobile-comparison-table'] { + margin-top: 16px; + display: flex; + } + [purpose='feature-card-deck'], [purpose='feature-cards'] { + flex-direction: column; + } + [purpose='feature-card'] { + display: flex; + width: 100%; + max-width: unset; + padding: 32px 32px; + flex-direction: column; + align-items: flex-start; + flex: 1 0 0; + } + [purpose='three-column-features'] { + flex-direction: column; + gap: @inner-gap-m; + } + [purpose='testimonial-cards'] { + display: flex; + flex-direction: column; + align-items: flex-start; + width: 100%; + gap: 32px; + [purpose='testimonial-card'] { + width: 100%; + } + } + [purpose='customer-stories-cards'] { + gap: @inner-gap-m; + flex-direction: column; + [purpose='testimonial-card'] { + width: 100%; + &:last-of-type { + display: none; + } + } + } + [purpose='call-to-action-cards'] { + display: flex; + flex-direction: column; + gap: @inner-gap-s; + + } + [purpose='video-modal'] { + [purpose='modal-dialog'] { + max-width: 97vw; + } + [purpose='modal-content'] { + max-width: 540px; + height: 304px; + } + iframe { + width: 540px; + height: 304px; + } + } + } + @media(max-width: 575px) { + + [purpose='hero-heading'] { + h1 { + font-size: 32px; + } + } + h2 { + font-size: 24px; + } + [purpose='button-row'] { + width: 100%; + + [purpose='cta-button'] { + width: 100%; + } + flex-direction: column; + } + + [purpose='video-modal'] { + [purpose='modal-content'] { + width: 95vw; + height: calc(~'9/16 * 95vw'); + } + iframe { + width: 95vw; + height: calc(~'9/16 * 95vw'); + } + } + + } + +} diff --git a/website/config/routes.js b/website/config/routes.js index 69ef70fe4d..5341da9575 100644 --- a/website/config/routes.js +++ b/website/config/routes.js @@ -609,6 +609,15 @@ module.exports.routes = { } }, + 'GET /jamf-alternative': { + action: 'landing-pages/view-jamf-alternative', + locals: { + currentSection: 'platform', + pageTitleForMeta: 'Replace Jamf with confidence', + pageDescriptionForMeta: 'Replace Jamf with Fleet. Manage devices faster, review changes safely, and deploy across macOS, Windows, and Linux from one platform.' + } + }, + 'GET /partners': { action: 'view-partners', locals: { diff --git a/website/views/layouts/layout.ejs b/website/views/layouts/layout.ejs index 990b9460e4..98e6b62b2f 100644 --- a/website/views/layouts/layout.ejs +++ b/website/views/layouts/layout.ejs @@ -918,6 +918,7 @@ + diff --git a/website/views/pages/homepage.ejs b/website/views/pages/homepage.ejs index 5173c59867..3493fc4163 100644 --- a/website/views/pages/homepage.ejs +++ b/website/views/pages/homepage.ejs @@ -1,6 +1,6 @@
- We are experiencing a high volume of Jamf replacement inquiries. Click here to compare Fleet vs. Jamf + We are experiencing a high volume of Jamf replacement inquiries. Click here to compare Fleet vs. Jamf
<%/* Hero container */%>
diff --git a/website/views/pages/landing-pages/jamf-alternative.ejs b/website/views/pages/landing-pages/jamf-alternative.ejs new file mode 100644 index 0000000000..b1cdfcbff2 --- /dev/null +++ b/website/views/pages/landing-pages/jamf-alternative.ejs @@ -0,0 +1,801 @@ +
+
+
+
+
+

Ready to move?

+

Replace Jamf with confidence

+
+
+

Whether you're managing 500 endpoints or 50,000, Fleet helps you consolidate tools, automate operations, and strengthen compliance.

+
+ <%// gap %> + + <%// gap %> +
+ +
+
<%// page-hero %> + +
+
+
+

Why IT leaders are switching from Jamf

+
+
+

Reduce tool sprawl, cut licensing costs, and gain confidence in your endpoint posture — all while modernizing your team's workflow.

+
+
<%// section-heading %> + <%// gap %> +
+
+
+

+ Consolidate tools, cut costs +

+

Replace Jamf + Intune + ad-hoc Linux scripts with one platform. Eliminate duplicate licenses, reduce vendor management overhead, and simplify procurement across every OS.

+
+
+

114% ROI achieved by Foursquare

+
+
<% // feature-card %> +
+
+

No add-ons

+

Jamf charges extra for Protect and Executive Threat Protection. Fleet includes vulnerability detection, CIS benchmarks, YARA malware scanning, and automated remediation in every license.

+
+
+

1 license covers everything

+
+
<% // feature-card %> +
+
+

Real-time compliance confidence

+

Stop relying on periodic scans. Fleet policies evaluate device compliance continuously and provide real-time dashboards that satisfy auditors, leadership, and security teams.


+
+
+

Seconds to verify CVEs, not hours

+
+
<% // feature-card %> +
+
+

True cross-platform management

+

Jamf specializes in Apple. Fleet manages macOS, Windows, Linux, iOS, iPadOS, Android, and ChromeOS from one console. One inventory, one policy engine, one API.

+
+
+

7 platforms from one console

+
+
<% // feature-card %> +
+
+

No vendor lock-in

+

Fleet's codebase is public. Your security team can audit it. Your engineers can contribute. You choose self-hosted or Fleet-hosted cloud — with 100% feature parity either way.

+
+
+

MIT licensed open core

+
+
<% // feature-card %> +
+
+

Gartner-recognized momentum

+

Fleet's approach to open device management has been validated in Gartner's 2026 reports, highlighting GitOps, scale, transparency, and real-time data as differentiators.

+
+
+

2026 Gartner recognition

+
+
<% // feature-card %> +
+
<%// page-section %> + + +
+
+
+

Head to Head

+

Fleet vs. Jamf at a glance

+
+
+

A clear comparison of the capabilities IT leaders evaluate when choosing an endpoint management platform.

+
+
<%// section-heading %> + <%// gap %> +
+
+
+ checkmark + Full support +
+
+ ~ + Limited +
+
+ ❌ + No support +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
CapabilityFleetJamf
Platform support
checkmark + macOS, Windows, Linux, iOS, iPadOS, Android, ChromeOS
~ macOS, iOS, iPadOS, tvOS, visionOS; Android
Architecture
checkmarkAPI-first, open-core
GUI-first, proprietary
GitOps / Infrastructure as Code +
+ checkmark + Built-in, first-class support +
+
+
+ ❌ No native support +
+
AI-accelerated management +
+ checkmark + Natural language config via GitOps + any LLM +
+
+
+ ❌ + No AI workflow integration +
+
Real-time device reports +
+ checkmark + Live reports across all platforms +
+
+
+ ~ Limited to Jamf-defined inventory fields +
+
Vulnerability detection +
+ checkmark + Included — CVE mapping, YARA, CIS benchmarks +
+
~ Requires Jamf Protect (additional purchase)
Automated remediation +
+ checkmark + Policy-driven scripts, software installs, self-service +
+
~ Smart Groups + scripts (less automated)
Pricing model +
+ checkmark + Single license, all features included +
+
Per-device; security features cost extra
Deployment flexibility +
+ checkmark + Self-hosted or Fleet-hosted, 100% parity +
+
Jamf Cloud or on-premise (DDM only in Cloud)
+
+
+ + +
+
+ Platform support +
+
+
Fleet
+
+ checkmarkmacOS, Windows, Linux, iOS, iPadOS, Android, ChromeOS +
+
+
+
Jamf
+
+ ~ macOS, iOS, iPadOS, tvOS, visionOS; Android +
+
+
+ + + +
+
+ Architecture +
+
+
Fleet
+
+ checkmarkAPI-first, open-core +
+
+
+
Jamf
+
+ GUI-first, proprietary +
+
+
+ + +
+
+ GitOps / Infrastructure as Code +
+
+
Fleet
+
+ checkmarkBuilt-in, first-class support +
+
+
+
Jamf
+
+ ❌ No native support +
+
+
+ +
+
+ AI-accelerated management +
+
+
Fleet
+
+ checkmark Natural language config via GitOps + any LLM +
+
+
+
Jamf
+
+ ❌ + No AI workflow integration +
+
+
+
+
+ Real-time device reports +
+
+
Fleet
+
+ checkmark Live reports across all platforms +
+
+
+
Jamf
+
+ ~ Limited to Jamf-defined inventory fields +
+
+
+
+
+ Vulnerability detection +
+
+
Fleet
+
+ checkmark Included — CVE mapping, YARA, CIS benchmarks +
+
+
+
Jamf
+
+ ~ Requires Jamf Protect (additional purchase) +
+
+
+
+
+ Automated remediation +
+
+
Fleet
+
+ checkmarkPolicy-driven scripts, software installs, self-service +
+
+
+
Jamf
+
+ ~ Smart Groups + scripts (less automated) +
+
+
+
+
+ Pricing model +
+
+
Fleet
+
+ checkmark Single license, all features included +
+
+
+
Jamf
+
+ Per-device; security features cost extra +
+
+
+
+
+ Deployment flexibility +
+
+
Fleet
+
+ checkmark Self-hosted or Fleet-hosted, 100% parity +
+
+
+
Jamf
+
+ Jamf Cloud or on-premise (DDM only in Cloud) +
+
+
+
+
+ +
<%// page-section %> + <%// gap %> +
+
+
+

Migration

+

Migrating from Jamf is easier than you think

+
+
+

Fleet offers free migration services and dedicated support. Apple's native MDM migration flow means no factory resets and minimal user disruption.

+
+
<%// section-heading %> + <%// gap %> +
+
+
1
+

Assess & plan

+

Inventory your Jamf environment. Use Fleet's Jamf-to-Fleet terminology guide to map profiles, groups, and extension attributes to Fleet equivalents.

+
<%// feature %> + +
+
2
+

Run in parallel

+

Deploy Fleet alongside Jamf. Enroll a pilot group, validate configurations, and build team confidence. Fleet's agent runs without conflict alongside Jamf.

+
<%// feature %> + +
+
3
+

Stage the cutover

+

Migrate devices by department or location using Apple's seamless MDM migration. Thumbtack moved 90%+ of Macs with zero IT intervention.

+
<%// feature %> +
+ <%// gap %> +
+
+
+ Stripe +
+
+

"I just moved 10,000 Macs to Fleet."

+
+
+
+ Wes Whetstone +
+
+

Wes Whetstone

+

Staff Client Platform Engineer

+
+
+
<%// testimonial %> +
+
+ Foursquare +
+
+

"One of the easiest, quickest, smoothest migrations I've ever done."

+
+
+
+ Mike Meyer +
+
+

Mike Meyer

+

Senior Manager, Corporate Engineering

+
+
+
<%// testimonial %> +
+ +
<%// page-section %> + +
+
+
+

AI + GitOps

+

AI-accelerated device management,
+ only possible with GitOps

+
+
+

Fleet's GitOps approach unlocks something no GUI-first MDM can offer: the ability to use AI assistants to propose, review, and deploy device configuration changes — with full human oversight.

+
+
<%// section-heading %> + <%// gap %> +
+
+
+
+ 💬 +
+
+

Natural language configuration

+
+

+ Describe a policy change, CVE fix, or configuration update in plain English. Your AI coding assistant generates the YAML, and you review it in a pull request before it ships. +

+
+
+
+
+
+ 🤖 +
+
+

AI-assisted policy creation

+
+

+ Fleet uses AI to generate policy descriptions and remediation steps, speeding up compliance workflows and making policies understandable for non-technical stakeholders. +

+
+
+
+
+
+ 🦾 +
+
+

Works with any LLM

+
+

+ Use ChatGPT, Claude, Copilot, or air-gapped models. Connect tools like Kilocode with Slack or Teams. Fleet's open format works with your existing AI stack — no vendor lock-in. +

+
+
+
+
+
+ 🛡️ +
+
+

AI detection and governance

+
+

+ Track AI tool usage and shadow IT across your fleet. Monitor risky IDE extensions, detect unauthorized AI agents, and enforce governance policies on AI usage. +

+
+
+
+
+
+ Infrastructure as code +
+
+
<%// page-section %> + <%// gap %> + +
+
+
+

Practitioner Value

+

Built for the way IT admins actually work

+
+
+

Fleet gives admins real-time data, scriptable automation, and tools that work across every OS — without the constraints of a GUI-only platform.

+
+
<%// section-heading %> + <%// gap %> +
+ +
+
+

Zero-touch enrollment + MDM migration

+

Full Apple Business Manager integration with zero-touch deployment. Apple's built-in MDM migration flow lets you move devices from Jamf without factory resets or user disruption.

+
+
+

vs. Jamf: Feature parity on Apple enrollment; Fleet adds Windows and Linux enrollment

+
+
<% // feature-card %> + +
+
+

Live reports across every OS

+

Ask your fleet any question and get answers in seconds. Check disk encryption, find vulnerable software, verify firewall rules — across Mac, Windows, and Linux simultaneously.

+
+ +
+

vs. Jamf: Limited to pre-defined inventory attributes and Apple-only scope

+
+
<% // feature-card %> + +
+
+

Software management and patching

+

Deploy Fleet-maintained apps, custom packages, and App Store apps. Automate patch management with policies that detect outdated software and trigger installs — including self-service options for end users.

+
+
+

vs. Jamf: Similar Apple app catalog, but Fleet covers all platforms in one workflow

+
+
<% // feature-card %> + +
+
+

Infrastructure as code

+

Manage profiles, policies, and software in version-controlled YAML. Peer review changes in pull requests. Automate deployments with CI/CD. Roll back mistakes with a single git revert.

+
+
+

vs. Jamf: No native GitOps — changes are GUI-only with no built-in version history

+
+
<% // feature-card %> + +
+
+

CIS benchmarks out of the box

+

Fleet ships with complete CIS benchmark queries for macOS and Windows — ready to run. No additional products, no additional cost. Monitor compliance continuously, not periodically.

+
+
+

vs. Jamf: Requires Jamf Protect (separate license) for equivalent security checks

+
+
<% // feature-card %> + +
+
+

Cross-platform scripting

+

Execute scripts on macOS, Windows, and Linux hosts directly from the Fleet UI or API. Automate remediation with policy-triggered scripts. No juggling separate tools for each OS.

+
+
+

vs. Jamf: Scripts only run on Apple devices

+
+
<% // feature-card %> + +
+
+

API-first — automate everything

+

Every feature in Fleet's UI is available 1:1 via API. Build integrations with Jira, Slack, Snowflake, Splunk, Okta, and more. Pipe data to your SIEM in real time.

+
+
+

vs. Jamf: Multiple APIs with inconsistent coverage; less automation-friendly

+
+
<% // feature-card %> + +
+
+

Linux as a first-class citizen

+

Fleet manages Linux with the same depth as macOS and Windows — disk encryption, software deployment, configuration profiles, and full visibility. No compromises.

+
+
+

vs. Jamf: No Linux support whatsoever

+
+
<% // feature-card %> +
+
+
+
<%// page-section %> + + <%// gap %> + +
+
+
+

Customer Stories

+

Hear from teams that made the switch

+
+
+

Organizations across FinTech, SaaS, gaming, healthcare, and more trust Fleet to manage their endpoints.

+
+
<%// section-heading %> + <%// gap %> +
+
+
+ Fastly logo +
+
+

"Fleet enabled us to consolidate our patchwork of endpoint tools with a single platform, eliminating complexity and cutting licensing costs."

+
+
+
+ Dan Jackson +
+
+

Dan Jackson

+

Sr Manager, Systems Engineering

+
+
+
<%// testimonial %> +
+
+
+
+

"We wanted an open-source MDM to easily use infrastructure as code, deliver the best possible experience for our employees, and make security happy."

+
+
+
+ Kenny Botelho +
+
+

Kenny Botelho

+

Client Platform IT Engineer

+
+
+
<%// testimonial %> +
+
+ Conductor one logo +
+
+

"Fleet is incredibly easy to deploy and perfect for lean IT teams. It's everything we need in a device management platform, simple, efficient, and powerful."

+
+
+
+ Chayce O'Neal +
+
+

Chayce O'Neal

+

Head of IT

+
+
+
<%// testimonial %> +
+
+ Flock logo +
+
+

"This is not just production osquery, but actually a way bigger opportunity than even something like Airwatch or Jamf."

+
+
+
+ Eric Tan +
+
+

Eric Tan

+

CIO & CSO

+
+
+
<%// testimonial %> +
+
+ Ghost logo +
+
+

"Fleet made the process of migrating fast, easy, and simple. We're excited to work with a team that's aligned with us on open source."

+
+
+
+ John O'Nolan +
+
+

John O'Nolan

+

Founder & CEO

+
+
+
<%// testimonial %> +
+
+ +
+ +
<%// page-section %> + + + +
<%// content %> +
<%// container %> +
+
+
+
+

Ready to move?

+

Replace Jamf with confidence

+
+
+

Whether you're managing 500 endpoints or 50,000, Fleet helps you consolidate tools, automate operations, and strengthen compliance.

+
+
<%// section-heading %> +
+
+
+ 🎯 +
+

+ Personalized demo +

+

+ See Fleet managing Mac, Windows, and Linux — tailored to your environment. +

+
+
+
+ 🔄 +
+

+ Free migration +

+

+ Fleet offers complimentary migration support for teams switching from Jamf. +

+
+
+
+ 🛠️ +
+

+ GitOps workshop +

+

+ Join an in-person workshop and see GitOps for device management in action. +

+
+ +
+
<%// page-section %> +
+ <%/* Cloud city banner */%> + + + + +
+<%- /* Expose server-rendered data as window.SAILS_LOCALS :: */ exposeLocalsToBrowser() %>