Changes:
- Removed the /meetups page, and added a redirect going to
/gitops-workshop
- Changed the route for the query generator back to /query-generator
(was /report-generator), and updated links going to that page.
## Summary
- Changed the "See how it works" button on the homepage hero section to
navigate to https://fleetdm.com/gitops-workshop instead of opening the
video modal.
- Commented out the "3 mins" kicker text using EJS template comments
(code preserved but not rendered).
- The old video modal code (`clickOpenVideoModal`) remains in the
codebase untouched.
## Changes
`website/views/pages/homepage.ejs` — Updated the hero "See how it works"
link:
- Replaced `@click="clickOpenVideoModal('fleet-in-three-minutes')"` with
`href="https://fleetdm.com/gitops-workshop"`
- Wrapped `<span>3 mins</span>` in `<%/* ... */%>` EJS comments
---
Built for [Mike
McNeil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1777602444215539)
by [Kilo for Slack](https://kilo.ai/slack)
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Changes:
- Updated the docs-nav-and-search component to support a new
`searchFilter` value
- Updated the search filter on pages in the "Controls" section of the
docs.
In response to https://github.com/fleetdm/fleet/pull/44398
<img width="963" height="423" alt="image"
src="https://github.com/user-attachments/assets/023fe231-2d00-461e-a97b-82eddccbe011"
/>
## Summary
- Removed the uppercase eyebrow text (`<h4>`) that appeared above the
main hero heading on the homepage
- Added the same text ("Open MDM + patching + vuln management for every
OS.") as a styled subtitle paragraph below the `<h1>` heading
- Applied the specified styles: color #515774, Inter font, 16px, weight
400, line-height 24px
## Changes
- `website/views/pages/homepage.ejs` — Removed `<h4>` eyebrow, added `<p
purpose="hero-subtitle">` below the heading
- `website/assets/styles/pages/homepage.less` — Added
`[purpose='hero-subtitle']` styles within the hero-text block
---
Built for [Michael
Thomas](https://fleetdm.slack.com/archives/D0AL6RD36GL/p1777554126602589)
by [Kilo for Slack](https://kilo.ai/slack)
---------
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
modern device management image update
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Style**
* Updated feature image assets on multiple pages with higher resolution
variants
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Apparently they actually said "GitOps" and not "infrastructure as code".
The quote at the bottom of the page was incorrect. Now they are both
right.
Thanks for the catch @eashaw
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Updated website testimonials and case study quotes with refreshed
terminology and messaging to better reflect current positioning.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Related to https://github.com/fleetdm/confidential/issues/15609
Changes:
- Updated the logo carousel component
- Updated testimonials
- Removed unused images in the website's assets folder
- Updated the quote on the open position template page
- Removed the unused personalized quote on the device management page.
- Updated the quotes on the contact page
## Summary
- Updated the hero kicker text from "High-agency device management" to
"Open MDM + patching + vuln management for every OS"
- Changed the hero heading from "Configure, update, and secure all your
devices like it's 2026" to "Manage, update, and secure all your devices
like it's 2026"
## Changes
- `website/views/pages/homepage.ejs` — Updated hero kicker (`<h4>`) and
heading (`<h1>`) copy only. No CSS, image, or badge changes.
---
Built for [Mike
McNeil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1777480833207639?thread_ts=1777387080.444799&cid=D0AFASLRHNU)
by [Kilo for Slack](https://kilo.ai/slack)
---------
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Mike McNeil <mikermcneil@users.noreply.github.com>
## Summary
- Comments out the blue announcement banner at the top of the
fleetdm.com homepage (`website/views/pages/homepage.ejs`)
- The banner is wrapped in EJS comment syntax (`<%/* ... */%>`) so it
can be easily re-enabled when there's a new announcement
- No content was deleted — just hidden
## Changes
**`website/views/pages/homepage.ejs`** (lines 2–6): Wrapped the
`[purpose="announcement-banner"]` div in an EJS block comment.
---
Built for [Mike
McNeil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1777479319597209?thread_ts=1777387080.444799&cid=D0AFASLRHNU)
by [Kilo for Slack](https://kilo.ai/slack)
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Moved main Fastly quote up so it is after the "ClickOps does not scale"
section (closer to fold).
Also changed the quote from "GitOps" to "infrastructure as code" since
our lower repeated version of the same quote says IaC, and it aligns
more with the page overall, and it is likely the actual quote.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Updated testimonial on the infrastructure-as-code page to reflect
current messaging.
* **Style**
* Improved layout and alignment in desktop and mobile comparison views
for more consistent presentation.
* Minor markup tidy-up to ensure cleaner page formatting.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Updated tables styles
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Style**
* Updated comparison table visuals: added uniform left borders on table
cells, moved emphasis to the first column (stronger font weight) and
removed prior special highlighting from the third column; minor
formatting and whitespace cleanups.
* **Accessibility**
* Improved table header semantics for screen readers by converting the
header cell to a proper column header and adding an accessible label.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Dan Gordon <daniel@fleetdm.com>
Fixed comparison table with @danbgordon.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Updated "ClickOps" column descriptions in the infrastructure-as-code
capability comparison table to clarify distinctions between
GUI/web-based and GitOps-based approaches across key management areas.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Eric <eashaw@sailsjs.com>
Updated text. Sorry, I brought in the wrong text from a different
template 🙏
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Updated infrastructure-as-code page hero section with revised headline
and supporting copy
* Enhanced messaging to emphasize managing devices as code with version
control and pull-request workflows
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary
- Hides the "Request Fleet swag" sidebar CTA on the
`/docs/get-started/why-fleet` page (the default docs landing page)
- Adds `'Why Fleet'` to the title exclusion list in the `v-if` condition
on the right-sidebar swag CTA in
`website/views/pages/docs/basic-documentation.ejs`
- The swag CTA continues to appear on all other docs pages as before
## Changes
**`website/views/pages/docs/basic-documentation.ejs`** (line 59): Added
`'Why Fleet'` to the array of excluded page titles in the `v-if`
directive that controls visibility of the right-sidebar swag CTA.
Built for [Mike
McNeil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1777339712703759)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Closes: https://github.com/fleetdm/confidential/issues/14625
Changes:
- updated the layout and content of the /infrastructure-as-code page to
match the latest wireframes
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added comparison tables (desktop + mobile) comparing ClickOps vs.
Git-backed workflows
* New customer card grid showcasing organizations managing devices as
code
* Expanded methodology feature blocks with dedicated imagery and a
workshop CTA
* New AI-focused banner promoting "Skip the ticket queue"
* **Style**
* Full redesign of the Infrastructure-as-Code page, hero, and layout
hierarchy
* Updated quote, table, card and responsive grid styling; refined
spacing and typography
* Replaced older testimonial and legacy sections with the new layout and
content
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Changes:
- Unpublished a case study (I will be reopening a Draft PR to add it)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Style**
* Updated styling for case study quote author images
* **Chores**
* Removed Proton case study from customer stories navigation menu and
featured stories section on the customers page
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Add Proton case study for review
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added Proton as a featured customer with a case study card on the
customers page, including logo, summary blurb, and link to the full
story.
* Added Proton to the "More customer stories" sidebar for easy
navigation to their case study.
* **Style**
* Case-study author images now render as circular avatars.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: johnjeremiah <jjeremiah@gmail.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Troubleshooting activecampaign tag not firing from the head.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Chores**
* Adjusted analytics/tracking script so it's emitted only in production
and moved to load near the end of the page, reducing impact on initial
page rendering; the script is omitted in non-production environments.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Changes:
- Added new fields to forms that deliver emails
- Updated the actions called by those forms to return a success response
if the new input is provided
- removed two routes for unused actions
- Removed the button from the deal registration success state
Changes:
- Added a [comma](https://fleetdm.com/handbook/company/writing#commas)
to the homepage hero
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Style**
* Updated homepage headline text with improved grammar and clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Changes:
- Updated the input validation and added an invalidEmailDomain exit to
the deliver-deal-registration-submission and
deliver-partner-registration-submission actions
- Updated the input validation in the
deliver-whitepaper-download-request and deliver-webinar-access-request
actions
- Added error messages to the forms on the partners page for the added
exits
- Updated the `bannedEmailDomainsForCSRSigning` and
`bannedEmailDomainsForWebsiteSubmissions` config values
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Blocked submissions from restricted email domains with a clear error
response and a prompt to use a work email.
* **Bug Fixes**
* Strengthened email-format and required-field validation across
registration and request forms.
* Restricted partner registration type options to accepted values.
* **Chores**
* Added a domain to the denylist used for website submissions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Closes: https://github.com/fleetdm/fleet/issues/39986
Changes:
- Updated the /remediate page to show a different step 1 for Windows
users.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Platform-aware remediation UI: the first remediation step now shows
system-tray instructions and a Windows-specific image for Windows
clients, while non-Windows users continue to see the original menu-bar
instructions and image.
* The page now detects Windows clients and surfaces the appropriate
guidance automatically.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Closes: https://github.com/fleetdm/fleet/issues/43578
Changes:
- Renamed the /query-library page to be /report-library, and added a
redirect
- Renamed the query-detail template page to report-details, and added
redirects for the query pages.
- Updated the docs nav to link to the "reports" page instead of queries
- Updated mentions of query/queries to be "report/reports"
- Renamed the query generator to be the report generator, and added a
redirect
- Updated the sitemap to use the new URLs for report-related pages
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added dedicated "Reports" library and details pages and client
bundles.
* **Refactor**
* Renamed "Queries" to "Reports" across UI, routes, page headings, and
labels (legacy redirects added).
* Updated generator branding from "Query robot" to "Report robot" and
updated tooltips/messages.
* **Chores**
* Updated sitemap and navigation to reference /reports and report detail
URLs.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Changes:
- Created spacing.less, a file that contains the common
padding/margin/gap values used on the website
- Updated containers.less to contain mixins for page containers
- Added feature-blocks.less, a file that contains three mixins:
`.feature-with-image()`, `.three-column-features()`, and
`.responsive-feature-row()`
- Added mixins for common text styles to typography.less
- Updated pages to use the new mixins
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Centralized spacing and typography system for consistent, responsive
layouts
* Reusable feature-block patterns for image/text rows and multi-column
feature grids
* **Style**
* Standardized page containers and content areas with responsive padding
and max-widths
* Unified heading/body styles via new typography utilities
* Simplified markup and improved feature image/text alignment and
responsiveness
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
<!-- Add the related story/sub-task/bug number, like Resolves#123, or
remove if NA -->
**Related issue:** Resolves
#https://github.com/fleetdm/confidential/issues/14837
**Related issue:** Resolves
#https://github.com/fleetdm/confidential/issues/14839
Commit 1 - fixes the basic-whitepaper.ejs page so that the LP form
headline is not hard coded to GitOps anymore.
Commit 2 - posts the whitepaper and sets up the LP page
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Updates**
* Form headline on whitepaper download page is now customizable.
* Enhanced email submission feedback handling during download process.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Adds google consent mode code to the ejs and re-orders the flow of tags
to support GCM
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Chores**
* Moved analytics and consent scripts so they load only in production.
* Added a client-side consent mode initializer with explicit default
consent states.
* Explicitly included Google Analytics and Ads loader/configuration for
the site properties.
* Reordered a pair of landing-page scripts to change their load
sequence.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Changes:
- Added support for a new article category: `webinar`.
- Added a template page for webinar articles.
- Added an additional route for webinar articles that users are taken to
to watch the webinar recording.
- Added `deliver-webinar-access-request`, an action that updates CRM
records when users fill out the form on the webinar template page.
- Updated the accepted `intentSignal` values in the
create-historical-event helper.
- Added an article for the "Beyond the hype, practical AI for device
management" webinar.
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Public webinar pages (/webinars/:slug and /watch) with optional
embedded video and a new page template, script, and styles.
* Sidebar signup form (first name, last name, work email) with prefill
for signed-in users and improved scroll behavior.
* POST API to request webinar access: validates email domain, records a
webinar-request event, triggers background CRM sync, and returns a watch
view on success.
* Static-site build now recognizes webinar articles and enforces
embedded-video URL validation.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Changes:
- Updated the new password form and change password form on the
logged-in customer dashboard to have the same password requirements the
register form
- Updated the button styles on the 498 response page
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Strengthened password requirements: 12–48 characters, must include at
least one number and one symbol.
* More specific validation feedback for new/confirm password fields.
* **Bug Fixes**
* Modal focus behavior improved so password inputs receive focus when
opened.
* **Style**
* Primary button styling applied to password actions.
* Link hover visuals enhanced.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Related to: https://github.com/fleetdm/fleet/issues/42738
Changes:
- Uncommented and updated the code that replaces text content in double
parentheses with `<bubble>` elements in build-static-content to not
replace content inside of `<code>` elements
- Created a `<bubble>` component based on the ((bubbles)) in the
Sails.js docs.
Closes https://github.com/fleetdm/fleet/issues/41798
Changes:
- Added an "About Fleet" section to the case study article template
page.
- Removed the "About Fleet" sections from case study articles.
FYI @irenareedy: After this change is merged, you will not need to
include an "About Fleet" section on new case study articles.
## Summary
- Adds an "Edit page" button to the integrations page (`/integrations`),
linking to the source EJS template on GitHub for easy editing
- Follows the same pattern and styling used by the existing edit button
on docs pages (green outline button with pencil icon, hover state)
## Changes
- **`website/views/pages/integrations.ejs`** — Added an edit button link
(`<a purpose="edit-button">`) inside the page heading section, pointing
to
`https://github.com/fleetdm/fleet/edit/main/website/views/pages/integrations.ejs`
- **`website/assets/styles/pages/integrations.less`** — Added styling
for the `[purpose='edit-button']` selector within the page heading,
matching the docs page edit button style (green border, hover fill,
pencil icon spacing)
---
Built for
[mikermcneil](https://fleetdm.slack.com/archives/D0AFASLRHNU/p1775011563009399)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)
---------
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
Changes:
- Updated the comments in the partners page script,
deliver-deal-registration-submission, and
deliver-partner-registration-submission.
- Removed unused @input functions on the partners page.
Changes:
- Added a new action `deliver-partner-registration-submission`
- Added a new page: `/partners` A page where users can submit a form to
register as a partner (reseller or integrations) or register a deal
- Updated `deliver-deal-registration-submission` to work with the new
form.
- Removed the route for the `/deals` page, and added a redirect to the
/partners page.
- Added a new email template `email-partner-registration`
- Added fake template data to the email tempalte preview tool's view
action for the new/updated email templates.
---------
Co-authored-by: Mike Thomas <78363703+mike-j-thomas@users.noreply.github.com>
Closes: https://github.com/fleetdm/fleet/issues/42043
Changes:
- Updated the customers page to only show 12 case study links by
default, and to include a "Load more" button that shows 12 more case
study card links when clicked.
- Renamed the files for the customers page (testimonials » customers)
Changes:
- Moved documentation pages into the docs/ folder
- Updated routes, poicies, and importer.less
- Renamed the "scripts" page to "script-library" to be consistent with
the other landing pages for YAML documentation
- removed a stray console.log() in the new-licence page script
Closes: https://github.com/fleetdm/confidential/issues/14516
Changes:
- Added inputs for individual platforms to the license form on
/new-license
- Updated contact descriptions set by the receive-from-stripe webhook
- Updated supported intentSignal values in the createHistoricalEvent
helper
- Updated the create-quote action to update contact descriptions and
create a historical event
## Summary
- Changed the bottom CTA heading on the homepage from "Reduce agent
sprawl" to "Reduce sprawl" in `website/views/pages/homepage.ejs`.
## Changes
Single text change at line 1474 of the homepage template.
---
Built for [Ashish
Kuthiala](https://fleetdm.slack.com/archives/D0AG9JQ53GA/p1774487659386179)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
## Summary
- Removes the phrase "Want to learn more?" from the blue announcement
banner on the Fleet homepage
- The rest of the banner text and link remain intact: "We are
experiencing a high volume of Jamf replacement inquiries. Click here
compare Fleet vs. Jamf"
## Changes
- `website/views/pages/homepage.ejs`: Removed "Want to learn more?" from
the `<animated-arrow-button>` text content inside the
`announcement-banner` div
- Updated the margin of the announcement banner to match the page
margins at smaller widths.
---
Built for [Ashish
Kuthiala](https://fleetdm.slack.com/archives/D0AG9JQ53GA/p1774487591893139)
by [Kilo for Slack](https://kilo.ai/features/slack-integration)
---------
Co-authored-by: kiloconnect[bot] <240665456+kiloconnect[bot]@users.noreply.github.com>
Co-authored-by: Ashish Kuthiala <53918208+akuthiala@users.noreply.github.com>
Co-authored-by: Eric <eashaw@sailsjs.com>
Closes: https://github.com/fleetdm/confidential/issues/14799
Changes:
- Updated the comparison page template to have a hardcoded subtitle and
removed the requirement for a `articleSubtitle` meta tag for comparison
articles
- Added two calls to action to the comparison page template.