tenext redesign
This commit is contained in:
311
data/about.ts
Normal file
311
data/about.ts
Normal file
@@ -0,0 +1,311 @@
|
||||
// ─── About page content ──────────────────────────────────────────────
|
||||
// Single source of truth for the redesigned About page. All copy is
|
||||
// Tenext Technologies content — no invented history, dates, names,
|
||||
// clients, awards, or statistics. Icons are referenced by string key
|
||||
// and resolved in components/shared/Icon.tsx.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export interface IconCard {
|
||||
icon: string;
|
||||
title: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
export const aboutHero = {
|
||||
eyebrow: "About Tenext",
|
||||
title: "Enterprise technology, engineered for outcomes",
|
||||
paragraph:
|
||||
"Tenext Technologies helps enterprises turn digital transformation into predictable business results — combining engineering depth with a diagnostic, outcome-first approach across cloud, data, AI, and product engineering.",
|
||||
primaryCta: { label: "Talk to an expert", href: "/contacts" },
|
||||
secondaryCta: { label: "Explore our services", href: "/services" },
|
||||
};
|
||||
|
||||
// 2 — Who we are (two-column)
|
||||
export const whoWeAre = {
|
||||
eyebrow: "who we are",
|
||||
title: "A partner for enterprise-grade digital transformation",
|
||||
lead: "We engineer, migrate, and scale the platforms enterprises run on — and we integrate with the systems and processes already in place rather than forcing a wholesale replacement.",
|
||||
points: [
|
||||
{
|
||||
icon: "layers",
|
||||
title: "What we do",
|
||||
description:
|
||||
"Full-stack engineering, cloud and platform modernization, data and applied AI, enterprise mobility, and digital commerce.",
|
||||
},
|
||||
{
|
||||
icon: "building",
|
||||
title: "Who we serve",
|
||||
description:
|
||||
"Enterprises across retail, financial services, healthcare, manufacturing, and education navigating complex transformation.",
|
||||
},
|
||||
{
|
||||
icon: "target",
|
||||
title: "Why we exist",
|
||||
description:
|
||||
"To take the uncertainty out of enterprise technology — delivering measurable outcomes, lower total cost of ownership, and faster time to value.",
|
||||
},
|
||||
],
|
||||
};
|
||||
|
||||
// 3 — Our story (narrative, no invented history/dates)
|
||||
export const ourStory = {
|
||||
eyebrow: "our story",
|
||||
title: "Built around engineering, focused on business outcomes",
|
||||
paragraphs: [
|
||||
"Digital transformation is imperative for every business — from the small to the enterprise — and it now sits at the top of the strategy agenda. Tenext exists to make that transformation actually deliver.",
|
||||
"Our work spans product engineering, cloud modernization, data platforms, and applied AI. We treat technology as a means to a business result, not an end in itself — every architecture decision is weighed on the value and the run cost it creates over its lifetime.",
|
||||
"Because the team that designs a system also builds and supports it, accountability never changes hands mid-programme. That continuity is how we keep transformation predictable from first diagnostic to long-term support.",
|
||||
],
|
||||
};
|
||||
|
||||
// 4 — Mission / Vision / Values
|
||||
export const pillars: IconCard[] = [
|
||||
{
|
||||
icon: "compass",
|
||||
title: "Mission",
|
||||
description:
|
||||
"To deliver predictable outcomes from every technology investment — diagnosing before we build and holding ourselves to results enterprises can measure.",
|
||||
},
|
||||
{
|
||||
icon: "eye",
|
||||
title: "Vision",
|
||||
description:
|
||||
"To be the engineering partner enterprises trust to modernize with confidence, at the lowest total cost of ownership and the fastest time to value.",
|
||||
},
|
||||
{
|
||||
icon: "sparkles",
|
||||
title: "Values",
|
||||
description:
|
||||
"Outcome-first thinking, engineering ownership, transparency, and security by default — applied on every engagement, without exception.",
|
||||
},
|
||||
];
|
||||
|
||||
// 5 — Why Tenext (differentiators, specific not generic)
|
||||
export const whyTenext: IconCard[] = [
|
||||
{
|
||||
icon: "target",
|
||||
title: "Predictable delivery",
|
||||
description:
|
||||
"Outcome-first scoping and transparent milestones, so progress and cost stay visible from day one.",
|
||||
},
|
||||
{
|
||||
icon: "code",
|
||||
title: "Enterprise engineering",
|
||||
description:
|
||||
"Full-stack teams that design, build, and support production-grade platforms at scale.",
|
||||
},
|
||||
{
|
||||
icon: "cloud",
|
||||
title: "Cloud modernization",
|
||||
description:
|
||||
"Migration and platform engineering weighed on lifetime run cost and resilience, not just build speed.",
|
||||
},
|
||||
{
|
||||
icon: "cpu",
|
||||
title: "AI & data transformation",
|
||||
description:
|
||||
"Applied AI and governed data platforms that turn enterprise data into automation and insight.",
|
||||
},
|
||||
{
|
||||
icon: "handshake",
|
||||
title: "Business-first approach",
|
||||
description:
|
||||
"Every engagement starts from the business outcome and the measure that proves it.",
|
||||
},
|
||||
{
|
||||
icon: "shield",
|
||||
title: "Security & governance",
|
||||
description:
|
||||
"Access control, data governance, and compliance-ready handling designed in from the first sprint.",
|
||||
},
|
||||
];
|
||||
|
||||
// 6 — Capabilities
|
||||
export const capabilities: IconCard[] = [
|
||||
{
|
||||
icon: "code",
|
||||
title: "Technology Engineering",
|
||||
description:
|
||||
"Architecture, development, and modernization of enterprise applications built to scale.",
|
||||
},
|
||||
{
|
||||
icon: "cloud",
|
||||
title: "Cloud & Enterprise Platforms",
|
||||
description:
|
||||
"Cloud migration, platform engineering, and DevOps that keep systems reliable and efficient.",
|
||||
},
|
||||
{
|
||||
icon: "cpu",
|
||||
title: "AI & Data Science",
|
||||
description:
|
||||
"Data platforms, analytics, and applied AI that turn data into decision-ready insight.",
|
||||
},
|
||||
{
|
||||
icon: "mobile",
|
||||
title: "Enterprise Mobility",
|
||||
description:
|
||||
"Mobile and field applications that extend core systems to your workforce and customers.",
|
||||
},
|
||||
{
|
||||
icon: "boxes",
|
||||
title: "Digital Commerce",
|
||||
description:
|
||||
"Commerce platforms and experiences that unify online and offline channels.",
|
||||
},
|
||||
{
|
||||
icon: "workflow",
|
||||
title: "DevOps & Automation",
|
||||
description:
|
||||
"CI/CD, automation, and platform reliability that shorten release cycles and reduce cost.",
|
||||
},
|
||||
];
|
||||
|
||||
// 7 — Industry icon map (industry content lives in data/site-pages.ts)
|
||||
export const industryIcons: Record<string, string> = {
|
||||
retail: "retail",
|
||||
"financial-services": "landmark",
|
||||
healthcare: "health",
|
||||
manufacturing: "factory",
|
||||
education: "education",
|
||||
};
|
||||
|
||||
// 8 — Delivery model
|
||||
export const deliverySteps: IconCard[] = [
|
||||
{
|
||||
icon: "discover",
|
||||
title: "Discover",
|
||||
description: "Assess systems, processes, and goals to find where value is highest.",
|
||||
},
|
||||
{
|
||||
icon: "design",
|
||||
title: "Design",
|
||||
description: "Architect a solution that fits the existing landscape and the outcome.",
|
||||
},
|
||||
{
|
||||
icon: "build",
|
||||
title: "Build",
|
||||
description: "Engineer, integrate, and test against the measures agreed up front.",
|
||||
},
|
||||
{
|
||||
icon: "modernize",
|
||||
title: "Modernize",
|
||||
description: "Replace only what blocks progress; integrate with what already runs.",
|
||||
},
|
||||
{
|
||||
icon: "scale",
|
||||
title: "Scale",
|
||||
description: "Deploy with confidence and grow capability as the roadmap evolves.",
|
||||
},
|
||||
{
|
||||
icon: "support",
|
||||
title: "Support",
|
||||
description: "Monitor, optimize, and manage platforms long after go-live.",
|
||||
},
|
||||
];
|
||||
|
||||
// 9 — Practice teams (unique gradient + icon each; no photos, no invented people)
|
||||
export interface PracticeTeamCard {
|
||||
name: string;
|
||||
focus: string;
|
||||
description: string;
|
||||
icon: string;
|
||||
gradient: string;
|
||||
}
|
||||
|
||||
export const practiceTeamCards: PracticeTeamCard[] = [
|
||||
{
|
||||
name: "Technology Engineering",
|
||||
focus: "Architecture & full-stack build",
|
||||
description:
|
||||
"Designs and builds enterprise applications engineered to scale.",
|
||||
icon: "code",
|
||||
gradient: "from-[#343F78] to-[#2C84C8]",
|
||||
},
|
||||
{
|
||||
name: "Cloud & Platforms",
|
||||
focus: "Migration, DevOps & reliability",
|
||||
description:
|
||||
"Modernizes infrastructure and keeps platforms reliable and efficient.",
|
||||
icon: "cloud",
|
||||
gradient: "from-[#2C84C8] to-[#45D0BD]",
|
||||
},
|
||||
{
|
||||
name: "AI & Data Science",
|
||||
focus: "Data platforms & applied AI",
|
||||
description:
|
||||
"Turns enterprise data into automation and decision-ready insight.",
|
||||
icon: "cpu",
|
||||
gradient: "from-[#6766C8] to-[#8258C8]",
|
||||
},
|
||||
{
|
||||
name: "Enterprise Mobility",
|
||||
focus: "Mobile & field applications",
|
||||
description:
|
||||
"Extends core systems to the workforce and customers wherever they operate.",
|
||||
icon: "mobile",
|
||||
gradient: "from-[#8258C8] to-[#AC8DE0]",
|
||||
},
|
||||
{
|
||||
name: "Digital Commerce",
|
||||
focus: "Commerce & customer experience",
|
||||
description: "Unifies online and offline channels on a scalable foundation.",
|
||||
icon: "boxes",
|
||||
gradient: "from-[#56619E] to-[#343F78]",
|
||||
},
|
||||
{
|
||||
name: "Quality & Reliability",
|
||||
focus: "Security, governance & support",
|
||||
description:
|
||||
"Builds in security and keeps platforms performing after launch.",
|
||||
icon: "shield",
|
||||
gradient: "from-[#44B6E9] to-[#6766C8]",
|
||||
},
|
||||
];
|
||||
|
||||
// 10 — Technology ecosystem (categories, not vendor logos)
|
||||
export const techEcosystem: IconCard[] = [
|
||||
{ icon: "cloud", title: "Cloud", description: "Cloud platforms & infrastructure" },
|
||||
{ icon: "cpu", title: "AI & ML", description: "Applied AI and machine learning" },
|
||||
{ icon: "database", title: "Data", description: "Data platforms & analytics" },
|
||||
{ icon: "code", title: "Web", description: "Modern web application stacks" },
|
||||
{ icon: "mobile", title: "Mobile", description: "Native and cross-platform apps" },
|
||||
{ icon: "building", title: "Enterprise", description: "Enterprise systems & integration" },
|
||||
{ icon: "devops", title: "DevOps", description: "CI/CD, automation & reliability" },
|
||||
{ icon: "shield", title: "Security", description: "Governance & compliance-ready" },
|
||||
];
|
||||
|
||||
// 11 — Enterprise trust (no testimonials)
|
||||
export const trustPrinciples: IconCard[] = [
|
||||
{
|
||||
icon: "target",
|
||||
title: "Delivery principles",
|
||||
description:
|
||||
"Outcome-first scoping, milestone-based delivery, and progress that stays visible throughout.",
|
||||
},
|
||||
{
|
||||
icon: "badge",
|
||||
title: "Quality standards",
|
||||
description:
|
||||
"Secure architecture, tested code, and compliance-ready data handling on every engagement.",
|
||||
},
|
||||
{
|
||||
icon: "users",
|
||||
title: "Engineering culture",
|
||||
description:
|
||||
"The team that designs a system builds and supports it — ownership never changes hands.",
|
||||
},
|
||||
{
|
||||
icon: "handshake",
|
||||
title: "Long-term partnership",
|
||||
description:
|
||||
"Knowledge transfer and managed support keep you in control long after go-live.",
|
||||
},
|
||||
];
|
||||
|
||||
export const aboutCta = {
|
||||
title: "Ready to engineer your next transformation?",
|
||||
paragraph:
|
||||
"Tell us about the systems you run and the outcome you need. We'll come back to you within one business day.",
|
||||
primaryCta: { label: "Talk to an expert", href: "/contacts" },
|
||||
secondaryCta: { label: "View our services", href: "/services" },
|
||||
};
|
||||
107
data/legal.ts
Normal file
107
data/legal.ts
Normal file
@@ -0,0 +1,107 @@
|
||||
// ─── Legal page content ──────────────────────────────────────────────
|
||||
// Single source of truth for the Privacy Policy and Terms of Use pages.
|
||||
// Written for Tenext Technologies with its real contact details. This is
|
||||
// standard, good-faith scaffolding — have it reviewed by legal counsel
|
||||
// and adjust `effectiveDate` before publishing.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
import { siteConfig } from "@/data/site-config";
|
||||
|
||||
export interface LegalSection {
|
||||
heading: string;
|
||||
body: string[];
|
||||
}
|
||||
|
||||
export const legalEffectiveDate = "2026";
|
||||
|
||||
export const privacyPolicy: LegalSection[] = [
|
||||
{
|
||||
heading: "Overview",
|
||||
body: [
|
||||
`${siteConfig.legalName} ("Tenext", "we", "us") respects your privacy. This policy explains what information we collect through this website, how we use it, and the choices you have.`,
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Information we collect",
|
||||
body: [
|
||||
"We collect the information you choose to give us — for example, your name, email address, and message when you submit our contact form or email us directly.",
|
||||
"We also collect limited technical information automatically, such as your browser type and pages visited, to keep the site secure and understand how it is used.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "How we use information",
|
||||
body: [
|
||||
"We use the information you provide to respond to your enquiry, deliver the services you request, and improve our website and communications.",
|
||||
"We do not sell your personal information.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Data sharing",
|
||||
body: [
|
||||
"We share information only with service providers who help us operate this website and our business, and only to the extent needed to perform that work, or where required by law.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Data retention and security",
|
||||
body: [
|
||||
"We keep personal information only for as long as needed for the purposes described here, and apply appropriate technical and organisational measures to protect it.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Your rights",
|
||||
body: [
|
||||
"You may request access to, correction of, or deletion of your personal information. To make a request, contact us using the details below.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Contact us",
|
||||
body: [
|
||||
`For any privacy question, email ${siteConfig.email} or write to ${siteConfig.legalName}, ${siteConfig.address.line1}, ${siteConfig.address.line2}.`,
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
export const termsOfUse: LegalSection[] = [
|
||||
{
|
||||
heading: "Acceptance of terms",
|
||||
body: [
|
||||
`By accessing this website you agree to these terms. If you do not agree, please do not use the site. The site is operated by ${siteConfig.legalName}.`,
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Use of the website",
|
||||
body: [
|
||||
"You may use this website for lawful purposes only. You agree not to misuse the site, interfere with its operation, or attempt to access it in any way other than through the interface we provide.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Intellectual property",
|
||||
body: [
|
||||
"All content on this website — text, graphics, logos, and design — is owned by or licensed to Tenext and is protected by applicable intellectual-property laws. You may not reuse it without our written permission.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "No warranty",
|
||||
body: [
|
||||
"This website and its content are provided on an \"as is\" basis. While we work to keep information accurate and current, we make no warranties about its completeness or availability.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Limitation of liability",
|
||||
body: [
|
||||
"To the extent permitted by law, Tenext is not liable for any loss arising from your use of, or inability to use, this website.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Changes to these terms",
|
||||
body: [
|
||||
"We may update these terms from time to time. Continued use of the website after changes are posted constitutes acceptance of the updated terms.",
|
||||
],
|
||||
},
|
||||
{
|
||||
heading: "Contact us",
|
||||
body: [
|
||||
`Questions about these terms can be sent to ${siteConfig.email}.`,
|
||||
],
|
||||
},
|
||||
];
|
||||
@@ -1,9 +1,23 @@
|
||||
import { services } from "@/data/site-content";
|
||||
import { solutions, industries } from "@/data/site-pages";
|
||||
|
||||
export interface NavItem {
|
||||
label: string;
|
||||
href: string;
|
||||
children?: NavItem[];
|
||||
}
|
||||
|
||||
/** Builds dropdown entries from a content list so the menu tracks the page. */
|
||||
function toNavItems(
|
||||
items: { id: string; title: string }[],
|
||||
basePath: string,
|
||||
): NavItem[] {
|
||||
return items.map((item) => ({
|
||||
label: item.title,
|
||||
href: `${basePath}#${item.id}`,
|
||||
}));
|
||||
}
|
||||
|
||||
export const navigationData: NavItem[] = [
|
||||
{
|
||||
label: "Home",
|
||||
@@ -14,59 +28,33 @@ export const navigationData: NavItem[] = [
|
||||
href: "/about",
|
||||
children: [
|
||||
{ label: "Company", href: "/about" },
|
||||
{ label: "Mission & Vision", href: "/about#mission" },
|
||||
{ label: "Leadership", href: "/about#team" },
|
||||
{ label: "Our Mission", href: "/about#mission" },
|
||||
{ label: "Our Teams", href: "/about#teams" },
|
||||
{ label: "Careers", href: "/careers" },
|
||||
],
|
||||
},
|
||||
{
|
||||
label: "Services",
|
||||
href: "/services",
|
||||
children: [
|
||||
{ label: "Technology Engineering", href: "/services#technology-engineering" },
|
||||
{ label: "Cloud & Enterprise Platforms", href: "/services#cloud-enterprise-platforms" },
|
||||
{ label: "AI & Data Science", href: "/services#ai-data-science" },
|
||||
{ label: "Enterprise Mobility", href: "/services#enterprise-mobility" },
|
||||
{ label: "Digital Commerce", href: "/services#digital-commerce" },
|
||||
],
|
||||
children: toNavItems(services, "/services"),
|
||||
},
|
||||
{
|
||||
label: "Solutions",
|
||||
href: "/solutions",
|
||||
children: [
|
||||
{ label: "Digital Transformation", href: "/solutions#digital-transformation" },
|
||||
{ label: "Product Development", href: "/solutions#product-development" },
|
||||
{ label: "Internet of Things", href: "/solutions#iot" },
|
||||
{ label: "SMAC", href: "/solutions#smac" },
|
||||
{ label: "DevOps", href: "/solutions#devops" },
|
||||
{ label: "Blockchain", href: "/solutions#blockchain" },
|
||||
],
|
||||
children: toNavItems(solutions, "/solutions"),
|
||||
},
|
||||
{
|
||||
label: "Industries",
|
||||
href: "/industries",
|
||||
children: toNavItems(industries, "/industries"),
|
||||
},
|
||||
{
|
||||
label: "Insights",
|
||||
href: "/case-studies",
|
||||
children: [
|
||||
{ label: "Retail", href: "/industries#retail" },
|
||||
{ label: "Financial Services", href: "/industries#financial-services" },
|
||||
{ label: "Healthcare", href: "/industries#healthcare" },
|
||||
{ label: "Manufacturing", href: "/industries#manufacturing" },
|
||||
{ label: "Education", href: "/industries#education" },
|
||||
{ label: "Case Studies", href: "/case-studies" },
|
||||
{ label: "Resources", href: "/resources" },
|
||||
{ label: "Contact", href: "/contacts" },
|
||||
],
|
||||
},
|
||||
{
|
||||
label: "Case Studies",
|
||||
href: "/case-studies",
|
||||
},
|
||||
{
|
||||
label: "Resources",
|
||||
href: "/resources",
|
||||
},
|
||||
{
|
||||
label: "Careers",
|
||||
href: "/careers",
|
||||
},
|
||||
{
|
||||
label: "Contact",
|
||||
href: "/contacts",
|
||||
},
|
||||
];
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
// Shared by: Footer, ContactFormSection, Navbar (mobile), TopBar.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
import { services } from "@/data/site-content";
|
||||
|
||||
export interface SocialLink {
|
||||
platform: string;
|
||||
url: string;
|
||||
@@ -16,8 +18,13 @@ export interface FooterLink {
|
||||
|
||||
export const siteConfig = {
|
||||
name: "tenext",
|
||||
legalName: "Tenext Technologies",
|
||||
tagline: "Enterprise Digital Transformation",
|
||||
|
||||
// Canonical site URL — used for metadataBase, sitemap, robots, and JSON-LD.
|
||||
// Update if the production domain differs.
|
||||
url: "https://www.tenext.in",
|
||||
|
||||
// Contact
|
||||
phone: "+91 96294 15770",
|
||||
phoneRaw: "+919629415770",
|
||||
@@ -27,42 +34,42 @@ export const siteConfig = {
|
||||
line2: "RS Puram, Coimbatore, India",
|
||||
},
|
||||
|
||||
// Social
|
||||
// Social — set each `url` to Tenext's real profile before launch.
|
||||
// Left as "#" (not template links) until official handles are provided.
|
||||
socials: [
|
||||
{
|
||||
platform: "Facebook",
|
||||
url: "https://www.facebook.com/",
|
||||
icon: "facebook",
|
||||
},
|
||||
{ platform: "X", url: "https://twitter.com/", icon: "x-twitter" },
|
||||
{
|
||||
platform: "LinkedIn",
|
||||
url: "https://www.linkedin.com/",
|
||||
url: "#",
|
||||
icon: "linkedin",
|
||||
},
|
||||
{ platform: "Youtube", url: "https://www.youtube.com/", icon: "youtube" },
|
||||
{ platform: "X", url: "#", icon: "x-twitter" },
|
||||
{
|
||||
platform: "Facebook",
|
||||
url: "#",
|
||||
icon: "facebook",
|
||||
},
|
||||
{ platform: "Youtube", url: "#", icon: "youtube" },
|
||||
] as SocialLink[],
|
||||
|
||||
// Footer link columns
|
||||
footerLinks: {
|
||||
company: [
|
||||
{ label: "About Us", href: "/about" },
|
||||
{ label: "Leadership", href: "/about#team" },
|
||||
{ label: "Our Teams", href: "/about#teams" },
|
||||
{ label: "Careers", href: "/careers" },
|
||||
{ label: "Contact", href: "/contacts" },
|
||||
] as FooterLink[],
|
||||
services: [
|
||||
{ label: "Cloud & Enterprise Platforms", href: "/services#cloud-enterprise-platforms" },
|
||||
{ label: "AI & Data Science", href: "/services#ai-data-science" },
|
||||
{ label: "Enterprise Mobility", href: "/services#enterprise-mobility" },
|
||||
{ label: "Digital Commerce", href: "/services#digital-commerce" },
|
||||
] as FooterLink[],
|
||||
// Derived from the single services source so the footer never drifts.
|
||||
services: services.map((service) => ({
|
||||
label: service.title,
|
||||
href: `/services#${service.id}`,
|
||||
})) as FooterLink[],
|
||||
},
|
||||
|
||||
// Legal
|
||||
copyright: "©Tenext Technologies 2026. All rights reserved.",
|
||||
legalLinks: [
|
||||
{ label: "Terms of use", href: "#" },
|
||||
{ label: "Privacy Policy", href: "#" },
|
||||
{ label: "Terms of use", href: "/terms" },
|
||||
{ label: "Privacy Policy", href: "/privacy" },
|
||||
] as FooterLink[],
|
||||
} as const;
|
||||
|
||||
318
data/site-content.ts
Normal file
318
data/site-content.ts
Normal file
@@ -0,0 +1,318 @@
|
||||
// ─── Home / About / Services narrative content ───────────────────────
|
||||
// Single source of truth for the marketing copy shared by the homepage,
|
||||
// About, and Services routes. Positioning traces to Tenext's own
|
||||
// language: predictable outcomes from IT investments, accelerated time
|
||||
// to value, and the lowest total cost of ownership.
|
||||
//
|
||||
// Inner-page content (Solutions, Industries, Case Studies, Resources,
|
||||
// Careers) lives in `data/site-pages.ts`.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
/** A capability, principle, or differentiator rendered as a card. */
|
||||
export interface ContentItem {
|
||||
/** Anchor id — matches hash links in data/navigation.ts where relevant */
|
||||
id: string;
|
||||
title: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
// ─── Value propositions ──────────────────────────────────────────────
|
||||
// Qualitative proof points shown where the template used unverified
|
||||
// statistics. Tenext has not published audited figures, so these state
|
||||
// how the company works rather than invented numbers. Add real,
|
||||
// verified metrics here only once Tenext confirms them.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export interface ValueProp {
|
||||
title: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
export const valueProps = {
|
||||
outcomes: {
|
||||
title: "Outcome-driven delivery",
|
||||
description:
|
||||
"Every engagement is measured against the business result it was commissioned to deliver.",
|
||||
},
|
||||
engineering: {
|
||||
title: "Enterprise-grade engineering",
|
||||
description:
|
||||
"Full-stack teams that design, build, and support the platforms they ship.",
|
||||
},
|
||||
reliability: {
|
||||
title: "Reliable at scale",
|
||||
description:
|
||||
"Architectures weighed on lifetime run cost and resilience, not just build speed.",
|
||||
},
|
||||
integration: {
|
||||
title: "Integrated with what you run",
|
||||
description:
|
||||
"Solutions fit your existing systems and processes instead of forcing a replacement.",
|
||||
},
|
||||
} satisfies Record<string, ValueProp>;
|
||||
|
||||
// ─── Services ────────────────────────────────────────────────────────
|
||||
// The five Tenext service lines. Consumed by the Services page grid and
|
||||
// by data/navigation.ts so the menu never drifts from the page.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export const services: ContentItem[] = [
|
||||
{
|
||||
id: "technology-engineering",
|
||||
title: "Technology Engineering",
|
||||
description:
|
||||
"Full-stack product engineering — architecture, development, and modernization of enterprise applications built to scale.",
|
||||
},
|
||||
{
|
||||
id: "cloud-enterprise-platforms",
|
||||
title: "Cloud & Enterprise Platforms",
|
||||
description:
|
||||
"Cloud migration, platform engineering, and DevOps that keep systems reliable while lowering total cost of ownership.",
|
||||
},
|
||||
{
|
||||
id: "ai-data-science",
|
||||
title: "AI & Data Science",
|
||||
description:
|
||||
"Data platforms, analytics, and applied AI that turn enterprise data into automation and decision-ready insight.",
|
||||
},
|
||||
{
|
||||
id: "enterprise-mobility",
|
||||
title: "Enterprise Mobility",
|
||||
description:
|
||||
"Mobile and field applications that extend core systems to your workforce and customers wherever they operate.",
|
||||
},
|
||||
{
|
||||
id: "digital-commerce",
|
||||
title: "Digital Commerce",
|
||||
description:
|
||||
"Commerce platforms and customer experiences that unify online and offline channels on a scalable foundation.",
|
||||
},
|
||||
];
|
||||
|
||||
// ─── Differentiators ─────────────────────────────────────────────────
|
||||
|
||||
export const differentiators: ContentItem[] = [
|
||||
{
|
||||
id: "diagnostic-first",
|
||||
title: "Diagnostic before build",
|
||||
description:
|
||||
"We assess systems, processes, and goals first, so investment goes where it returns the most business value.",
|
||||
},
|
||||
{
|
||||
id: "fits-your-landscape",
|
||||
title: "Integration with what you run",
|
||||
description:
|
||||
"Solutions are designed to fit your existing landscape rather than force a wholesale replacement of it.",
|
||||
},
|
||||
{
|
||||
id: "total-cost-of-ownership",
|
||||
title: "Lowest total cost of ownership",
|
||||
description:
|
||||
"Architecture and platform choices are weighed on lifetime run cost, not only on what they cost to build.",
|
||||
},
|
||||
{
|
||||
id: "time-to-value",
|
||||
title: "Accelerated time to value",
|
||||
description:
|
||||
"Delivery is sequenced so working capability reaches production early and keeps compounding from there.",
|
||||
},
|
||||
{
|
||||
id: "security-governance",
|
||||
title: "Security and governance built in",
|
||||
description:
|
||||
"Access control, data governance, and compliance-ready handling are designed in from the first sprint.",
|
||||
},
|
||||
{
|
||||
id: "beyond-go-live",
|
||||
title: "Support beyond go-live",
|
||||
description:
|
||||
"Monitoring, optimization, and managed support keep platforms performing long after launch.",
|
||||
},
|
||||
];
|
||||
|
||||
// ─── Delivery principles ─────────────────────────────────────────────
|
||||
// Rendered in the masonry grid on Home and Services.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export const deliveryPrinciples: ContentItem[] = [
|
||||
{
|
||||
id: "outcome-first-scoping",
|
||||
title: "Outcome-first scoping",
|
||||
description:
|
||||
"Every engagement starts with the business outcome and the measure that proves it — not with a technology shortlist.",
|
||||
},
|
||||
{
|
||||
id: "fit-before-replacement",
|
||||
title: "Fit before replacement",
|
||||
description:
|
||||
"We integrate with the systems and processes you already run, and replace only what genuinely blocks progress.",
|
||||
},
|
||||
{
|
||||
id: "cost-of-ownership",
|
||||
title: "Designed for run cost",
|
||||
description:
|
||||
"Decisions are weighed on what a platform costs to operate and maintain over its life, not just to deliver.",
|
||||
},
|
||||
{
|
||||
id: "early-value",
|
||||
title: "Value early, not once",
|
||||
description:
|
||||
"Work is sequenced so useful capability reaches production early instead of arriving in one late release.",
|
||||
},
|
||||
{
|
||||
id: "secure-by-default",
|
||||
title: "Secure by default",
|
||||
description:
|
||||
"Access control, data handling, and compliance requirements are designed in rather than retrofitted.",
|
||||
},
|
||||
{
|
||||
id: "engineering-ownership",
|
||||
title: "Engineering ownership",
|
||||
description:
|
||||
"The team that designs a system builds and supports it, so accountability never changes hands mid-programme.",
|
||||
},
|
||||
{
|
||||
id: "transparent-delivery",
|
||||
title: "Transparent delivery",
|
||||
description:
|
||||
"Progress, risk, and cost stay visible throughout, so milestone reviews confirm what you already knew.",
|
||||
},
|
||||
{
|
||||
id: "knowledge-transfer",
|
||||
title: "Knowledge transfer",
|
||||
description:
|
||||
"Your teams are brought along through the build, so you are never dependent on us to operate what we deliver.",
|
||||
},
|
||||
{
|
||||
id: "continuous-optimization",
|
||||
title: "Continuous optimization",
|
||||
description:
|
||||
"After go-live we keep measuring and tuning against the outcomes agreed at the start of the engagement.",
|
||||
},
|
||||
];
|
||||
|
||||
// ─── Practice teams ──────────────────────────────────────────────────
|
||||
// Replaces the template's stock team members. Tenext does not publish
|
||||
// individual profiles, so this presents the disciplines that staff an
|
||||
// engagement. Add real people here only with their consent.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export interface PracticeTeam {
|
||||
name: string;
|
||||
focus: string;
|
||||
image: string;
|
||||
}
|
||||
|
||||
export const practiceTeams: PracticeTeam[] = [
|
||||
{
|
||||
name: "Technology Engineering",
|
||||
focus: "Architecture & full-stack build",
|
||||
image: "/images/tenext/waist-up-shot-handsome-calm.jpg",
|
||||
},
|
||||
{
|
||||
name: "Cloud & Platforms",
|
||||
focus: "Migration, DevOps & reliability",
|
||||
image: "/images/tenext/funny-curious-man-makes.jpg",
|
||||
},
|
||||
{
|
||||
name: "AI & Data Science",
|
||||
focus: "Data platforms & applied AI",
|
||||
image: "/images/tenext/portrait-confident-man.jpg",
|
||||
},
|
||||
{
|
||||
name: "Enterprise Mobility",
|
||||
focus: "Mobile & field applications",
|
||||
image: "/images/tenext/confident-ginger-man-with-trendy.jpg",
|
||||
},
|
||||
{
|
||||
name: "Digital Commerce",
|
||||
focus: "Commerce & customer experience",
|
||||
image: "/images/tenext/waist-up-shot-handsome-calm.jpg",
|
||||
},
|
||||
];
|
||||
|
||||
// ─── Engagement models ───────────────────────────────────────────────
|
||||
// Replaces the template's SaaS pricing tiers. Commercial terms are
|
||||
// quoted per engagement, so no prices are published here.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export interface EngagementModel {
|
||||
name: string;
|
||||
summary: string;
|
||||
includes: string[];
|
||||
}
|
||||
|
||||
export const engagementModels: EngagementModel[] = [
|
||||
{
|
||||
name: "Project delivery",
|
||||
summary:
|
||||
"Fixed-scope programmes with defined outcomes and milestones — best when the problem and the endpoint are well understood.",
|
||||
includes: [
|
||||
"Discovery and solution design",
|
||||
"Milestone-based delivery plan",
|
||||
"Documentation and handover",
|
||||
"Post-launch support window",
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "Dedicated teams",
|
||||
summary:
|
||||
"An embedded engineering team working to your backlog and priorities, scaling with the roadmap as it changes.",
|
||||
includes: [
|
||||
"Team shaped to your stack",
|
||||
"Works to your backlog and rituals",
|
||||
"Scales up or down by quarter",
|
||||
"Direct access to practice leads",
|
||||
],
|
||||
},
|
||||
{
|
||||
name: "Managed services",
|
||||
summary:
|
||||
"Ongoing operation, support, and optimization of the platforms we build or of the systems you already run.",
|
||||
includes: [
|
||||
"Monitoring and incident response",
|
||||
"Agreed response commitments",
|
||||
"Continuous performance tuning",
|
||||
"Roadmap and upgrade planning",
|
||||
],
|
||||
},
|
||||
];
|
||||
|
||||
// ─── About page narrative ────────────────────────────────────────────
|
||||
|
||||
export const aboutContent = {
|
||||
intro: {
|
||||
tag: "about",
|
||||
title: "Enterprise technology, engineered for outcomes",
|
||||
paragraphs: [
|
||||
"Digital transformation is imperative for every business, from the small to the enterprise — and it now sits at the top of the strategy agenda. Tenext Technologies exists to make that transformation actually deliver.",
|
||||
"We partner with enterprises across retail, financial services, healthcare, manufacturing, and education to engineer, migrate, and scale digital platforms — integrating with the systems and processes they already run.",
|
||||
],
|
||||
},
|
||||
mission: {
|
||||
tag: "mission",
|
||||
title: "Predictable outcomes from every technology investment",
|
||||
body: "Our mission is to take the uncertainty out of enterprise technology. We diagnose before we build, fit solutions to the landscape you already operate, and hold ourselves to results you can measure.",
|
||||
/** The three commitments Tenext leads with. */
|
||||
commitments: [
|
||||
"Predictable outcomes from your IT investments",
|
||||
"Accelerated time to value",
|
||||
"The lowest total cost of ownership",
|
||||
],
|
||||
},
|
||||
};
|
||||
|
||||
// ─── Shared calls to action ──────────────────────────────────────────
|
||||
|
||||
export const ctaContent = {
|
||||
preFooter: {
|
||||
heading: "Let's engineer predictable outcomes from your next investment",
|
||||
linkLabel: "Get in touch",
|
||||
},
|
||||
contact: {
|
||||
tag: "get in touch",
|
||||
title: "We are always ready to help you and answer your questions",
|
||||
description:
|
||||
"Tell us about the systems you run and the outcome you need. Our team will come back to you within one business day.",
|
||||
},
|
||||
};
|
||||
188
data/site-pages.ts
Normal file
188
data/site-pages.ts
Normal file
@@ -0,0 +1,188 @@
|
||||
// ─── Inner-page content ──────────────────────────────────────────────
|
||||
// Single source of truth for Solutions, Industries, Case Studies,
|
||||
// Resources, and Careers page content. Consumed by the routes under
|
||||
// app/(solutions|industries|case-studies|resources|careers).
|
||||
//
|
||||
// NOTE: Case studies, resources, and open roles are representative
|
||||
// placeholders — replace with real Tenext content before launch.
|
||||
// ─────────────────────────────────────────────────────────────────────
|
||||
|
||||
export interface CardItem {
|
||||
/** Anchor id — matches the hash links in data/navigation.ts */
|
||||
id: string;
|
||||
title: string;
|
||||
description: string;
|
||||
}
|
||||
|
||||
/** Solutions hub — /solutions (anchors match navigation.ts) */
|
||||
export const solutions: CardItem[] = [
|
||||
{
|
||||
id: "digital-transformation",
|
||||
title: "Digital Transformation",
|
||||
description:
|
||||
"End-to-end modernization of platforms, processes, and customer experiences — mapped to measurable business outcomes and lower total cost of ownership.",
|
||||
},
|
||||
{
|
||||
id: "product-development",
|
||||
title: "Product Development",
|
||||
description:
|
||||
"From idea to launch: product strategy, design, and full-stack engineering that turn concepts into scalable, production-grade software.",
|
||||
},
|
||||
{
|
||||
id: "iot",
|
||||
title: "Internet of Things",
|
||||
description:
|
||||
"Connected device platforms, edge integration, and real-time telemetry that bring physical operations into your digital estate.",
|
||||
},
|
||||
{
|
||||
id: "smac",
|
||||
title: "SMAC",
|
||||
description:
|
||||
"Social, Mobile, Analytics, and Cloud brought together into a coherent architecture that modernizes how your enterprise engages and operates.",
|
||||
},
|
||||
{
|
||||
id: "devops",
|
||||
title: "DevOps",
|
||||
description:
|
||||
"CI/CD, automation, and platform engineering that shorten release cycles, improve reliability, and reduce operational cost.",
|
||||
},
|
||||
{
|
||||
id: "blockchain",
|
||||
title: "Blockchain",
|
||||
description:
|
||||
"Distributed-ledger solutions for traceability, trust, and secure transactions across multi-party business networks.",
|
||||
},
|
||||
];
|
||||
|
||||
/** Industries hub — /industries (anchors match navigation.ts) */
|
||||
export const industries: CardItem[] = [
|
||||
{
|
||||
id: "retail",
|
||||
title: "Retail",
|
||||
description:
|
||||
"Commerce platforms, personalization, and supply-chain visibility that unify online and in-store experiences.",
|
||||
},
|
||||
{
|
||||
id: "financial-services",
|
||||
title: "Financial Services",
|
||||
description:
|
||||
"Secure, compliant platforms for payments, data, and customer engagement — engineered for scale and resilience.",
|
||||
},
|
||||
{
|
||||
id: "healthcare",
|
||||
title: "Healthcare",
|
||||
description:
|
||||
"Interoperable systems and data platforms that improve patient experience while meeting strict privacy and compliance needs.",
|
||||
},
|
||||
{
|
||||
id: "manufacturing",
|
||||
title: "Manufacturing",
|
||||
description:
|
||||
"IoT, analytics, and automation that connect the shop floor to the enterprise and drive operational efficiency.",
|
||||
},
|
||||
{
|
||||
id: "education",
|
||||
title: "Education",
|
||||
description:
|
||||
"Digital learning platforms and administrative systems that scale access and streamline institutional operations.",
|
||||
},
|
||||
];
|
||||
|
||||
/** How we deliver, by industry — /case-studies.
|
||||
* Tenext has not published named client case studies, so this describes
|
||||
* the delivery approach per industry rather than claiming specific past
|
||||
* engagements or results. Replace with real, approved case studies when
|
||||
* available. */
|
||||
export interface CaseStudyItem extends CardItem {
|
||||
industry: string;
|
||||
}
|
||||
|
||||
export const caseStudies: CaseStudyItem[] = [
|
||||
{
|
||||
id: "retail-approach",
|
||||
industry: "Retail",
|
||||
title: "Unifying commerce across channels",
|
||||
description:
|
||||
"How we approach retail engagements — scalable commerce platforms, personalization, and supply-chain visibility that connect online and in-store.",
|
||||
},
|
||||
{
|
||||
id: "financial-approach",
|
||||
industry: "Financial Services",
|
||||
title: "Secure, compliant data platforms",
|
||||
description:
|
||||
"How we approach financial services — governed data, secure integrations, and resilient platforms built for scale and compliance.",
|
||||
},
|
||||
{
|
||||
id: "manufacturing-approach",
|
||||
industry: "Manufacturing",
|
||||
title: "Connecting the shop floor to the enterprise",
|
||||
description:
|
||||
"How we approach manufacturing — IoT, analytics, and automation that link production to the wider digital estate.",
|
||||
},
|
||||
];
|
||||
|
||||
/** Insight areas — /resources.
|
||||
* Topic areas Tenext advises on, not published articles. No dates or
|
||||
* author bylines are shown until real articles exist. */
|
||||
export interface ResourceItem extends CardItem {
|
||||
category: string;
|
||||
}
|
||||
|
||||
export const resources: ResourceItem[] = [
|
||||
{
|
||||
id: "cloud",
|
||||
category: "Cloud",
|
||||
title: "Enterprise cloud migration",
|
||||
description:
|
||||
"Sequencing a migration to minimize risk while protecting total cost of ownership and time to value.",
|
||||
},
|
||||
{
|
||||
id: "data",
|
||||
category: "Data",
|
||||
title: "Enterprise data platforms",
|
||||
description:
|
||||
"The building blocks of a governed data platform that turns operations into decision-ready insight.",
|
||||
},
|
||||
{
|
||||
id: "ai",
|
||||
category: "AI",
|
||||
title: "Applied AI for the enterprise",
|
||||
description:
|
||||
"Selecting AI use cases that deliver automation and measurable value across core operations.",
|
||||
},
|
||||
];
|
||||
|
||||
/** Careers — /careers (representative placeholders) */
|
||||
export interface RoleItem {
|
||||
id: string;
|
||||
title: string;
|
||||
location: string;
|
||||
type: string;
|
||||
}
|
||||
|
||||
export const openRoles: RoleItem[] = [
|
||||
{
|
||||
id: "senior-full-stack-engineer",
|
||||
title: "Senior Full-Stack Engineer",
|
||||
location: "Coimbatore, India",
|
||||
type: "Full-time",
|
||||
},
|
||||
{
|
||||
id: "cloud-platform-engineer",
|
||||
title: "Cloud & Platform Engineer",
|
||||
location: "Coimbatore, India",
|
||||
type: "Full-time",
|
||||
},
|
||||
{
|
||||
id: "data-engineer",
|
||||
title: "Data Engineer",
|
||||
location: "Coimbatore, India",
|
||||
type: "Full-time",
|
||||
},
|
||||
{
|
||||
id: "product-designer",
|
||||
title: "Product Designer",
|
||||
location: "Coimbatore, India",
|
||||
type: "Full-time",
|
||||
},
|
||||
];
|
||||
Reference in New Issue
Block a user