From d9587e8aa5a29500e70657ed2da162538b8e25f7 Mon Sep 17 00:00:00 2001 From: tvijay-akamai Date: Wed, 25 Mar 2026 13:11:33 +0530 Subject: [PATCH 1/6] Added: [UIE-10469] added new marketplace products --- .../public/assets/marketplace/Norsk-dark.svg | 16 + .../public/assets/marketplace/Norsk-light.svg | 16 + .../public/assets/marketplace/clouddat.svg | 453 ++++++++++++++++++ .../marketplace/data-expedition-dark.svg | 1 + .../marketplace/data-expedition-light.svg | 1 + .../norsk_platform_architecture.svg | 154 ++++++ .../assets/marketplace/norsk_process_flow.svg | 42 ++ .../ProductSelectionCard.tsx | 5 +- .../ProductDetails/ProductDetails.tsx | 12 +- .../ProductDetails/ProductDetailsTabs.tsx | 2 +- .../ProductDetails/pages/clouddat.ts | 77 +++ .../Marketplace/ProductDetails/pages/index.ts | 4 + .../ProductDetails/pages/norsk-studio.ts | 72 +++ .../ProductDetails/pages/sftpgo.ts | 68 +-- .../src/features/Marketplace/products.ts | 51 +- .../Marketplace/{shared.ts => shared.tsx} | 33 ++ 16 files changed, 969 insertions(+), 38 deletions(-) create mode 100644 packages/manager/public/assets/marketplace/Norsk-dark.svg create mode 100644 packages/manager/public/assets/marketplace/Norsk-light.svg create mode 100644 packages/manager/public/assets/marketplace/clouddat.svg create mode 100644 packages/manager/public/assets/marketplace/data-expedition-dark.svg create mode 100644 packages/manager/public/assets/marketplace/data-expedition-light.svg create mode 100644 packages/manager/public/assets/marketplace/norsk_platform_architecture.svg create mode 100644 packages/manager/public/assets/marketplace/norsk_process_flow.svg create mode 100644 packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts create mode 100644 packages/manager/src/features/Marketplace/ProductDetails/pages/norsk-studio.ts rename packages/manager/src/features/Marketplace/{shared.ts => shared.tsx} (70%) diff --git a/packages/manager/public/assets/marketplace/Norsk-dark.svg b/packages/manager/public/assets/marketplace/Norsk-dark.svg new file mode 100644 index 00000000000..cdf4cb59270 --- /dev/null +++ b/packages/manager/public/assets/marketplace/Norsk-dark.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/manager/public/assets/marketplace/Norsk-light.svg b/packages/manager/public/assets/marketplace/Norsk-light.svg new file mode 100644 index 00000000000..1528c08c22a --- /dev/null +++ b/packages/manager/public/assets/marketplace/Norsk-light.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/packages/manager/public/assets/marketplace/clouddat.svg b/packages/manager/public/assets/marketplace/clouddat.svg new file mode 100644 index 00000000000..ce1b445fc27 --- /dev/null +++ b/packages/manager/public/assets/marketplace/clouddat.svg @@ -0,0 +1,453 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/manager/public/assets/marketplace/data-expedition-dark.svg b/packages/manager/public/assets/marketplace/data-expedition-dark.svg new file mode 100644 index 00000000000..2b4adb9858b --- /dev/null +++ b/packages/manager/public/assets/marketplace/data-expedition-dark.svg @@ -0,0 +1 @@ +dei_logo2016_hori_rev_rgb \ No newline at end of file diff --git a/packages/manager/public/assets/marketplace/data-expedition-light.svg b/packages/manager/public/assets/marketplace/data-expedition-light.svg new file mode 100644 index 00000000000..1f33194503e --- /dev/null +++ b/packages/manager/public/assets/marketplace/data-expedition-light.svg @@ -0,0 +1 @@ +dei_logo2016_hori_rgb \ No newline at end of file diff --git a/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg b/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg new file mode 100644 index 00000000000..0d5669caed7 --- /dev/null +++ b/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/manager/public/assets/marketplace/norsk_process_flow.svg b/packages/manager/public/assets/marketplace/norsk_process_flow.svg new file mode 100644 index 00000000000..ec4a4184586 --- /dev/null +++ b/packages/manager/public/assets/marketplace/norsk_process_flow.svg @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/manager/src/features/Marketplace/MarketplaceLanding/ProductSelectionCard.tsx b/packages/manager/src/features/Marketplace/MarketplaceLanding/ProductSelectionCard.tsx index 28e44e11c11..10e3423f6d1 100644 --- a/packages/manager/src/features/Marketplace/MarketplaceLanding/ProductSelectionCard.tsx +++ b/packages/manager/src/features/Marketplace/MarketplaceLanding/ProductSelectionCard.tsx @@ -5,6 +5,7 @@ import React from 'react'; import { SelectionCard } from 'src/components/SelectionCard/SelectionCard'; +import { formatTrademarkSymbols } from '../shared'; import { PRODUCT_CARD_GRID_SIZE, PRODUCT_CARD_STYLES } from './styles'; export interface ProductCardData { @@ -71,7 +72,7 @@ export const ProductSelectionCard = React.memo( fontSize: theme.tokens.font.FontSize.Xxxs, // Must come after font })} > - {companyName} + {formatTrademarkSymbols(companyName)} , // Description { })} variant="h1" > - {product.name} + {formatTrademarkSymbols(product.name)} {product.partner && ( { })} variant="body1" > - {product.partner.name} + {formatTrademarkSymbols(product.partner.name)} )} @@ -193,7 +197,7 @@ export const ProductDetails = () => { })} variant="body1" > - {product.shortDescription} + {formatTrademarkSymbols(product.shortDescription)} {/* Tags */} diff --git a/packages/manager/src/features/Marketplace/ProductDetails/ProductDetailsTabs.tsx b/packages/manager/src/features/Marketplace/ProductDetails/ProductDetailsTabs.tsx index e7d6dbbf76b..a442f62ea2f 100644 --- a/packages/manager/src/features/Marketplace/ProductDetails/ProductDetailsTabs.tsx +++ b/packages/manager/src/features/Marketplace/ProductDetails/ProductDetailsTabs.tsx @@ -48,7 +48,7 @@ const MarkdownContentRenderer = ({ content }: { content: string }) => { 'alt', 'style', ], - ALLOWED_TAGS: [...allowedHTMLTagsFlexible, 'img'], + ALLOWED_TAGS: [...allowedHTMLTagsFlexible, 'img', 'sup'], }} textOrMarkdown={content} /> diff --git a/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts b/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts new file mode 100644 index 00000000000..37af98723ab --- /dev/null +++ b/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts @@ -0,0 +1,77 @@ +/** + * Product tab details for slug clouddat. + * + * Content is provided as Markdown strings which are rendered at runtime. + */ + +import type { ProductTabDetails } from '.'; + +const overviewMarkdown = ` +CloudDat® for Akamai is an accelerated file transfer server that lets you upload and download files and objects at gigabits per second from anywhere in the world. CloudDat is purpose-built for moving large data sets as a part of everyday file transfers, cloud ingest projects, cloud migrations, and customer onboarding initiatives. + +CloudDat server software is hosted on an Akamai/Linode compute instance with access to a filesystem or object bucket in the same region. + +CloudDat is not a service: you fully control your instance and storage. We never touch your data, giving you maximum security and control. Setup takes just a few minutes and easy-to-use clients can be downloaded and installed in seconds. + +### Key features + +- **High Performance:** Fastest possible upload from any location across internet, private, and stressed data paths. +- **Cost-Effective:** Simple and predictable pricing with no charges for bandwidth or data size (no per-GB charges) and no lock-in contracts. +- **Security:** CloudDat for Akamai is not a service: you fully control your instance and storage. We never touch your data, giving you maximum security and control. +- **Easy-to-Use:** Setup takes just a few minutes and easy-to-use and deploy clients can be downloaded and installed in seconds. Clients require no installation or administrative privileges: just download and run. It takes mere minutes to install CloudDat's powerful object server on a new or existing compute partner instance. +- **Free Trials:** Obtain free trials of CloudDat for Akamai from Data Expedition, Inc. and see for yourself. + +### Use cases + +**Cloud Migration** + +Transfer bulk data from data-centers or cloud platforms into Akamai storage. Cross-platform CloudDat clients can be deployed for end-user or scripted data transfer. Each CloudDat server deployed in Akamai can receive data at up to three gigabits per second, allowing you to minimize total transfer time. + +**Customer Onboarding** + +New customers and projects often require uploading large amounts of data before work can begin. CloudDat clients are easy to deploy for end-users and automated systems, allowing you to complete this critical stage quickly and begin billable work sooner. + +**Cloud Ingest** + +Many cloud workflows require an ongoing stream of new data. Media post-production, industrial engineering, bioinformatics, and AI model training are just a few examples where cloud processes demand high-bandwidth inputs. + +Ready to try CloudDat® for Akamai for yourself? Contact the Data Expedition, Inc. team to get your Free Trial today. We'll work with you to discuss the specifics of your use case and workflow to recommend the best deployment model for CloudDat® for Akamai to help achieve your accelerated data transfer goals. Simple, easy-to-use, and cost-effective! +`.trim(); + +const documentationMarkdown = ` +| Specification | Details | +| :---- | :---- | +| **Deployment model** | Customer Deployed | +| **Linode services required** | Linux Compute | +| **Supported data storage** | Compute, Block, Object | +| **Client platforms supported** | Linux, Mac, Windows | +| **Security** | AES-128 In Transit, Customer deployed storage | +| **Maximum File/Object size** | 8 Exabytes | +| **Maximum total storage** | Unlimited Bytes / Unlimited Items | +| **Maximum bandwidth** | 3 Gigabits per second per Linode instance | +| **Maximum path latency** | 20,000 milliseconds default (higher with configuration) | +| **Maximum path packet loss** | 50% | + +#### Full documentation could be found [here](https://www.dataexpedition.com/clouddat/akamai/). + +#### CloudDat server software is hosted on an Akamai/Linode compute instance with access to a filesystem or object bucket in the same region. CloudDat clients accelerate the data transfer to and from the server, allowing for high performance over the WAN. + +![CloudDat Architecture](/assets/marketplace/clouddat.svg) +`.trim(); + +const pricingMarkdown = ` +Pricing details will be discussed directly with the third-party provider Sales team after your request is received, and the third-party provider contacts you. Costs of the product you will be purchasing from the third-party provider will be charged by the third-party provider. For the referral motion, Akamai is not a party in the purchase contract. + +The full price of the product cost should be clarified between you and the third-party provider within the agreed upon terms and conditions of the purchase contract. +`.trim(); + +const supportMarkdown = ` +For product support, reach out to the vendor directly. You can find contact information in the product documentation and on the vendor's website. +`.trim(); + +export const clouddat: ProductTabDetails = { + documentation: documentationMarkdown, + overview: overviewMarkdown, + pricing: pricingMarkdown, + support: supportMarkdown, +}; diff --git a/packages/manager/src/features/Marketplace/ProductDetails/pages/index.ts b/packages/manager/src/features/Marketplace/ProductDetails/pages/index.ts index 26c4b79f44d..66443ac020d 100644 --- a/packages/manager/src/features/Marketplace/ProductDetails/pages/index.ts +++ b/packages/manager/src/features/Marketplace/ProductDetails/pages/index.ts @@ -1,11 +1,13 @@ import { apiMetrics } from './api-metrics'; import { cambriaStream } from './cambria-stream'; import { cloudcasa } from './cloudcasa'; +import { clouddat } from './clouddat'; import { dynamicAdInsertion } from './dynamic-ad-insertion'; import { heroEncoder } from './hero-encoder'; import { liveEncoder } from './live-encoder'; import { multiplayerGameServerHostingOrchestration } from './multiplayer-game-server-hosting-orchestration'; import { myota } from './myota'; +import { norskStudio } from './norsk-studio'; import { playback } from './playback'; import { portainer } from './portainer'; import { radSecurityPlatform } from './rad-security-platform'; @@ -34,6 +36,7 @@ export interface ProductTabDetails { const detailsMap: Record = { 'api-metrics': apiMetrics, 'cambria-stream': cambriaStream, + clouddat, cloudcasa, 'dynamic-ad-insertion': dynamicAdInsertion, 'hero-encoder': heroEncoder, @@ -41,6 +44,7 @@ const detailsMap: Record = { 'multiplayer-game-server-hosting-orchestration': multiplayerGameServerHostingOrchestration, myota, + 'norsk-studio': norskStudio, playback, portainer, 'rad-security-platform': radSecurityPlatform, diff --git a/packages/manager/src/features/Marketplace/ProductDetails/pages/norsk-studio.ts b/packages/manager/src/features/Marketplace/ProductDetails/pages/norsk-studio.ts new file mode 100644 index 00000000000..574b4db2dd5 --- /dev/null +++ b/packages/manager/src/features/Marketplace/ProductDetails/pages/norsk-studio.ts @@ -0,0 +1,72 @@ +/** + * Product tab details for slug norsk-studio. + * + * Content is provided as Markdown strings which are rendered at runtime. + */ + +import type { ProductTabDetails } from '.'; + +const overviewMarkdown = ` +Norsk Studio is a live video and audio streaming workflow server with a graphical drag-and-drop UI that delivers the essentials for implementing high-quality streaming workflows. It is a unique drag-and-drop platform for designing, deploying, and controlling broadcast-quality live streaming workflows. Ingest from any source, encode, package, and deliver to any destination - all from a visual interface. + +Norsk Studio empowers you to deliver compelling, custom, fault-tolerant, and monetizable live events and channels with the best quality available in a fraction of the time and cost normally required. + +Ideal for live event producers, broadcasters and media companies, streaming service operators, and video developers and systems integrators. + +* **Broad codec and format support:** Supports all common inputs and outputs, plus direct publishing to YouTube, Twitch, and other social platforms. +* **Wide range of production processors:** Onscreen graphic, browser overlay, picture-in-picture, automatic or operator-controlled source switching, live-to-VOD, ABR ladder, third-party DRM. +* **Flexible deployment:** Spin up directly on Akamai Cloud Compute or in a Docker or Kubernetes environment on your own Akamai Cloud Compute instance. +* **OpenAPI support:** Iterate and make changes programmatically at runtime in our built-in documentation interface or the OpenAPI interface of your choice. +* **Rich monitoring and reporting:** All workflows can be explored in detail using the Norsk Visualizer. Norsk Studio also supports OpenTelemetry and Fluent Bit. +* **Multimodal, multimodel AI support:** Use any major LLM or Norsk Studio's own MCPs to both create and control live production workflows and create custom dashboards. + +### Use cases + +**Live event production** + +Sports, esports, concerts, conferences, and worship services. Multi-camera production with source switching, graphics, and real-time monitoring. + +**Broadcast workflows** + +Build and operate custom streaming services with full ABR ladders, DRM, subtitles, and delivery to CDNs and social platforms. + +**Operator implementation** + +Run thousands of concurrent channels with fault-tolerant infrastructure, automated scaling, and per-event flexibility. + +Want to create and iterate customizable live streaming workflows in a fraction of the time and cost typically required? Get in touch with our team to share your unique requirements and see how straightforward it is to build workflows in Norsk Studio and learn about onboarding support with our Kickstart package. +`.trim(); + +const documentationMarkdown = ` +| Specification | Details | +| :---- | :---- | +| **Deployment model** | Cloud, on-prem, hybrid | +| **Supported inputs** | RTMP, SRT, WebRTC, NDI, SDI/HDMI via DeckLink, SMPTE ST 2110 | +| **Supported outputs** | HLS, DASH, CMAF, WebRTC, RTMP (YouTube, Twitch, LinkedIn Live) | +| **Codec support** | H.264, H.265/HEVC, AV1, AAC, Opus | +| **Latency** | Workflow-dependent: sub-second with WebRTC/SRT; 2\u20136s with low-latency HLS; standard HLS per CDN configuration | +| **AI integration** | Model Context Protocol (MCP) server for AI-assisted workflow control; compatible with OpenAI, Gemini, and Anthropic | +| **Security** | TLS 1.3 in transit; runs within customer-controlled cloud VPC or on-premises infrastructure | +| **License model** | Subscription-based (per channel, or enterprise) | + +![Norsk Platform Architecture](/assets/marketplace/norsk_platform_architecture.svg) + +![Norsk Process Flow](/assets/marketplace/norsk_process_flow.svg) +`.trim(); + +const pricingMarkdown = ` +Pricing details will be discussed directly with the third-party provider Sales team after your request is received, and the third-party provider contacts you. Costs of the product you will be purchasing from the third-party provider will be charged by the third-party provider. For the referral motion, Akamai is not a party in the purchase contract. + +The full price of the product cost should be clarified between you and the third-party provider within the agreed upon terms and conditions of the purchase contract. +`.trim(); + +const supportMarkdown = ` +For product support, reach out to the vendor directly. You can find contact information in the product documentation and on the vendor's website. +`.trim(); + +export const norskStudio: ProductTabDetails = { + documentation: documentationMarkdown, + overview: overviewMarkdown, + pricing: pricingMarkdown, + support: supportMarkdown, +}; diff --git a/packages/manager/src/features/Marketplace/ProductDetails/pages/sftpgo.ts b/packages/manager/src/features/Marketplace/ProductDetails/pages/sftpgo.ts index b0c9ce93cee..0449740c30d 100644 --- a/packages/manager/src/features/Marketplace/ProductDetails/pages/sftpgo.ts +++ b/packages/manager/src/features/Marketplace/ProductDetails/pages/sftpgo.ts @@ -7,47 +7,48 @@ import type { ProductTabDetails } from '.'; const overviewMarkdown = ` -SFTPGo provides a fully managed, secure Managed File Transfer (MFT) solution designed for organizations that require professional file exchange without the burden of infrastructure management. Unlike standard shared hosting, SFTPGo delivers a dedicated and isolated installation for every customer, ensuring maximum security and performance. Each environment is automatically deployed in the user's selected region, providing a turnkey solution that is ready to use in minutes with simple, predictable pricing. +SFTPGo is an enterprise-grade Managed File Transfer (MFT) solution designed for organizations that require high-performance file exchange without the overhead of infrastructure management. -The service supports a comprehensive suite of protocols, including SFTP, FTP, FTPS, and WebDAV, complemented by an intuitive WebClient for non-technical users. Every plan includes a dedicated S3-compatible storage quota, yet the platform remains storage-agnostic, allowing you to "Bring Your Own Storage" from providers like Azure Blob, GCS, or S3. Administrators can manage the entire system through a powerful WebAdmin interface, which offers granular access controls, real-time monitoring, and no software limits on the number of users or admins. +By delivering a **single-tenant, isolated architecture** for every customer, SFTPGo ensures dedicated resources, localized **data residency**, and maximum security - entirely free from the performance bottlenecks of multi-tenant environments. Deploy your environment in minutes and transform a passive storage service into an **active data pipeline**. -A primary differentiator is the integrated Event Manager, a powerful automation engine that executes conditional "if-this-then-that" actions based on system activity. Administrators can easily define rules to trigger real-time webhooks, send notifications, or automate complex tasks such as PGP encryption, and automated data retention policies. This transforms a passive storage service into an active data pipeline, seamlessly integrating secure file transfers into your existing business workflows. +### **Key Features** -### **Key features** +* **Multi-Protocol Access:** Secure transfers via SFTP, SCP, FTP, FTPS, and WebDAV, plus an intuitive WebClient for non-technical users. +* **Secure Public Sharing:** Collaborate effortlessly with external partners using unique, web-accessible links. Protect shares with passwords, expiration dates, or email-based authentication (OTP) without requiring account creation. +* **Storage Agnostic (BYOS):** Includes S3-compatible storage, but allows you to "Bring Your Own Storage" from Azure Blob, Google Cloud Storage, or AWS S3 (Compatible). +* **Smart Event Automation:** An integrated engine to trigger webhooks, notifications, and PGP tasks based on file activity, schedules, or Identity provider login events. It streamlines governance with automated lifecycle management - automatically handling inactivity, expirations, and usage limits for both users and public shares - and supports Just-in-Time provisioning from templates immediately after SSO login. +* **Identity & Security:** Native SSO (OpenID Connect), 2FA, and granular RBAC. Integrate with ICAP servers for real-time antivirus scanning and DLP checks. +* **Compliance Ready:** Simplify GDPR and HIPAA audits with comprehensive logs, reporting, and automated data retention policies. +* **No Software Limits:** Scale freely without restrictions on the number of users or administrators. -* **Dedicated Infrastructure:** Ensure maximum security and performance with a fully isolated, dedicated installation and dedicated resources for every customer environment. -* **Regional Data Residency:** Meet strict compliance requirements by deploying your dedicated instance in your preferred geographic region for localized data sovereignty. -* **Hybrid Storage Management:** Simplify data centralization by using the included S3-compatible storage or connecting your own backends like Azure, GCS, and S3. -* **Unified File Access:** Enable secure file exchange via SFTP, FTPS, and WebDAV, or provide non-technical users with an intuitive WebClient. -* **Smart Event Automation:** Accelerate data pipelines with an integrated Event Manager that triggers webhooks, notifications, and PGP encryption or decryption based on real-time file activity. -* **Enterprise-Grade Protection:** Secure sensitive data with encryption at rest, two-factor authentication (2FA), and the flexibility to integrate advanced antivirus or DLP scanning workflows. -* **Advanced Identity Integration:** Streamline user management and secure access with native support for SSO (OpenID Connect). -* **Compliance Readiness:** Accelerate your audit processes with comprehensive logs, reporting, and automated data retention rules tailored for GDPR and HIPAA standards. +### **Use Cases** -### **Use cases** +#### **Data Sovereignty & Compliance** -**Secure Data Sovereignty and Compliance** -Deploy dedicated, isolated instances in specific geographic regions to meet strict GDPR, HIPAA, or local data residency requirements. Utilize built-in audit logs, PGP encryption, and automated data retention rules to ensure that sensitive files are managed and purged according to regulatory standards without manual intervention. +Deploy dedicated instances in specific geographic regions to meet strict local data residency requirements. Use PGP encryption and automated retention rules to ensure sensitive files are managed according to regulatory standards. -**Automated Cloud Data Ingestion** -Streamline business workflows by using the Event Manager to automatically trigger webhooks or move files to cloud storage backends like S3, Google Cloud Storage, or Azure Blob upon upload. This transforms a standard SFTP server into an active data pipeline, allowing your internal systems to react instantly to incoming data from partners or IoT devices. +#### **Automated Cloud Data Ingestion** -**Secure External Partner Collaboration** -Provide non-technical partners with a secure, branded WebClient for browser-based file exchange and link sharing, protected by Single Sign-On (SSO) or Multi-Factor Authentication. Implement Role-Based Access Control (RBAC) to enforce strict data isolation with per-user and per-directory permissions, ensuring collaborators only access authorized files. This granular control allows you to define specific actions (read, write, delete) at the folder level, preventing unauthorized data exposure within your dedicated environment. +Use the Event Manager to trigger real-time webhooks or move files to cloud backends (S3, GCS, Azure) or external SFTP/FTP servers upon upload, download, or schedule. Perfect for reacting instantly to data from partners or IoT devices. -**Hybrid Cloud Storage Gateway** -Use SFTPGo as a unified gateway to access and manage files across different cloud providers using legacy protocols like SFTP, FTP, or WebDAV. By abstracting the underlying storage (S3-compatible, Azure Blob, GCS, other SFTP servers), you can consolidate fragmented data sources into a single, manageable interface for your legacy applications and modern cloud services +#### **Secure Partner Collaboration** -Experience a secure, dedicated MFT environment today with a 10-day free trial included in all plans. Simply select the plan that best fits your needs and choose your preferred deployment region; your isolated instance will be provisioned automatically and ready for use in minutes. If you require a custom architecture, specialized compliance configurations, or would like to see a live demo, our team is available to help you design a proof-of-concept tailored to your specific business workflows. +Provide external partners with a branded WebClient or Public Shares. Enforce strict isolation with per-directory permissions and protect access via SSO or Email OTP, ensuring collaborators see only authorized files. + +#### **Hybrid Cloud Storage Gateway** + +Consolidate fragmented data sources into a single entry point. SFTPGo acts as a unified bridge, allowing legacy applications to interact with modern object storage (S3, Azure, GCS) via standard protocols like SFTP and WebDAV, while providing users with a feature-rich, responsive WebClient. + +Experience a secure, dedicated MFT environment today with a 10-day free trial included in all plans. Simply select your plan and region; your isolated instance will be provisioned automatically. Need a custom architecture or a live demo? Our team is available to help you design a proof-of-concept tailored to your specific workflows. `.trim(); const documentationMarkdown = ` | Specification | Details | | :---- | :---- | | **Deployment Model** | SaaS. Fully managed dedicated instances | -| **Supported Protocols** | SFTP, FTPS, WebDAV, and HTTPS (WebClient) | +| **Supported Protocols** | SFTP, SCP, FTPS, WebDAV, and HTTPS (WebClient) | | **Storage Backends** | Integrated S3-compatible storage plus Azure Blob, GCS, S3, and other SFTP/FTP servers | -| **Authentication** | Multi-factor (2FA), SSO (OpenID Connect/SAML), and LDAP/Active Directory integration | +| **Authentication** | Multi-factor (2FA), SSO (OpenID Connect), and LDAP/Active Directory integration | | **Automation Engine** | Native EventManager (HTTP Hooks, Email, Filesystem actions) | | **Advanced Security** | PGP Encryption and Decryption, ICAP support (Antivirus/DLP), Brute force protection | | **API & DevOps** | Comprehensive REST API and official Terraform Provider | @@ -57,15 +58,24 @@ const documentationMarkdown = ` ![SFTPGo architecture](/assets/marketplace/sftpgo-architecture.jpeg) -### **Dedicated and Automated Managed File Transfer Workflow** +### **Dedicated Managed File Transfer Architecture** + +Every deployment provides a single-tenant, isolated instance to ensure maximum security and performance. The architecture is built on four pillars: -Every customer receives an isolated and dedicated installation for secure and high-performance file management. The architecture offers flexible identity management, featuring built-in authentication with Two-Factor Authentication support or centralized access through Single Sign-On integration. It features a storage-agnostic design that connects to S3-compatible storage, Microsoft Azure Blob, and Google Cloud Storage. An integrated event-driven engine automates notifications and data workflows triggered by file activity, fully controllable through a comprehensive Application Programming Interface. +* **Flexible Identity Management:** Local authentication with MFA, centralized access via SSO (OpenID Connect), or guest access via Email OTP for Public Shares. +* **Storage-Agnostic Design:** Native integration with S3-compatible backends, Microsoft Azure Blob, and Google Cloud Storage. +* **Event-Driven Automation:** An integrated engine to trigger notifications and data workflows, fully controllable via a comprehensive REST API. +* **Security Orchestration:** Support for high-performance protocols and integration with ICAP servers for antivirus and DLP inspection. -### **Automated Data Ingestion and Event-Driven Flow** +### **Data Ingestion & Automation Flow** -The automated file transfer flow begins when a client initiates a connection using the Secure File Transfer Protocol or a secure web browser. Incoming traffic is routed to a dedicated and isolated installation to ensure security and data separation. After the user is authenticated, file operations are processed in real-time within the dedicated environment. +The following steps outline the automated lifecycle of a file within SFTPGo: -Following a successful file upload, the integrated event engine triggers predefined actions - such as email notifications or automated tasks - to streamline business workflows without manual intervention. Simultaneously, data is securely stored on the included S3-compatible backend or a preferred cloud storage provider such as Microsoft Azure Blob or Google Cloud Storage. +* **Secure Connection:** A client connects via SFTP/SCP/FTPS/WebDAV or a branded WebClient. +* **Isolated Processing:** Traffic is routed to your dedicated instance, ensuring complete data separation from other customers. +* **Real-Time Authentication:** The system validates credentials against the internal database or your external identity provider (SSO). +* **Active Event Triggering:** Upon upload, the Event Manager can stream the file to an ICAP server for scanning, execute PGP tasks, or fire webhooks. +* **Secure Persistence:** Files are stored on your chosen backend with encryption at rest. The Event Manager ensures continuous compliance by automatically enforcing per-folder data retention rules and managing the full lifecycle of users and public shares - including inactivity-based deletion, password expiration, and token-limited access. `.trim(); const pricingMarkdown = ` diff --git a/packages/manager/src/features/Marketplace/products.ts b/packages/manager/src/features/Marketplace/products.ts index c5b205ed88f..99c99faac87 100644 --- a/packages/manager/src/features/Marketplace/products.ts +++ b/packages/manager/src/features/Marketplace/products.ts @@ -35,6 +35,23 @@ export const PRODUCTS: Product[] = [ name: 'SaaS & APIs', }, }, + { + categories: ['Networking', 'Storage'], + id: 'clouddat', + name: 'CloudDat\u00AE for Akamai, by Data Expedition, Inc.\u00AE', + partner: { + email: 'akamai@dataexpedition.com', + logoDarkMode: 'data-expedition-dark.svg', + logoLightMode: 'data-expedition-light.svg', + name: 'Data Expedition, Inc.\u00AE', + url: 'https://www.dataexpedition.com/clouddat/akamai/', + }, + shortDescription: + 'CloudDat\u00AE for Akamai is a secure accelerated file transfer server that lets you upload and download files and objects at gigabits per second from anywhere in the world.', + type: { + name: 'Virtual Machines', + }, + }, { categories: ['Kubernetes', 'Enterprise', 'Other Software and APIs'], id: 'cloudcasa', @@ -140,6 +157,31 @@ export const PRODUCTS: Product[] = [ name: 'SaaS & APIs', }, }, + { + categories: [ + 'Data Analytics', + 'Database Management', + 'Data Sources', + 'Enterprise', + 'Kubernetes', + 'Other Software and APIs', + 'Storage', + ], + id: 'norsk-studio', + name: 'Norsk Studio', + partner: { + email: 'sales@norsk.video', + logoDarkMode: 'Norsk-dark.svg', + logoLightMode: 'Norsk-light.svg', + name: 'Norsk', + url: 'https://norsk.video/', + }, + shortDescription: + 'Norsk Studio is a live video and audio streaming workflow server with a graphical drag-and-drop UI that delivers the essentials for implementing high-quality streaming workflows.', + type: { + name: 'SaaS & APIs', + }, + }, { categories: [ 'Data Analytics', @@ -226,7 +268,12 @@ export const PRODUCTS: Product[] = [ }, }, { - categories: ['Storage', 'Other Software and APIs'], + categories: [ + 'Storage', + 'Networking', + 'Enterprise', + 'Other Software and APIs', + ], id: 'sftpgo', name: 'SFTPGo', partner: { @@ -239,7 +286,7 @@ export const PRODUCTS: Product[] = [ shortDescription: 'MFT supporting SFTP, FTP and WebDAV. Features SSO WebClient for user access and WebAdmin for management. Includes S3-compatible storage or connect your own cloud backends', type: { - name: 'SaaS & APIs', + name: 'Kubernetes', }, }, { diff --git a/packages/manager/src/features/Marketplace/shared.ts b/packages/manager/src/features/Marketplace/shared.tsx similarity index 70% rename from packages/manager/src/features/Marketplace/shared.ts rename to packages/manager/src/features/Marketplace/shared.tsx index 3029723c37b..4bb7d6822bd 100644 --- a/packages/manager/src/features/Marketplace/shared.ts +++ b/packages/manager/src/features/Marketplace/shared.tsx @@ -1,3 +1,5 @@ +import React from 'react'; + import { useFlags } from 'src/hooks/useFlags'; import type { SxProps, Theme } from '@mui/material/styles'; @@ -66,6 +68,37 @@ export const useIsMarketplaceV2Enabled = () => { }; }; +/** + * Formats trademark symbols (e.g. ®) in a string as superscript. + * Returns the original string unchanged if no trademark symbols are found. + * When symbols are present, returns a wrapping the text with + * styled elements. Using a single wrapper ensures the result + * behaves as one inline/flex child and avoids layout misalignment + * in flex containers like card headings. + */ +export const formatTrademarkSymbols = ( + text: string +): React.ReactElement | string => { + if (!text.includes('\u00AE')) { + return text; + } + + const parts = text.split('\u00AE'); + + return ( + + {parts.map((part, index) => ( + + {part} + {index < parts.length - 1 && ( + {'\u00AE'} + )} + + ))} + + ); +}; + export const getLogoUrl = (product: Product, theme: Theme) => { const base = '/assets/marketplace/'; return theme.name === 'light' From 0a6d9f814276c6db44b50e471ed3635e1ebfd26d Mon Sep 17 00:00:00 2001 From: tvijay-akamai Date: Wed, 25 Mar 2026 13:25:37 +0530 Subject: [PATCH 2/6] Added: [UIE-10469] added changeset --- packages/manager/.changeset/pr-13531-added-1784124788855.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 packages/manager/.changeset/pr-13531-added-1784124788855.md diff --git a/packages/manager/.changeset/pr-13531-added-1784124788855.md b/packages/manager/.changeset/pr-13531-added-1784124788855.md new file mode 100644 index 00000000000..25c9a6d89e5 --- /dev/null +++ b/packages/manager/.changeset/pr-13531-added-1784124788855.md @@ -0,0 +1,5 @@ +--- +"@linode/manager": Added +--- + +New marketplace products norsk, clouddat and sftpgo ([#13531](https://github.com/linode/manager/pull/13531)) From fba2e7693e8206d8cc3b889b7898f46abc773a86 Mon Sep 17 00:00:00 2001 From: tvijay-akamai Date: Wed, 25 Mar 2026 14:00:52 +0530 Subject: [PATCH 3/6] Added: [UIE-10469] updated clouddat product name --- packages/manager/src/features/Marketplace/products.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/manager/src/features/Marketplace/products.ts b/packages/manager/src/features/Marketplace/products.ts index 99c99faac87..29f492f5f26 100644 --- a/packages/manager/src/features/Marketplace/products.ts +++ b/packages/manager/src/features/Marketplace/products.ts @@ -38,7 +38,7 @@ export const PRODUCTS: Product[] = [ { categories: ['Networking', 'Storage'], id: 'clouddat', - name: 'CloudDat\u00AE for Akamai, by Data Expedition, Inc.\u00AE', + name: 'CloudDat\u00AE for Akamai', partner: { email: 'akamai@dataexpedition.com', logoDarkMode: 'data-expedition-dark.svg', From dda6ff0e5ee7b1e85f7aba0f87f68f0d55de9389 Mon Sep 17 00:00:00 2001 From: tvijay-akamai Date: Wed, 25 Mar 2026 15:19:59 +0530 Subject: [PATCH 4/6] Added: [UIE-10469] updated new images provided by ux and updated changeset --- .../pr-13531-added-1784124788855.md | 7 +- .../norsk_platform_architecture.svg | 283 +++++++++--------- .../assets/marketplace/norsk_process_flow.svg | 89 +++--- 3 files changed, 196 insertions(+), 183 deletions(-) diff --git a/packages/manager/.changeset/pr-13531-added-1784124788855.md b/packages/manager/.changeset/pr-13531-added-1784124788855.md index 25c9a6d89e5..80ab14e8a2e 100644 --- a/packages/manager/.changeset/pr-13531-added-1784124788855.md +++ b/packages/manager/.changeset/pr-13531-added-1784124788855.md @@ -2,4 +2,9 @@ "@linode/manager": Added --- -New marketplace products norsk, clouddat and sftpgo ([#13531](https://github.com/linode/manager/pull/13531)) +New marketplace products + - Norsk + - Clouddat + Updated marketplace products + - sftpgo + ([#13531](https://github.com/linode/manager/pull/13531)) diff --git a/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg b/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg index 0d5669caed7..bd511b8bab4 100644 --- a/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg +++ b/packages/manager/public/assets/marketplace/norsk_platform_architecture.svg @@ -1,154 +1,155 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + - - + + + + + + + + + + - - - - - - + + diff --git a/packages/manager/public/assets/marketplace/norsk_process_flow.svg b/packages/manager/public/assets/marketplace/norsk_process_flow.svg index ec4a4184586..0361aee68b5 100644 --- a/packages/manager/public/assets/marketplace/norsk_process_flow.svg +++ b/packages/manager/public/assets/marketplace/norsk_process_flow.svg @@ -1,42 +1,49 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 352983f983cc0ba7b79468553d1152e9ad489c8a Mon Sep 17 00:00:00 2001 From: tvijay-akamai Date: Wed, 25 Mar 2026 15:24:21 +0530 Subject: [PATCH 5/6] Added: [UIE-10469] updated new images provided by ux --- .../public/assets/marketplace/sftpgo-dark.svg | 67 +++++++++---------- .../assets/marketplace/sftpgo-light.svg | 67 +++++++++---------- 2 files changed, 60 insertions(+), 74 deletions(-) diff --git a/packages/manager/public/assets/marketplace/sftpgo-dark.svg b/packages/manager/public/assets/marketplace/sftpgo-dark.svg index f9f3813a3ac..4f656582f93 100644 --- a/packages/manager/public/assets/marketplace/sftpgo-dark.svg +++ b/packages/manager/public/assets/marketplace/sftpgo-dark.svg @@ -1,38 +1,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SFTPGo - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/packages/manager/public/assets/marketplace/sftpgo-light.svg b/packages/manager/public/assets/marketplace/sftpgo-light.svg index f9f3813a3ac..4f656582f93 100644 --- a/packages/manager/public/assets/marketplace/sftpgo-light.svg +++ b/packages/manager/public/assets/marketplace/sftpgo-light.svg @@ -1,38 +1,31 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - SFTPGo - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 15d29d621ef8c07c1d3210355e773d3df064e066 Mon Sep 17 00:00:00 2001 From: tvijay-akamai Date: Wed, 25 Mar 2026 15:50:20 +0530 Subject: [PATCH 6/6] Added: [UIE-10469] updated cloudadt desc --- .../src/features/Marketplace/ProductDetails/pages/clouddat.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts b/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts index 37af98723ab..401c6d8518b 100644 --- a/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts +++ b/packages/manager/src/features/Marketplace/ProductDetails/pages/clouddat.ts @@ -52,9 +52,9 @@ const documentationMarkdown = ` | **Maximum path latency** | 20,000 milliseconds default (higher with configuration) | | **Maximum path packet loss** | 50% | -#### Full documentation could be found [here](https://www.dataexpedition.com/clouddat/akamai/). +Full documentation could be found [here](https://www.dataexpedition.com/clouddat/akamai/). -#### CloudDat server software is hosted on an Akamai/Linode compute instance with access to a filesystem or object bucket in the same region. CloudDat clients accelerate the data transfer to and from the server, allowing for high performance over the WAN. +CloudDat server software is hosted on an Akamai/Linode compute instance with access to a filesystem or object bucket in the same region. CloudDat clients accelerate the data transfer to and from the server, allowing for high performance over the WAN. ![CloudDat Architecture](/assets/marketplace/clouddat.svg) `.trim();