Some checks are pending
E2E / Playwright e2e (push) Waiting to run
- Refactored metadata for contacts, administration, and Ulticards pages to utilize dynamic app names and descriptions. - Introduced new product pages for Ultiai, Ultical, Ulticards, Ultidrive, Ultimail, and Ultimeet with appropriate metadata. - Enhanced layout components to ensure consistent styling and functionality across new product sections. - Updated various components to replace hardcoded labels with dynamic references to improve maintainability and consistency.
2024 lines
67 KiB
TypeScript
2024 lines
67 KiB
TypeScript
import type { ReactNode } from "react"
|
|
import { ULTICAL_APP_NAME, ULTICARDS_APP_NAME } from "@/lib/suite/page-metadata"
|
|
import { suitePublicAsset } from "@/lib/suite/suite-public-asset"
|
|
|
|
export type ProductFeature = {
|
|
title: string
|
|
description: string
|
|
icon: string
|
|
}
|
|
|
|
export type ProductShowcaseDemo =
|
|
| "ultimail-inbox"
|
|
| "ultimail-compose"
|
|
| "ultimail-automation"
|
|
| "ultidrive-browser"
|
|
| "ultidrive-docs"
|
|
| "ultidrive-share"
|
|
| "ultical-agenda"
|
|
| "ultical-invitations"
|
|
| "ultical-scheduling"
|
|
| "ultiai-chat"
|
|
| "ultiai-tools"
|
|
| "ultiai-triage"
|
|
| "ulticards-directory"
|
|
| "ulticards-discovery"
|
|
| "ulticards-merge"
|
|
| "ultimeet-room"
|
|
| "ultimeet-lobby"
|
|
| "ultimeet-collab"
|
|
| "admin-migration"
|
|
| "admin-identity"
|
|
| "admin-users"
|
|
| "admin-quotas"
|
|
| "admin-policies"
|
|
|
|
export type ProductShowcase = {
|
|
id: string
|
|
eyebrow: string
|
|
title: ReactNode
|
|
description?: string
|
|
features: ProductFeature[]
|
|
demo: ProductShowcaseDemo
|
|
reverse?: boolean
|
|
}
|
|
|
|
/** @deprecated Préférer `showcases` pour les pages produit. */
|
|
export type ProductFeatureGroup = {
|
|
eyebrow: string
|
|
title: ReactNode
|
|
description?: string
|
|
features: (ProductFeature & { wide?: boolean })[]
|
|
}
|
|
|
|
export type ProductHighlight = {
|
|
value: string
|
|
label: string
|
|
}
|
|
|
|
export type ProductIntegration = {
|
|
name: string
|
|
tagline: string
|
|
description: string
|
|
icon: string
|
|
href?: string
|
|
accent: string
|
|
}
|
|
|
|
export type ProductCtaLink = {
|
|
label: string
|
|
href: string
|
|
}
|
|
|
|
export type ProductCrossPlatformSection = {
|
|
eyebrow: string
|
|
title: ReactNode
|
|
description: string
|
|
features: ProductFeature[]
|
|
}
|
|
|
|
export type ProductInteropProvider = {
|
|
name: string
|
|
tagline: string
|
|
icon: string
|
|
accent: string
|
|
/** Icône logos:* Iconify — couleurs d'origine, sans teinte accent. */
|
|
brandLogo?: boolean
|
|
personal: string
|
|
enterprise: string
|
|
}
|
|
|
|
export type ProductInteropSection = {
|
|
eyebrow: string
|
|
title: ReactNode
|
|
description: string
|
|
providers: ProductInteropProvider[]
|
|
features: ProductFeature[]
|
|
}
|
|
|
|
export type ProductCrossPlatformDemoApp = "mail" | "drive" | "meet"
|
|
|
|
export type ProductPageData = {
|
|
name: string
|
|
tagline: string
|
|
description: string
|
|
icon: string
|
|
accent: string
|
|
heroEyebrow: string
|
|
heroTitle: string
|
|
heroTitleAccent: string
|
|
ctas: {
|
|
primary: ProductCtaLink
|
|
secondary?: ProductCtaLink
|
|
}
|
|
highlightsSection: {
|
|
eyebrow: string
|
|
title: ReactNode
|
|
description: string
|
|
highlights: ProductHighlight[]
|
|
}
|
|
showcases: ProductShowcase[]
|
|
crossPlatformSection?: ProductCrossPlatformSection
|
|
crossPlatformDemo?: ProductCrossPlatformDemoApp
|
|
interopSection?: ProductInteropSection
|
|
/** Grille classique — fallback si pas de showcases. */
|
|
featureGroups?: ProductFeatureGroup[]
|
|
integrations: ProductIntegration[]
|
|
ctaSection: {
|
|
title: ReactNode
|
|
description: string
|
|
ctas: {
|
|
primary: ProductCtaLink
|
|
secondary?: ProductCtaLink
|
|
}
|
|
}
|
|
}
|
|
|
|
export const ULTIMAIL_PRODUCT: ProductPageData = {
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description:
|
|
"Boîte unifiée multi-comptes, libellés intelligents, règles de tri, envoi programmé et tri IA — l'alternative souveraine à Gmail, hébergée chez vous.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
accent: "#EA4335",
|
|
heroEyebrow: "Messagerie souveraine",
|
|
heroTitle: "Tous vos comptes mail,",
|
|
heroTitleAccent: "une seule boîte.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir Ultimail", href: "/mail/inbox" },
|
|
secondary: { label: "Essayer la démo", href: "/#demo" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi Ultimail",
|
|
title: (
|
|
<>
|
|
Au-delà de Gmail,{" "}
|
|
<span className="landing-gradient-text">sans quitter vos habitudes</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Interface familière, automatisations avancées et IA maîtrisée — sans céder vos données.",
|
|
highlights: [
|
|
{ value: "N→1", label: "comptes dans une boîte unifiée" },
|
|
{ value: "∞", label: "libellés cross-comptes" },
|
|
{ value: "IA", label: "tri LLM & agents MCP" },
|
|
{ value: "0", label: "tracker ou télémétrie" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "boite-unifiee",
|
|
eyebrow: "Boîte unifiée",
|
|
title: (
|
|
<>
|
|
Multi-comptes,{" "}
|
|
<span className="landing-gradient-text">une seule vue</span>
|
|
</>
|
|
),
|
|
description:
|
|
"IMAP/SMTP, libellés unifiés et recherche cross-comptes — tout au même endroit.",
|
|
demo: "ultimail-inbox",
|
|
features: [
|
|
{
|
|
title: "Comptes IMAP & SMTP",
|
|
description: "Plusieurs boîtes, synchronisation permanente côté serveur.",
|
|
icon: "mdi:email-sync-outline",
|
|
},
|
|
{
|
|
title: "Identités & catch-all",
|
|
description: "Alias, routage et adresses d'envoi distinctes du compte SMTP.",
|
|
icon: "mdi:account-badge-outline",
|
|
},
|
|
{
|
|
title: "Libellés & dossiers unifiés",
|
|
description: "Organisez tous vos comptes avec les mêmes libellés et dossiers.",
|
|
icon: "mdi:label-multiple-outline",
|
|
},
|
|
{
|
|
title: "Recherche avancée",
|
|
description: "Expéditeur, sujet, PJ — une requête traverse toutes vos boîtes.",
|
|
icon: "mdi:file-search-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "composition",
|
|
eyebrow: "Composition & envoi",
|
|
title: (
|
|
<>
|
|
Rédigez, programmez,{" "}
|
|
<span className="landing-gradient-text">envoyez</span>
|
|
</>
|
|
),
|
|
description: "Éditeur riche, signatures par identité et envoi différé.",
|
|
demo: "ultimail-compose",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "Éditeur riche TipTap",
|
|
description: "Mise en forme complète, rendu HTML compatible clients mail.",
|
|
icon: "mdi:format-text",
|
|
},
|
|
{
|
|
title: "Brouillons",
|
|
description: "Reprenez vos messages en cours à tout moment.",
|
|
icon: "mdi:content-save-outline",
|
|
},
|
|
{
|
|
title: "Envoi programmé",
|
|
description: "Planifiez l'envoi à l'heure qui vous convient.",
|
|
icon: "mdi:clock-outline",
|
|
},
|
|
{
|
|
title: "Pièces jointes & signatures",
|
|
description: "PJ locales ou UltiDrive, signature par identité d'envoi.",
|
|
icon: "mdi:paperclip",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "automatisations",
|
|
eyebrow: "Automatisations & IA",
|
|
title: (
|
|
<>
|
|
Règles visuelles,{" "}
|
|
<span className="landing-gradient-text">zéro code</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Tri automatique, webhooks, tri LLM et tokens API pour vos agents.",
|
|
demo: "ultimail-automation",
|
|
features: [
|
|
{
|
|
title: "Éditeur no-code",
|
|
description: "Déclencheurs, conditions et actions en flux visuel.",
|
|
icon: "mdi:filter-cog-outline",
|
|
},
|
|
{
|
|
title: "Forward & réponses auto",
|
|
description: "Transferts et absences configurés par identité.",
|
|
icon: "mdi:email-fast-outline",
|
|
},
|
|
{
|
|
title: "Webhooks à templates",
|
|
description: "Slack, Discord, n8n — JSON personnalisable à la réception.",
|
|
icon: "mdi:webhook",
|
|
},
|
|
{
|
|
title: "Tri IA & agents MCP",
|
|
description: "LLM OpenAI-compatible et tokens à permissions fines.",
|
|
icon: "mdi:creation-outline",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
crossPlatformSection: {
|
|
eyebrow: "Multi-plateforme",
|
|
title: (
|
|
<>
|
|
Expérience cohérente,{" "}
|
|
<span className="landing-gradient-text">même sur mobile</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Apps iOS et Android natives (Tauri) : la même messagerie Ultimail, adaptée à chaque écran — du téléphone au bureau.",
|
|
features: [
|
|
{
|
|
title: "Apps iOS & Android",
|
|
description: "Clients natifs Tauri, même code et mêmes fonctionnalités que le web.",
|
|
icon: "mdi:cellphone-link",
|
|
},
|
|
{
|
|
title: "Interface responsive",
|
|
description: "Liste seule sur mobile, split-view sur tablette, colonnes sur desktop.",
|
|
icon: "mdi:responsive",
|
|
},
|
|
{
|
|
title: "Gestes & raccourcis natifs",
|
|
description: "Navigation tactile, notifications push et intégration système.",
|
|
icon: "mdi:gesture-tap",
|
|
},
|
|
{
|
|
title: "Sync unifiée",
|
|
description: "Même compte, mêmes libellés et brouillons sur tous vos appareils.",
|
|
icon: "mdi:sync",
|
|
},
|
|
],
|
|
},
|
|
integrations: [
|
|
{
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description: "Saisie assistée à la composition et fiches enrichies.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
href: "/contacts",
|
|
accent: "#4285F4",
|
|
},
|
|
{
|
|
name: "UltiDrive",
|
|
tagline: "Fichiers",
|
|
description: "PJ depuis le stockage ou partage par lien sécurisé.",
|
|
icon: suitePublicAsset("/ultidrive-mark.svg"),
|
|
href: "/suite/ultidrive",
|
|
accent: "#34A853",
|
|
},
|
|
{
|
|
name: ULTICAL_APP_NAME,
|
|
tagline: "Calendrier",
|
|
description: "Invitations et disponibilités synchronisées.",
|
|
icon: suitePublicAsset("/agenda-mark.svg"),
|
|
href: "/agenda",
|
|
accent: "#34c77b",
|
|
},
|
|
{
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description:
|
|
"Résumez, rédigez, envoyez ou transférez vos mails sur simple commande.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
href: "/chat",
|
|
accent: "#f2783c",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à unifier{" "}
|
|
<span className="landing-gradient-text">votre messagerie</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Rattachez vos comptes existants et découvrez une boîte souveraine, sans renoncer à l'ergonomie Gmail.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir Ultimail", href: "/mail/inbox" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|
|
|
|
export const ULTIDRIVE_PRODUCT: ProductPageData = {
|
|
name: "UltiDrive",
|
|
tagline: "Fichiers & docs",
|
|
description:
|
|
"Stockage souverain, interface familière type Google Drive, documents texte, bureautique OnlyOffice, partage par lien et montages cloud — hébergé chez vous.",
|
|
icon: suitePublicAsset("/ultidrive-mark.svg"),
|
|
accent: "#34A853",
|
|
heroEyebrow: "Stockage souverain",
|
|
heroTitle: "Vos fichiers,",
|
|
heroTitleAccent: "sous votre contrôle.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiDrive", href: "/drive" },
|
|
secondary: { label: "Essayer la démo", href: "/#demo" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi UltiDrive",
|
|
title: (
|
|
<>
|
|
L'ergonomie de Google Drive,{" "}
|
|
<span className="landing-gradient-text">sans Google</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Explorateur familier, édition collaborative et partage fin — sur votre infrastructure Nextcloud ou WebDAV.",
|
|
highlights: [
|
|
{ value: "∞", label: "stockage selon votre backend" },
|
|
{ value: "3", label: "éditeurs natifs (docs, office, draw)" },
|
|
{ value: "WebDAV", label: "montage local & sync" },
|
|
{ value: "0", label: "donnée chez un géant US" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "explorateur",
|
|
eyebrow: "Explorateur de fichiers",
|
|
title: (
|
|
<>
|
|
Mon Drive,{" "}
|
|
<span className="landing-gradient-text">comme chez Google</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Arborescence, favoris, récents, corbeille et recherche — branchés sur Nextcloud ou WebDAV.",
|
|
demo: "ultidrive-browser",
|
|
features: [
|
|
{
|
|
title: "Navigation familière",
|
|
description: "Vues Mon Drive, Partagés, Favoris, Récents et Corbeille.",
|
|
icon: "mdi:folder-multiple-outline",
|
|
},
|
|
{
|
|
title: "Upload & glisser-déposer",
|
|
description: "Déposez fichiers et dossiers, création de répertoires en un clic.",
|
|
icon: "mdi:cloud-upload-outline",
|
|
},
|
|
{
|
|
title: "Prévisualisation intégrée",
|
|
description: "Images, PDF, texte et bureautique — sans quitter l'explorateur.",
|
|
icon: "mdi:file-eye-outline",
|
|
},
|
|
{
|
|
title: "Recherche rapide",
|
|
description: "Filtrez par nom, type ou emplacement dans tout le drive.",
|
|
icon: "mdi:magnify",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "documents",
|
|
eyebrow: "Documents & bureautique",
|
|
title: (
|
|
<>
|
|
Rédigez, dessinez,{" "}
|
|
<span className="landing-gradient-text">co-éditez</span>
|
|
</>
|
|
),
|
|
description:
|
|
"UltiDocs pour le texte riche, OnlyOffice pour docx/xlsx/pptx, UltiDraw pour les schémas.",
|
|
demo: "ultidrive-docs",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "UltiDocs",
|
|
description: "Éditeur riche TipTap — tableaux, images, export PDF.",
|
|
icon: "mdi:file-document-edit-outline",
|
|
},
|
|
{
|
|
title: "OnlyOffice",
|
|
description: "Word, Excel et PowerPoint en co-édition temps réel.",
|
|
icon: "mdi:microsoft-office",
|
|
},
|
|
{
|
|
title: "UltiDraw",
|
|
description: "Diagrammes et croquis vectoriels intégrés à la suite.",
|
|
icon: "mdi:draw",
|
|
},
|
|
{
|
|
title: "Versioning",
|
|
description: "Historique des versions via le backend Nextcloud.",
|
|
icon: "mdi:history",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "partage",
|
|
eyebrow: "Partage & collaboration",
|
|
title: (
|
|
<>
|
|
Permissions simples,{" "}
|
|
<span className="landing-gradient-text">liens sécurisés</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Propriétaire, éditeur, lecteur — partage interne, lien public, mot de passe et expiration.",
|
|
demo: "ultidrive-share",
|
|
features: [
|
|
{
|
|
title: "Partage interne",
|
|
description: "Utilisateurs et groupes de l'organisation, rôles hérités.",
|
|
icon: "mdi:account-group-outline",
|
|
},
|
|
{
|
|
title: "Lien public",
|
|
description: "URL partageable, lecture ou écriture, expiration configurable.",
|
|
icon: "mdi:link-variant",
|
|
},
|
|
{
|
|
title: "Protection par mot de passe",
|
|
description: "Sécurisez les liens sensibles avant diffusion externe.",
|
|
icon: "mdi:shield-lock-outline",
|
|
},
|
|
{
|
|
title: "Montages cloud",
|
|
description: "Google Drive, Dropbox, OneDrive ou WebDAV org — dans le même explorateur.",
|
|
icon: "mdi:cloud-sync-outline",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
crossPlatformSection: {
|
|
eyebrow: "Sync & montage",
|
|
title: (
|
|
<>
|
|
Un drive local,{" "}
|
|
<span className="landing-gradient-text">partout sur vos postes</span>
|
|
</>
|
|
),
|
|
description:
|
|
"WebDAV natif, montage disque via rclone et client desktop Tauri — vos fichiers restent accessibles hors ligne.",
|
|
features: [
|
|
{
|
|
title: "WebDAV natif",
|
|
description: "Montez UltiDrive comme un disque réseau sur macOS, Windows et Linux.",
|
|
icon: "mdi:server-network",
|
|
},
|
|
{
|
|
title: "Client desktop Tauri",
|
|
description: "Sync sélective et accès hors ligne depuis l'app UltiSuite.",
|
|
icon: "mdi:desktop-classic",
|
|
},
|
|
{
|
|
title: "Apps mobile",
|
|
description: "Parcourez et partagez depuis iOS et Android — même UX que le web.",
|
|
icon: "mdi:cellphone-link",
|
|
},
|
|
{
|
|
title: "Intégration mail",
|
|
description: "Enregistrez les PJ Ultimail directement dans votre drive.",
|
|
icon: "mdi:email-arrow-right-outline",
|
|
},
|
|
],
|
|
},
|
|
crossPlatformDemo: "drive",
|
|
interopSection: {
|
|
eyebrow: "Interopérabilité",
|
|
title: (
|
|
<>
|
|
Vos clouds existants,{" "}
|
|
<span className="landing-gradient-text">dans le même explorateur</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Montez vos dossiers personnels ou d'entreprise — Google Drive, OneDrive, Dropbox ou WebDAV — sans quitter UltiDrive.",
|
|
providers: [
|
|
{
|
|
name: "Google Drive",
|
|
tagline: "Drive personnel & Workspace",
|
|
icon: "logos:google-drive",
|
|
accent: "#4285F4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Connectez votre compte Google et parcourez Mon Drive depuis la barre latérale UltiDrive.",
|
|
enterprise:
|
|
"Montage Shared Drives (Workspace) pour accéder aux dossiers d'équipe sans migration.",
|
|
},
|
|
{
|
|
name: "Microsoft OneDrive",
|
|
tagline: "OneDrive & SharePoint",
|
|
icon: "logos:microsoft-onedrive",
|
|
accent: "#0078D4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Rattachez OneDrive perso — fichiers et albums visibles à côté de votre stockage Ulti.",
|
|
enterprise:
|
|
"OneDrive for Business et bibliothèques SharePoint montés pour les équipes.",
|
|
},
|
|
{
|
|
name: "Dropbox",
|
|
tagline: "Dropbox & Dropbox Business",
|
|
icon: "logos:dropbox",
|
|
accent: "#0061FF",
|
|
brandLogo: true,
|
|
personal:
|
|
"OAuth Dropbox : votre espace perso apparaît comme un volume dans l'explorateur.",
|
|
enterprise:
|
|
"Dropbox Business — dossiers d'équipe et espaces partagés sans changer d'interface.",
|
|
},
|
|
{
|
|
name: "WebDAV",
|
|
tagline: "NAS, Nextcloud externe, serveur org",
|
|
icon: "mdi:server-network",
|
|
accent: "#34A853",
|
|
personal:
|
|
"Serveur WebDAV perso (NAS Synology, Nextcloud auto-hébergé) monté en quelques clics.",
|
|
enterprise:
|
|
"Volume WebDAV partagé par l'admin — visible pour toute l'organisation dans UltiDrive.",
|
|
},
|
|
],
|
|
features: [
|
|
{
|
|
title: "OAuth ou URL",
|
|
description: "Connexion guidée pour les clouds grand public, URL + identifiants pour WebDAV.",
|
|
icon: "mdi:key-link",
|
|
},
|
|
{
|
|
title: "Vue unifiée",
|
|
description: "Mon Drive, montages perso et volumes org dans la même arborescence.",
|
|
icon: "mdi:folder-multiple-outline",
|
|
},
|
|
{
|
|
title: "Permissions respectées",
|
|
description: "Droits hérités du service source — lecture seule ou écriture selon le montage.",
|
|
icon: "mdi:shield-check-outline",
|
|
},
|
|
{
|
|
title: "Sans migration",
|
|
description: "Gardez vos fichiers chez le fournisseur d'origine, accédez-y depuis UltiDrive.",
|
|
icon: "mdi:cloud-sync-outline",
|
|
},
|
|
],
|
|
},
|
|
integrations: [
|
|
{
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description: "Pièces jointes sauvegardées et partage par lien depuis le mail.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
href: "/suite/ultimail",
|
|
accent: "#EA4335",
|
|
},
|
|
{
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description: "Partage par adresse e-mail avec autocomplétion contacts.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
href: "/contacts",
|
|
accent: "#4285F4",
|
|
},
|
|
{
|
|
name: ULTICAL_APP_NAME,
|
|
tagline: "Calendrier",
|
|
description: "Fichiers joints aux événements et invitations.",
|
|
icon: suitePublicAsset("/agenda-mark.svg"),
|
|
href: "/agenda",
|
|
accent: "#34c77b",
|
|
},
|
|
{
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description:
|
|
"Résumez vos documents, créez-en et modifiez-les sur simple commande.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
href: "/chat",
|
|
accent: "#f2783c",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à reprendre le contrôle de{" "}
|
|
<span className="landing-gradient-text">vos fichiers</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Déployez UltiDrive sur votre infrastructure et offrez à vos équipes une expérience Drive familière, sans dépendance cloud US.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiDrive", href: "/drive" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|
|
|
|
export const ULTICAL_PRODUCT: ProductPageData = {
|
|
name: ULTICAL_APP_NAME,
|
|
tagline: "Calendrier",
|
|
description:
|
|
"Calendrier partagé multi-agendas, invitations et RSVP liés au mail, disponibilités et prise de rendez-vous — l'alternative souveraine à Google Agenda, basée sur CalDAV et hébergée chez vous.",
|
|
icon: suitePublicAsset("/agenda-mark.svg"),
|
|
accent: "#FBBC04",
|
|
heroEyebrow: "Calendrier souverain",
|
|
heroTitle: "Tout votre temps,",
|
|
heroTitleAccent: "au même endroit.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiCal", href: "/agenda" },
|
|
secondary: { label: "Essayer la démo", href: "/demo/agenda" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi UltiCal",
|
|
title: (
|
|
<>
|
|
L'ergonomie de Google Agenda,{" "}
|
|
<span className="landing-gradient-text">sans Google</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Vues familières, invitations connectées au mail et standard CalDAV ouvert — sur votre infrastructure, sans céder vos données.",
|
|
highlights: [
|
|
{ value: "J/S/M", label: "vues jour, semaine, mois" },
|
|
{ value: "∞", label: "agendas partagés cross-comptes" },
|
|
{ value: "CalDAV", label: "standard ouvert, sans verrou" },
|
|
{ value: "0", label: "tracker ou télémétrie" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "calendrier-partage",
|
|
eyebrow: "Calendrier partagé",
|
|
title: (
|
|
<>
|
|
Tous vos agendas,{" "}
|
|
<span className="landing-gradient-text">une seule vue</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Vues jour, semaine et mois, glisser-déposer et agendas multiples — branchés sur votre serveur CalDAV.",
|
|
demo: "ultical-agenda",
|
|
features: [
|
|
{
|
|
title: "Multi-agendas CalDAV",
|
|
description: "Perso, équipe et partagés — superposés avec leurs couleurs.",
|
|
icon: "mdi:calendar-multiple",
|
|
},
|
|
{
|
|
title: "Vues jour / semaine / mois",
|
|
description: "Basculez d'un coup d'œil entre vos différentes échelles de temps.",
|
|
icon: "mdi:calendar-week",
|
|
},
|
|
{
|
|
title: "Glisser-déposer",
|
|
description: "Déplacez et redimensionnez les événements directement à la souris.",
|
|
icon: "mdi:cursor-move",
|
|
},
|
|
{
|
|
title: "Couleurs & catégories",
|
|
description: "Un code couleur par agenda pour distinguer pro, perso et projets.",
|
|
icon: "mdi:palette-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "invitations",
|
|
eyebrow: "Invitations & RSVP",
|
|
title: (
|
|
<>
|
|
Invitez, répondez,{" "}
|
|
<span className="landing-gradient-text">synchronisez</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Invitations envoyées par mail, RSVP en un clic et visio UltiMeet ajoutée automatiquement.",
|
|
demo: "ultical-invitations",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "Détection depuis le mail",
|
|
description: "Ultimail reconnaît les invitations .ics et propose Oui / Non / Peut-être.",
|
|
icon: "mdi:email-arrow-right-outline",
|
|
},
|
|
{
|
|
title: "RSVP en un clic",
|
|
description: "Répondez sans quitter le mail — le statut se synchronise dans l'agenda.",
|
|
icon: "mdi:check-circle-outline",
|
|
},
|
|
{
|
|
title: "Visio UltiMeet auto",
|
|
description: "Un lien de réunion chiffré généré et joint à chaque événement.",
|
|
icon: "mdi:video-outline",
|
|
},
|
|
{
|
|
title: "Invités & disponibilités",
|
|
description: "Voyez qui a accepté et proposez un autre horaire en cas de conflit.",
|
|
icon: "mdi:account-group-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "rendez-vous",
|
|
eyebrow: "Disponibilités & rendez-vous",
|
|
title: (
|
|
<>
|
|
Vos créneaux libres,{" "}
|
|
<span className="landing-gradient-text">réservables en un lien</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Partagez une page de réservation, laissez vos contacts choisir un créneau, recevez rappels et notifications.",
|
|
demo: "ultical-scheduling",
|
|
features: [
|
|
{
|
|
title: "Pages de réservation",
|
|
description: "Un lien public façon Calendly, calé sur vos vraies disponibilités.",
|
|
icon: "mdi:calendar-clock",
|
|
},
|
|
{
|
|
title: "Free / busy en temps réel",
|
|
description: "Les créneaux occupés sont masqués automatiquement, sans double réservation.",
|
|
icon: "mdi:clock-check-outline",
|
|
},
|
|
{
|
|
title: "Rappels & notifications",
|
|
description: "Alertes par mail et notifications push avant chaque événement.",
|
|
icon: "mdi:bell-outline",
|
|
},
|
|
{
|
|
title: "Gestion des fuseaux",
|
|
description: "Affichage et conversion automatiques selon le fuseau de chaque invité.",
|
|
icon: "mdi:earth",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
interopSection: {
|
|
eyebrow: "Interopérabilité",
|
|
title: (
|
|
<>
|
|
Vos calendriers existants,{" "}
|
|
<span className="landing-gradient-text">dans la même vue</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Abonnez vos agendas personnels ou d'entreprise — Google Agenda, Outlook, Apple ou CalDAV — sans quitter UltiCal.",
|
|
providers: [
|
|
{
|
|
name: "Google Agenda",
|
|
tagline: "Agenda perso & Workspace",
|
|
icon: "logos:google-calendar",
|
|
accent: "#4285F4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Connectez votre compte Google et superposez vos agendas perso dans la vue UltiCal.",
|
|
enterprise:
|
|
"Agendas d'équipe Workspace synchronisés pour coordonner les disponibilités sans migration.",
|
|
},
|
|
{
|
|
name: "Microsoft Outlook",
|
|
tagline: "Outlook & Microsoft 365",
|
|
icon: "vscode-icons:file-type-outlook",
|
|
accent: "#0078D4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Rattachez votre calendrier Outlook.com — événements visibles à côté de vos agendas Ulti.",
|
|
enterprise:
|
|
"Calendriers Microsoft 365 et salles de réunion partagés pour toute l'organisation.",
|
|
},
|
|
{
|
|
name: "Apple iCloud",
|
|
tagline: "iCloud & Calendrier Apple",
|
|
icon: "mdi:apple",
|
|
accent: "#9aa0a6",
|
|
personal:
|
|
"Abonnez vos agendas iCloud via CalDAV — la même base ouverte que vos appareils Apple.",
|
|
enterprise:
|
|
"Calendriers partagés iCloud accessibles depuis l'explorateur d'agendas UltiCal.",
|
|
},
|
|
{
|
|
name: "CalDAV",
|
|
tagline: "Nextcloud, Radicale, serveur org",
|
|
icon: "mdi:calendar-sync",
|
|
accent: "#FBBC04",
|
|
personal:
|
|
"Serveur CalDAV perso (Nextcloud, Radicale auto-hébergé) abonné en quelques clics.",
|
|
enterprise:
|
|
"Agendas CalDAV partagés par l'admin — visibles pour toute l'organisation dans UltiCal.",
|
|
},
|
|
],
|
|
features: [
|
|
{
|
|
title: "Standard CalDAV",
|
|
description: "Protocole ouvert : aucun verrou propriétaire, vos données restent portables.",
|
|
icon: "mdi:calendar-sync-outline",
|
|
},
|
|
{
|
|
title: "Vue unifiée",
|
|
description: "Agendas perso, abonnés et partagés org superposés dans le même calendrier.",
|
|
icon: "mdi:calendar-multiple",
|
|
},
|
|
{
|
|
title: "Sync bidirectionnelle",
|
|
description: "Créez ici, retrouvez partout — vos appareils restent à jour automatiquement.",
|
|
icon: "mdi:sync",
|
|
},
|
|
{
|
|
title: "Apps mobile & desktop",
|
|
description: "iOS, Android et client desktop Tauri — même agenda, adapté à chaque écran.",
|
|
icon: "mdi:cellphone-link",
|
|
},
|
|
],
|
|
},
|
|
integrations: [
|
|
{
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description: "Invitations détectées dans le mail et RSVP synchronisés avec l'agenda.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
href: "/suite/ultimail",
|
|
accent: "#EA4335",
|
|
},
|
|
{
|
|
name: "UltiMeet",
|
|
tagline: "Visio",
|
|
description: "Lien de réunion chiffré ajouté automatiquement à chaque événement.",
|
|
icon: suitePublicAsset("/ultimeet-mark.svg"),
|
|
href: "/meet",
|
|
accent: "#34A853",
|
|
},
|
|
{
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description: "Autocomplétion des invités et fiches contacts enrichies.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
href: "/contacts",
|
|
accent: "#4285F4",
|
|
},
|
|
{
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description:
|
|
"Créez des créneaux ou déplacez vos rendez-vous sur simple commande.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
href: "/chat",
|
|
accent: "#f2783c",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à reprendre le contrôle de{" "}
|
|
<span className="landing-gradient-text">votre temps</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Déployez UltiCal sur votre infrastructure et offrez à vos équipes un calendrier partagé familier, sans dépendance cloud US.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiCal", href: "/agenda" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|
|
|
|
export const ULTIAI_PRODUCT: ProductPageData = {
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description:
|
|
"Assistant IA souverain intégré à toute la suite : chat contextuel, actions sur vos mails, fichiers, agenda et contacts via MCP, tri LLM et tokens API fine-grained — vos modèles, votre infrastructure.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
accent: "#F59E0B",
|
|
heroEyebrow: "Assistant IA souverain",
|
|
heroTitle: "Une IA qui agit",
|
|
heroTitleAccent: "dans toute votre suite.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiAI", href: "/chat" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi UltiAI",
|
|
title: (
|
|
<>
|
|
La puissance d'un copilote,{" "}
|
|
<span className="landing-gradient-text">sans céder vos données</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Branchez le modèle de votre choix, donnez à l'assistant des outils sur votre suite et gardez le contrôle des permissions — sur votre infrastructure.",
|
|
highlights: [
|
|
{ value: "∞", label: "modèles OpenAI-compatibles" },
|
|
{ value: "MCP", label: "outils suite & recherche web" },
|
|
{ value: "Tri IA", label: "classement & résumés automatiques" },
|
|
{ value: "0", label: "tracker ou télémétrie" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "assistant",
|
|
eyebrow: "Assistant conversationnel",
|
|
title: (
|
|
<>
|
|
Votre copilote,{" "}
|
|
<span className="landing-gradient-text">dans toute la suite</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Un chat intégré qui connaît le contexte de votre mail, vos fichiers et votre agenda — en plein écran ou en panneau latéral.",
|
|
demo: "ultiai-chat",
|
|
features: [
|
|
{
|
|
title: "Chat intégré partout",
|
|
description: "Panneau latéral dans Ultimail et UltiDrive, ou plein écran sur /chat.",
|
|
icon: "mdi:message-text-outline",
|
|
},
|
|
{
|
|
title: "Contexte de la suite",
|
|
description: "Comprend le mail ouvert, le fichier sélectionné ou l'événement en cours.",
|
|
icon: "mdi:text-box-search-outline",
|
|
},
|
|
{
|
|
title: "Réponses en streaming",
|
|
description: "Génération token par token, sources et étapes affichées en direct.",
|
|
icon: "mdi:lightning-bolt-outline",
|
|
},
|
|
{
|
|
title: "Historique & conversations",
|
|
description: "Reprenez vos échanges, épinglez les fils utiles, repartez d'un prompt.",
|
|
icon: "mdi:history",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "outils",
|
|
eyebrow: "Actions sur votre suite",
|
|
title: (
|
|
<>
|
|
Plus que répondre,{" "}
|
|
<span className="landing-gradient-text">elle agit</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Via MCP, UltiAI utilise des outils sur vos applications — recherche, envoi, classement, déplacement — avec des permissions par groupe.",
|
|
demo: "ultiai-tools",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "Outils Mail",
|
|
description: "Recherche, lecture, envoi, libellés et suppression de messages.",
|
|
icon: "mdi:email-search-outline",
|
|
},
|
|
{
|
|
title: "Outils Drive & Contacts",
|
|
description: "Fichiers, dossiers, partages, carnets d'adresses et fiches.",
|
|
icon: "mdi:folder-account-outline",
|
|
},
|
|
{
|
|
title: "Outils Agenda",
|
|
description: "Événements UltiCal, invitations et visioconférence UltiMeet.",
|
|
icon: "mdi:calendar-edit-outline",
|
|
},
|
|
{
|
|
title: "Recherche unifiée + web",
|
|
description: "Index mail/drive/contacts et recherche en ligne (Brave, SearXNG…).",
|
|
icon: "mdi:magnify-scan",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "automatisations",
|
|
eyebrow: "Tri IA & automatisations",
|
|
title: (
|
|
<>
|
|
Triez et résumez,{" "}
|
|
<span className="landing-gradient-text">sans lever le doigt</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Branchez l'IA dans vos règles de tri : classement par LLM, résumés, réponses suggérées et tokens API pour vos agents.",
|
|
demo: "ultiai-triage",
|
|
features: [
|
|
{
|
|
title: "Tri LLM par règle",
|
|
description: "Prompt et contexte personnalisés par règle — le LLM choisit le libellé.",
|
|
icon: "mdi:creation-outline",
|
|
},
|
|
{
|
|
title: "Résumés & réponses",
|
|
description: "Synthèse des longs fils et brouillons de réponse en un clic.",
|
|
icon: "mdi:text-short",
|
|
},
|
|
{
|
|
title: "Tokens API fine-grained",
|
|
description: "Permissions partielles pour agents externes et webhooks.",
|
|
icon: "mdi:key-chain-variant",
|
|
},
|
|
{
|
|
title: "Fournisseur par règle",
|
|
description: "Choisissez le modèle adapté à chaque automatisation.",
|
|
icon: "mdi:tune-variant",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
interopSection: {
|
|
eyebrow: "Vos modèles",
|
|
title: (
|
|
<>
|
|
Vos modèles,{" "}
|
|
<span className="landing-gradient-text">votre choix</span>
|
|
</>
|
|
),
|
|
description:
|
|
"UltiAI parle l'API OpenAI-compatible : branchez un fournisseur cloud ou un modèle auto-hébergé, et changez quand vous voulez — sans lock-in.",
|
|
providers: [
|
|
{
|
|
name: "OpenAI",
|
|
tagline: "GPT & API compatibles",
|
|
icon: "logos:openai-icon",
|
|
accent: "#10A37F",
|
|
brandLogo: true,
|
|
personal:
|
|
"Renseignez votre clé API OpenAI et choisissez le modèle pour le chat et le tri.",
|
|
enterprise:
|
|
"Azure OpenAI ou passerelle d'entreprise via le même endpoint compatible.",
|
|
},
|
|
{
|
|
name: "Mistral AI",
|
|
tagline: "Modèles européens",
|
|
icon: "logos:mistral-ai-icon",
|
|
accent: "#FA520F",
|
|
brandLogo: true,
|
|
personal:
|
|
"Modèles Mistral hébergés en Europe, configurés en quelques secondes.",
|
|
enterprise:
|
|
"Déploiement Mistral dédié ou on-premise via endpoint compatible.",
|
|
},
|
|
{
|
|
name: "Anthropic",
|
|
tagline: "Famille Claude",
|
|
icon: "logos:anthropic-icon",
|
|
accent: "#D97757",
|
|
brandLogo: true,
|
|
personal:
|
|
"Branchez Claude via une passerelle OpenAI-compatible pour le raisonnement.",
|
|
enterprise:
|
|
"Clés d'organisation et quotas gérés au niveau de l'admin.",
|
|
},
|
|
{
|
|
name: "Ollama",
|
|
tagline: "Modèles locaux & auto-hébergés",
|
|
icon: "simple-icons:ollama",
|
|
accent: "#F59E0B",
|
|
personal:
|
|
"Faites tourner Llama, Qwen ou Mistral en local — aucune donnée ne sort.",
|
|
enterprise:
|
|
"Serveur d'inférence interne (vLLM, Ollama) partagé pour toute l'organisation.",
|
|
},
|
|
],
|
|
features: [
|
|
{
|
|
title: "API OpenAI-compatible",
|
|
description: "Tout endpoint conforme fonctionne : cloud, passerelle ou serveur local.",
|
|
icon: "mdi:api",
|
|
},
|
|
{
|
|
title: "Local & auto-hébergé",
|
|
description: "Gardez l'inférence chez vous — idéal pour les données sensibles.",
|
|
icon: "mdi:server-security",
|
|
},
|
|
{
|
|
title: "Permissions par outil",
|
|
description: "Activez ou coupez chaque groupe d'outils MCP exposé à l'assistant.",
|
|
icon: "mdi:shield-key-outline",
|
|
},
|
|
{
|
|
title: "Sans lock-in",
|
|
description: "Changez de fournisseur ou de modèle sans migrer vos données.",
|
|
icon: "mdi:swap-horizontal",
|
|
},
|
|
],
|
|
},
|
|
integrations: [
|
|
{
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description:
|
|
"Tri IA et résumés, mais aussi envoi et transfert de vos mails sur votre commande.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
href: "/suite/ultimail",
|
|
accent: "#EA4335",
|
|
},
|
|
{
|
|
name: "UltiDrive",
|
|
tagline: "Fichiers",
|
|
description:
|
|
"Interrogez et résumez vos documents, créez-en et modifiez-les sur votre commande.",
|
|
icon: suitePublicAsset("/ultidrive-mark.svg"),
|
|
href: "/suite/ultidrive",
|
|
accent: "#34A853",
|
|
},
|
|
{
|
|
name: ULTICAL_APP_NAME,
|
|
tagline: "Calendrier",
|
|
description:
|
|
"Trouvez un créneau, créez des rendez-vous ou déplacez-les sur votre commande.",
|
|
icon: suitePublicAsset("/agenda-mark.svg"),
|
|
href: "/suite/ultical",
|
|
accent: "#FBBC04",
|
|
},
|
|
{
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description: "Retrouvez et enrichissez vos fiches contacts sur votre commande.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
href: "/contacts",
|
|
accent: "#4285F4",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à donner des{" "}
|
|
<span className="landing-gradient-text">superpouvoirs à votre suite</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Activez UltiAI sur votre infrastructure, branchez votre modèle et gardez le contrôle total des données et des permissions.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiAI", href: "/chat" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|
|
|
|
export const ULTICARDS_PRODUCT: ProductPageData = {
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description:
|
|
"Carnet d'adresses unifié cross-comptes, fiches enrichies, découverte de contacts depuis le mail, fusion de doublons et sync CardDAV — l'alternative souveraine à Google Contacts, hébergée chez vous.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
accent: "#4285F4",
|
|
heroEyebrow: "Carnet d'adresses souverain",
|
|
heroTitle: "Tous vos contacts,",
|
|
heroTitleAccent: "au même endroit.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiCards", href: "/contacts" },
|
|
secondary: { label: "Essayer la démo", href: "/demo/contacts" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi UltiCards",
|
|
title: (
|
|
<>
|
|
L'ergonomie de Google Contacts,{" "}
|
|
<span className="landing-gradient-text">sans Google</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Carnet familier, enrichissement IA et standard CardDAV ouvert — partagé par toute la suite, sans céder vos données.",
|
|
highlights: [
|
|
{ value: "1", label: "carnet unifié cross-comptes" },
|
|
{ value: "∞", label: "champs personnalisés & groupes" },
|
|
{ value: "CardDAV", label: "standard ouvert, sans verrou" },
|
|
{ value: "0", label: "tracker ou télémétrie" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "carnet-unifie",
|
|
eyebrow: "Carnet unifié",
|
|
title: (
|
|
<>
|
|
Toutes vos fiches,{" "}
|
|
<span className="landing-gradient-text">une seule vue</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Contacts, groupes, étiquettes et recherche instantanée — branchés sur votre serveur CardDAV.",
|
|
demo: "ulticards-directory",
|
|
features: [
|
|
{
|
|
title: "Fiches enrichies",
|
|
description: "Emails, téléphones, adresses, organisation, anniversaire et notes.",
|
|
icon: "mdi:card-account-details-outline",
|
|
},
|
|
{
|
|
title: "Groupes & étiquettes",
|
|
description: "Organisez par équipe, projet ou famille — filtres dynamiques.",
|
|
icon: "mdi:tag-multiple-outline",
|
|
},
|
|
{
|
|
title: "Champs personnalisés",
|
|
description: "Ajoutez vos propres champs typés, sans limite ni schéma figé.",
|
|
icon: "mdi:format-list-bulleted-type",
|
|
},
|
|
{
|
|
title: "Recherche instantanée",
|
|
description: "Nom, e-mail, société — recherche floue dans tout le carnet.",
|
|
icon: "mdi:account-search-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "decouverte",
|
|
eyebrow: "Découverte & enrichissement",
|
|
title: (
|
|
<>
|
|
Vos contacts,{" "}
|
|
<span className="landing-gradient-text">détectés et complétés</span>
|
|
</>
|
|
),
|
|
description:
|
|
"UltiCards scanne vos boîtes mail, propose les contacts manquants et enrichit les fiches par IA.",
|
|
demo: "ulticards-discovery",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "Découverte depuis le mail",
|
|
description: "Profils détectés dans vos échanges, suggérés à l'ajout en un clic.",
|
|
icon: "mdi:email-search-outline",
|
|
},
|
|
{
|
|
title: "Enrichissement IA",
|
|
description: "Société, poste et coordonnées extraits des signatures par LLM.",
|
|
icon: "mdi:auto-fix",
|
|
},
|
|
{
|
|
title: "Tri des indésirables",
|
|
description: "Listes de diffusion, jetables et spam écartés automatiquement.",
|
|
icon: "mdi:filter-remove-outline",
|
|
},
|
|
{
|
|
title: "Interactions récentes",
|
|
description: "Derniers mails échangés affichés directement dans la fiche.",
|
|
icon: "mdi:history",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "doublons",
|
|
eyebrow: "Doublons & import/export",
|
|
title: (
|
|
<>
|
|
Un carnet propre,{" "}
|
|
<span className="landing-gradient-text">sans doublons</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Détection intelligente des doublons, fusion assistée et migration sans douleur depuis vos carnets existants.",
|
|
demo: "ulticards-merge",
|
|
features: [
|
|
{
|
|
title: "Détection de doublons",
|
|
description: "Fiches similaires regroupées par e-mail, nom ou téléphone.",
|
|
icon: "mdi:account-multiple-outline",
|
|
},
|
|
{
|
|
title: "Fusion assistée",
|
|
description: "Combinez les champs en gardant la meilleure valeur de chaque fiche.",
|
|
icon: "mdi:call-merge",
|
|
},
|
|
{
|
|
title: "Import vCard, CSV & Google",
|
|
description: "Récupérez vos carnets existants en quelques clics.",
|
|
icon: "mdi:file-import-outline",
|
|
},
|
|
{
|
|
title: "Export & impression",
|
|
description: "Sauvegardez en vCard/CSV ou imprimez une fiche propre.",
|
|
icon: "mdi:file-export-outline",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
interopSection: {
|
|
eyebrow: "Interopérabilité",
|
|
title: (
|
|
<>
|
|
Vos carnets existants,{" "}
|
|
<span className="landing-gradient-text">dans la même vue</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Synchronisez vos contacts personnels ou d'entreprise — Google, iCloud, Outlook ou CardDAV — sans quitter UltiCards.",
|
|
providers: [
|
|
{
|
|
name: "Google Contacts",
|
|
tagline: "Contacts perso & Workspace",
|
|
icon: "logos:google-icon",
|
|
accent: "#4285F4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Importez vos contacts Google et retrouvez-les unifiés dans le carnet UltiCards.",
|
|
enterprise:
|
|
"Annuaire d'équipe Workspace synchronisé pour partager les fiches sans migration.",
|
|
},
|
|
{
|
|
name: "Apple iCloud",
|
|
tagline: "iCloud & Contacts Apple",
|
|
icon: "mdi:apple",
|
|
accent: "#9aa0a6",
|
|
personal:
|
|
"Synchronisez vos contacts iCloud via CardDAV — la même base ouverte que vos appareils Apple.",
|
|
enterprise:
|
|
"Carnets partagés iCloud accessibles depuis l'annuaire UltiCards.",
|
|
},
|
|
{
|
|
name: "Microsoft Outlook",
|
|
tagline: "Outlook & Microsoft 365",
|
|
icon: "vscode-icons:file-type-outlook",
|
|
accent: "#0078D4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Rattachez vos contacts Outlook.com — fiches visibles à côté de vos carnets Ulti.",
|
|
enterprise:
|
|
"Annuaire Microsoft 365 et listes de distribution partagés pour toute l'organisation.",
|
|
},
|
|
{
|
|
name: "CardDAV",
|
|
tagline: "Nextcloud, Radicale, serveur org",
|
|
icon: "mdi:card-account-details-outline",
|
|
accent: "#34A853",
|
|
personal:
|
|
"Serveur CardDAV perso (Nextcloud, Radicale auto-hébergé) synchronisé en quelques clics.",
|
|
enterprise:
|
|
"Carnets CardDAV partagés par l'admin — visibles pour toute l'organisation dans UltiCards.",
|
|
},
|
|
],
|
|
features: [
|
|
{
|
|
title: "Standard CardDAV",
|
|
description: "Protocole ouvert : aucun verrou propriétaire, vos contacts restent portables.",
|
|
icon: "mdi:sync",
|
|
},
|
|
{
|
|
title: "Vue unifiée",
|
|
description: "Carnets perso, importés et partagés org regroupés dans le même annuaire.",
|
|
icon: "mdi:account-box-multiple-outline",
|
|
},
|
|
{
|
|
title: "Sync bidirectionnelle",
|
|
description: "Créez ici, retrouvez partout — vos appareils restent à jour automatiquement.",
|
|
icon: "mdi:sync-circle",
|
|
},
|
|
{
|
|
title: "Apps mobile & desktop",
|
|
description: "iOS, Android et client desktop Tauri — même carnet, adapté à chaque écran.",
|
|
icon: "mdi:cellphone-link",
|
|
},
|
|
],
|
|
},
|
|
integrations: [
|
|
{
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description: "Autocomplétion des destinataires et fiches enrichies à la composition.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
href: "/suite/ultimail",
|
|
accent: "#EA4335",
|
|
},
|
|
{
|
|
name: ULTICAL_APP_NAME,
|
|
tagline: "Calendrier",
|
|
description: "Invités suggérés depuis le carnet et anniversaires dans l'agenda.",
|
|
icon: suitePublicAsset("/agenda-mark.svg"),
|
|
href: "/suite/ultical",
|
|
accent: "#FBBC04",
|
|
},
|
|
{
|
|
name: "UltiDrive",
|
|
tagline: "Fichiers",
|
|
description: "Partage par adresse e-mail avec autocomplétion des contacts.",
|
|
icon: suitePublicAsset("/ultidrive-mark.svg"),
|
|
href: "/suite/ultidrive",
|
|
accent: "#34A853",
|
|
},
|
|
{
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description: "Retrouvez et enrichissez vos fiches contacts sur simple commande.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
href: "/suite/ultiai",
|
|
accent: "#f2783c",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à reprendre le contrôle de{" "}
|
|
<span className="landing-gradient-text">votre carnet d'adresses</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Déployez UltiCards sur votre infrastructure et offrez à vos équipes un carnet partagé familier, sans dépendance cloud US.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir UltiCards", href: "/contacts" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|
|
|
|
export const ULTIMEET_PRODUCT: ProductPageData = {
|
|
name: "UltiMeet",
|
|
tagline: "Visio",
|
|
description:
|
|
"Lancez une visio en un clic, sans que Google, Microsoft ou Zoom puissent écouter ce qui s'y dit. Vos réunions restent chiffrées et entre vous.",
|
|
icon: suitePublicAsset("/ultimeet-mark.svg"),
|
|
accent: "#34A853",
|
|
heroEyebrow: "Visioconférence souveraine",
|
|
heroTitle: "Vos réunions vidéo,",
|
|
heroTitleAccent: "à l'abri des GAFAM.",
|
|
ctas: {
|
|
primary: { label: "Démarrer une réunion", href: "/meet" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi UltiMeet",
|
|
title: (
|
|
<>
|
|
Des réunions{" "}
|
|
<span className="landing-gradient-text">que personne n'écoute</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Une visio claire et familière, connectée à votre agenda et votre messagerie — sans que les géants du web puissent écouter ni profiler vos échanges.",
|
|
highlights: [
|
|
{ value: "1 clic", label: "pour lancer une réunion" },
|
|
{ value: "E2EE", label: "chiffrement de bout en bout" },
|
|
{ value: "0", label: "GAFAM à l'écoute" },
|
|
{ value: "0", label: "tracker ou télémétrie" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "reunions-navigateur",
|
|
eyebrow: "Réunions dans le navigateur",
|
|
title: (
|
|
<>
|
|
Lancez une visio,{" "}
|
|
<span className="landing-gradient-text">en un clic</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Vidéo HD WebRTC, grille de participants et contrôles familiers — sans plugin ni application à installer.",
|
|
demo: "ultimeet-room",
|
|
features: [
|
|
{
|
|
title: "Vidéo HD WebRTC",
|
|
description: "Flux audio/vidéo temps réel dans le navigateur, sans installation.",
|
|
icon: "mdi:video-outline",
|
|
},
|
|
{
|
|
title: "Chiffrement de bout en bout",
|
|
description: "Médias chiffrés (E2EE) — vos réunions restent privées.",
|
|
icon: "mdi:lock-check-outline",
|
|
},
|
|
{
|
|
title: "Salles persistantes",
|
|
description: "Une URL stable par équipe ou projet, réutilisable à volonté.",
|
|
icon: "mdi:door-open",
|
|
},
|
|
{
|
|
title: "Grille & vue active",
|
|
description: "Mosaïque ou orateur épinglé, détection automatique de la voix.",
|
|
icon: "mdi:view-grid-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "planification-acces",
|
|
eyebrow: "Planification & accès",
|
|
title: (
|
|
<>
|
|
Planifiée dans l'agenda,{" "}
|
|
<span className="landing-gradient-text">protégée par un lobby</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Un lien généré depuis UltiCal et Ultimail, une salle d'attente et un contrôle d'accès — sans compte pour vos invités.",
|
|
demo: "ultimeet-lobby",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "Lien depuis UltiCal",
|
|
description: "Visio ajoutée automatiquement à chaque événement et invitation.",
|
|
icon: "mdi:calendar-plus-outline",
|
|
},
|
|
{
|
|
title: "Salle d'attente",
|
|
description: "Les participants patientent jusqu'à l'admission par l'hôte.",
|
|
icon: "mdi:account-clock-outline",
|
|
},
|
|
{
|
|
title: "Contrôle d'accès",
|
|
description: "Verrouillage de salle, mot de passe et expulsion en un clic.",
|
|
icon: "mdi:shield-account-outline",
|
|
},
|
|
{
|
|
title: "Sans compte pour les invités",
|
|
description: "Vos contacts rejoignent depuis un simple lien, aucun compte requis.",
|
|
icon: "mdi:link-variant",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "collaboration",
|
|
eyebrow: "Collaboration en réunion",
|
|
title: (
|
|
<>
|
|
Partagez, réagissez,{" "}
|
|
<span className="landing-gradient-text">transcrivez</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Partage d'écran, chat, réactions et enregistrement — avec transcription et résumés générés par UltiAI.",
|
|
demo: "ultimeet-collab",
|
|
features: [
|
|
{
|
|
title: "Partage d'écran",
|
|
description: "Diffusez une fenêtre, un onglet ou tout l'écran en HD.",
|
|
icon: "mdi:monitor-share",
|
|
},
|
|
{
|
|
title: "Chat & réactions",
|
|
description: "Messages, émojis, lever la main et sondages pendant la réunion.",
|
|
icon: "mdi:message-reply-text-outline",
|
|
},
|
|
{
|
|
title: "Enregistrement",
|
|
description: "Enregistrez la session sur votre UltiDrive, sous votre contrôle.",
|
|
icon: "mdi:record-rec",
|
|
},
|
|
{
|
|
title: "Transcription IA",
|
|
description: "Sous-titres en direct et résumé d'après-réunion via UltiAI.",
|
|
icon: "mdi:text-recognition",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
crossPlatformSection: {
|
|
eyebrow: "Multi-plateforme",
|
|
title: (
|
|
<>
|
|
Rejoignez depuis{" "}
|
|
<span className="landing-gradient-text">n'importe quel appareil</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Navigateur, apps iOS et Android natives (Tauri) ou client desktop — la même réunion UltiMeet, adaptée à chaque écran et à chaque connexion.",
|
|
features: [
|
|
{
|
|
title: "Navigateur, zéro install",
|
|
description: "Chrome, Safari, Firefox ou Edge — un lien suffit pour rejoindre.",
|
|
icon: "mdi:web",
|
|
},
|
|
{
|
|
title: "Apps iOS & Android",
|
|
description: "Clients natifs Tauri, même expérience que sur le web.",
|
|
icon: "mdi:cellphone-link",
|
|
},
|
|
{
|
|
title: "Mode économe",
|
|
description: "Adaptation du débit et coupure vidéo automatique sur réseau faible.",
|
|
icon: "mdi:signal-cellular-2",
|
|
},
|
|
{
|
|
title: "Notifications & rappels",
|
|
description: "Alertes avant chaque réunion, synchronisées avec UltiCal.",
|
|
icon: "mdi:bell-outline",
|
|
},
|
|
],
|
|
},
|
|
crossPlatformDemo: "meet",
|
|
integrations: [
|
|
{
|
|
name: ULTICAL_APP_NAME,
|
|
tagline: "Calendrier",
|
|
description: "Lien de réunion chiffré ajouté automatiquement à chaque événement.",
|
|
icon: suitePublicAsset("/agenda-mark.svg"),
|
|
href: "/suite/ultical",
|
|
accent: "#FBBC04",
|
|
},
|
|
{
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description: "Invitations détectées dans le mail et lien visio en un clic.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
href: "/suite/ultimail",
|
|
accent: "#EA4335",
|
|
},
|
|
{
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description: "Invités suggérés depuis le carnet avec autocomplétion.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
href: "/suite/ulticards",
|
|
accent: "#4285F4",
|
|
},
|
|
{
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description: "Transcription en direct, sous-titres et résumés d'après-réunion.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
href: "/suite/ultiai",
|
|
accent: "#f2783c",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à reprendre le contrôle de{" "}
|
|
<span className="landing-gradient-text">vos réunions</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Déployez UltiMeet sur votre infrastructure et offrez à vos équipes une visio familière et chiffrée, sans dépendance cloud US.",
|
|
ctas: {
|
|
primary: { label: "Démarrer une réunion", href: "/meet" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|
|
|
|
export const ADMINISTRATION_PRODUCT: ProductPageData = {
|
|
name: "Administration",
|
|
tagline: "Console d'administration",
|
|
description:
|
|
"Pilotez toute la suite depuis une console unique : migration depuis Google Workspace et Microsoft 365, gestion d'identité (SSO), utilisateurs, groupes, quotas, politiques de sécurité et audit — souverain, hébergé chez vous.",
|
|
icon: suitePublicAsset("/admin-mark.svg"),
|
|
accent: "#7C3AED",
|
|
heroEyebrow: "Console souveraine",
|
|
heroTitle: "Toute votre organisation,",
|
|
heroTitleAccent: "sous contrôle.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir la console", href: "/admin" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
highlightsSection: {
|
|
eyebrow: "Pourquoi l'Administration UltiSuite",
|
|
title: (
|
|
<>
|
|
Quittez Google et Microsoft,{" "}
|
|
<span className="landing-gradient-text">gardez la maîtrise</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Migration assistée, identité fédérée, quotas et politiques de sécurité — toute la gouvernance de votre organisation au même endroit, sans dépendance cloud US.",
|
|
highlights: [
|
|
{ value: "Workspace + 365", label: "migration mail, drive, agenda, contacts" },
|
|
{ value: "SSO", label: "OAuth, SAML & LDAP/Active Directory" },
|
|
{ value: "RBAC", label: "rôles, groupes & quotas par défaut" },
|
|
{ value: "Audit", label: "journal exportable, 0 télémétrie" },
|
|
],
|
|
},
|
|
showcases: [
|
|
{
|
|
id: "migration",
|
|
eyebrow: "Migration & bascule",
|
|
title: (
|
|
<>
|
|
Depuis Google & Microsoft,{" "}
|
|
<span className="landing-gradient-text">sans rien perdre</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Importez mail, drive, agenda et contacts depuis Google Workspace ou Microsoft 365, suivez chaque job et basculez les MX quand tout est prêt.",
|
|
demo: "admin-migration",
|
|
features: [
|
|
{
|
|
title: "Google Workspace & Microsoft 365",
|
|
description: "OAuth utilisateur, Google DWD ou Microsoft app-only — au choix par projet.",
|
|
icon: "mdi:swap-horizontal-bold",
|
|
},
|
|
{
|
|
title: "Invitations & roster",
|
|
description: "Invitez par e-mail ou import CSV, pré-provisionnez le roster et les alias SSO.",
|
|
icon: "mdi:account-multiple-plus-outline",
|
|
},
|
|
{
|
|
title: "Suivi des jobs & audit",
|
|
description: "Progression par service, relance des échecs et export CSV/NDJSON par utilisateur.",
|
|
icon: "mdi:progress-check",
|
|
},
|
|
{
|
|
title: "Bascule MX guidée",
|
|
description: "Pré-vérification DNS (TXT, MX, SPF/DKIM/DMARC) puis cutover en mode delta.",
|
|
icon: "mdi:dns-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "identite",
|
|
eyebrow: "Gestion d'identité",
|
|
title: (
|
|
<>
|
|
Une identité fédérée,{" "}
|
|
<span className="landing-gradient-text">vos règles d'accès</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Connectez vos fournisseurs SSO existants via Authentik et gardez la main sur qui accède à quoi.",
|
|
demo: "admin-identity",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "OAuth, SAML & LDAP",
|
|
description: "Google, Microsoft Entra, Okta, Active Directory ou OAuth custom.",
|
|
icon: "mdi:account-key-outline",
|
|
},
|
|
{
|
|
title: "Inscription self-service",
|
|
description: "Flow d'enrollment Authentik en parallèle du SSO entreprise, activable.",
|
|
icon: "mdi:account-plus-outline",
|
|
},
|
|
{
|
|
title: "Restrictions d'accès",
|
|
description: "Domaines e-mail, identités et organisations autorisés par fournisseur.",
|
|
icon: "mdi:shield-account-outline",
|
|
},
|
|
{
|
|
title: "Provisioning de groupes",
|
|
description: "Groupes Authentik par défaut et synchronisation des comptes LDAP.",
|
|
icon: "mdi:account-sync-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "utilisateurs",
|
|
eyebrow: "Utilisateurs, rôles & groupes",
|
|
title: (
|
|
<>
|
|
Vos équipes,{" "}
|
|
<span className="landing-gradient-text">organisées et gouvernées</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Annuaire complet, rôles fins et groupes pour piloter les permissions à grande échelle.",
|
|
demo: "admin-users",
|
|
features: [
|
|
{
|
|
title: "Rôles admin / utilisateur / invité",
|
|
description: "Attribuez les bons droits et suspendez un compte en un clic.",
|
|
icon: "mdi:shield-crown-outline",
|
|
},
|
|
{
|
|
title: "Groupes d'utilisateurs",
|
|
description: "Équipes, services et externes — base des partages et des permissions.",
|
|
icon: "mdi:account-group-outline",
|
|
},
|
|
{
|
|
title: "Actions en masse",
|
|
description: "Invitation, rôle, quota ou ajout à un groupe sur une sélection.",
|
|
icon: "mdi:checkbox-multiple-marked-outline",
|
|
},
|
|
{
|
|
title: "Fiche utilisateur",
|
|
description: "Quotas individuels, plafonds IA et statut depuis chaque profil.",
|
|
icon: "mdi:card-account-details-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "quotas",
|
|
eyebrow: "Quotas & supervision",
|
|
title: (
|
|
<>
|
|
Des ressources cadrées,{" "}
|
|
<span className="landing-gradient-text">sans surprise</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Quotas de stockage, plafonds de coût IA et seuils d'alerte appliqués par défaut, ajustables par compte.",
|
|
demo: "admin-quotas",
|
|
reverse: true,
|
|
features: [
|
|
{
|
|
title: "Stockage Mail, Drive & Photos",
|
|
description: "Quotas par défaut pour l'organisation, surcharge par utilisateur.",
|
|
icon: "mdi:gauge",
|
|
},
|
|
{
|
|
title: "Plafonds de coût IA",
|
|
description: "Limites journalières et mensuelles par utilisateur sur les clés org.",
|
|
icon: "mdi:robot-outline",
|
|
},
|
|
{
|
|
title: "Recherche & automatisations",
|
|
description: "Recherches web, tokens API et webhooks plafonnés par compte.",
|
|
icon: "mdi:tune-variant",
|
|
},
|
|
{
|
|
title: "Vue d'ensemble & alertes",
|
|
description: "Stockage consommé, comptes proches du quota et activité récente.",
|
|
icon: "mdi:view-dashboard-outline",
|
|
},
|
|
],
|
|
},
|
|
{
|
|
id: "securite",
|
|
eyebrow: "Sécurité & politiques",
|
|
title: (
|
|
<>
|
|
Des politiques fermes,{" "}
|
|
<span className="landing-gradient-text">une traçabilité totale</span>
|
|
</>
|
|
),
|
|
description:
|
|
"2FA, politiques fichiers et journal d'audit pour répondre à vos exigences de conformité.",
|
|
demo: "admin-policies",
|
|
features: [
|
|
{
|
|
title: "2FA & WebAuthn",
|
|
description: "Second facteur obligatoire (tous ou admins), TOTP et clés de sécurité.",
|
|
icon: "mdi:cellphone-key",
|
|
},
|
|
{
|
|
title: "Politiques fichiers",
|
|
description: "Partage externe, extensions autorisées, antivirus et rétention UltiDrive.",
|
|
icon: "mdi:file-cog-outline",
|
|
},
|
|
{
|
|
title: "Journal d'audit",
|
|
description: "Toutes les actions administratives tracées, export CSV/NDJSON.",
|
|
icon: "mdi:clipboard-text-clock-outline",
|
|
},
|
|
{
|
|
title: "Souveraineté des données",
|
|
description: "Hébergement chez vous, aucune télémétrie ni tracker tiers.",
|
|
icon: "mdi:shield-lock-outline",
|
|
},
|
|
],
|
|
},
|
|
],
|
|
interopSection: {
|
|
eyebrow: "Sources & fédération",
|
|
title: (
|
|
<>
|
|
Vos plateformes actuelles,{" "}
|
|
<span className="landing-gradient-text">migrées et fédérées</span>
|
|
</>
|
|
),
|
|
description:
|
|
"Migrez les données depuis vos suites existantes et continuez à fédérer l'identité via SSO — un compte, plusieurs sources.",
|
|
providers: [
|
|
{
|
|
name: "Google Workspace",
|
|
tagline: "Gmail, Drive, Agenda, Contacts",
|
|
icon: "logos:google-workspace",
|
|
accent: "#4285F4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Migration OAuth utilisateur : chacun rattache son compte Google et lance l'import.",
|
|
enterprise:
|
|
"Google DWD (service account) pour migrer toute l'organisation, plus SSO OAuth continu.",
|
|
},
|
|
{
|
|
name: "Microsoft 365",
|
|
tagline: "Outlook, OneDrive, Calendrier",
|
|
icon: "logos:microsoft-icon",
|
|
accent: "#0078D4",
|
|
brandLogo: true,
|
|
personal:
|
|
"Migration OAuth : import du courrier, des fichiers et de l'agenda Microsoft 365.",
|
|
enterprise:
|
|
"Microsoft app-only (client credentials) avec consentement admin, plus SSO SAML Entra ID.",
|
|
},
|
|
{
|
|
name: "Okta",
|
|
tagline: "SSO SAML & OIDC",
|
|
icon: "logos:okta-icon",
|
|
accent: "#007DC1",
|
|
brandLogo: true,
|
|
personal:
|
|
"Connexion SAML pour authentifier vos membres avec leurs identifiants Okta.",
|
|
enterprise:
|
|
"Fédération SAML/OIDC et provisioning des groupes pour toute l'organisation.",
|
|
},
|
|
{
|
|
name: "Active Directory",
|
|
tagline: "LDAP & Azure AD / Entra",
|
|
icon: "mdi:server-network",
|
|
accent: "#7C3AED",
|
|
personal:
|
|
"Authentification LDAP contre votre annuaire interne, sans nouvelle base de comptes.",
|
|
enterprise:
|
|
"Synchronisation des utilisateurs et des groupes AD via LDAP sécurisé (StartTLS).",
|
|
},
|
|
],
|
|
features: [
|
|
{
|
|
title: "Migration sans coupure",
|
|
description: "Mode delta et bascule MX progressive — les utilisateurs gardent leurs données.",
|
|
icon: "mdi:transfer",
|
|
},
|
|
{
|
|
title: "Identité fédérée",
|
|
description: "Un compte Ulti relié à vos fournisseurs SSO, avec alias multiples acceptés.",
|
|
icon: "mdi:account-key-outline",
|
|
},
|
|
{
|
|
title: "Standards ouverts",
|
|
description: "OAuth, SAML, LDAP, IMAP, CalDAV/CardDAV — aucun verrou propriétaire.",
|
|
icon: "mdi:lock-open-variant-outline",
|
|
},
|
|
{
|
|
title: "Sans dépendance US",
|
|
description: "Données et identités hébergées sur votre infrastructure souveraine.",
|
|
icon: "mdi:earth",
|
|
},
|
|
],
|
|
},
|
|
integrations: [
|
|
{
|
|
name: "Ultimail",
|
|
tagline: "Messagerie",
|
|
description: "Domaines hébergés Stalwart, relais SMTP des notifications et bascule MX.",
|
|
icon: suitePublicAsset("/ultimail-mark.svg"),
|
|
href: "/suite/ultimail",
|
|
accent: "#EA4335",
|
|
},
|
|
{
|
|
name: "UltiDrive",
|
|
tagline: "Fichiers",
|
|
description: "Politiques d'upload, partage externe, antivirus et montages d'organisation.",
|
|
icon: suitePublicAsset("/ultidrive-mark.svg"),
|
|
href: "/suite/ultidrive",
|
|
accent: "#34A853",
|
|
},
|
|
{
|
|
name: "UltiAI",
|
|
tagline: "Assistant IA",
|
|
description: "Fournisseurs LLM d'organisation, groupes d'outils MCP et plafonds de coût.",
|
|
icon: suitePublicAsset("/ultiai-mark.svg"),
|
|
href: "/suite/ultiai",
|
|
accent: "#f2783c",
|
|
},
|
|
{
|
|
name: ULTICARDS_APP_NAME,
|
|
tagline: "Contacts",
|
|
description: "Annuaire d'organisation alimenté par le provisioning LDAP/SCIM.",
|
|
icon: suitePublicAsset("/contacts-mark.svg"),
|
|
href: "/suite/ulticards",
|
|
accent: "#4285F4",
|
|
},
|
|
],
|
|
ctaSection: {
|
|
title: (
|
|
<>
|
|
Prêt à reprendre le contrôle de{" "}
|
|
<span className="landing-gradient-text">votre organisation</span> ?
|
|
</>
|
|
),
|
|
description:
|
|
"Déployez UltiSuite sur votre infrastructure, migrez depuis Google ou Microsoft et administrez identité, quotas et sécurité depuis une console unique.",
|
|
ctas: {
|
|
primary: { label: "Ouvrir la console", href: "/admin" },
|
|
secondary: { label: "Découvrir la suite", href: "/" },
|
|
},
|
|
},
|
|
}
|