content: add quotable, extractable company facts + comparison table to homepage
E2E Test Suite / Critical User Journeys (push) Has been cancelled
E2E Test Suite / API Integration Tests (push) Has been cancelled
E2E Test Suite / Form Interaction Tests (push) Has been cancelled
E2E Test Suite / Destructive & Chaos Tests (push) Has been cancelled
E2E Test Suite / Cross-Browser Regression (chromium) (push) Has been cancelled
E2E Test Suite / Cross-Browser Regression (firefox) (push) Has been cancelled
E2E Test Suite / Cross-Browser Regression (webkit) (push) Has been cancelled
E2E Test Suite / Mobile Device Tests (push) Has been cancelled
E2E Test Suite / Security Header Tests (push) Has been cancelled
E2E Test Suite / Test Report Summary (push) Has been cancelled
E2E Test Suite / Smoke Tests (P0) (push) Has been cancelled
Ping Search Engines / Notify Search Engines (push) Failing after 11m34s
Deploy to Production / Pre-Deploy Tests (push) Failing after 13m8s
Deploy to Production / Build & Verify (push) Failing after 16m0s
Deploy to Production / Deploy to Fly.io (push) Failing after 14m5s
Deploy to Production / Deploy to VPS (PM2) (push) Failing after 14m6s
Deploy to Production / Deploy to Render (push) Failing after 14m57s
Deploy to Production / Deploy to Railway (push) Failing after 14m58s
Deploy to Production / Post-Deploy Verification (push) Failing after 14m57s
Deploy to Production / Notify on Failure (push) Failing after 13h10m32s
E2E Test Suite / Critical User Journeys (push) Has been cancelled
E2E Test Suite / API Integration Tests (push) Has been cancelled
E2E Test Suite / Form Interaction Tests (push) Has been cancelled
E2E Test Suite / Destructive & Chaos Tests (push) Has been cancelled
E2E Test Suite / Cross-Browser Regression (chromium) (push) Has been cancelled
E2E Test Suite / Cross-Browser Regression (firefox) (push) Has been cancelled
E2E Test Suite / Cross-Browser Regression (webkit) (push) Has been cancelled
E2E Test Suite / Mobile Device Tests (push) Has been cancelled
E2E Test Suite / Security Header Tests (push) Has been cancelled
E2E Test Suite / Test Report Summary (push) Has been cancelled
E2E Test Suite / Smoke Tests (P0) (push) Has been cancelled
Ping Search Engines / Notify Search Engines (push) Failing after 11m34s
Deploy to Production / Pre-Deploy Tests (push) Failing after 13m8s
Deploy to Production / Build & Verify (push) Failing after 16m0s
Deploy to Production / Deploy to Fly.io (push) Failing after 14m5s
Deploy to Production / Deploy to VPS (PM2) (push) Failing after 14m6s
Deploy to Production / Deploy to Render (push) Failing after 14m57s
Deploy to Production / Deploy to Railway (push) Failing after 14m58s
Deploy to Production / Post-Deploy Verification (push) Failing after 14m57s
Deploy to Production / Notify on Failure (push) Failing after 13h10m32s
Add an LLM-citable "WorkRoot at a glance" section to the homepage with 7 standalone factual sentences that each bundle the company name + a concrete claim + a number (founded 2022, 20+ projects, 11 districts, 50,000+ records, 99.9% uptime, IIT Patna partnership, GeM empanelment, 15,000+ officers, 8+ years), so each line stays accurate when quoted out of context. - New companyFacts list + "Custom software vs off-the-shelf ERP" comparison table in src/pages/index.astro (reuses the table pattern from the custom-ERP service page; final row carries the canonical 11-districts / 99.9% proof). - Rewrite vague HomepageFaq answers into definitive, self-contained one- paragraph answers; visible text still drives the single FAQPage JSON-LD. - Normalize stray "11+ districts" in the services array to the canonical "11 districts" for exact sitewide numerical consistency. Verified: build passes; rendered homepage shows all 7 facts, the comparison table, definitive FAQ answers, exactly one FAQPage JSON-LD, and no "11+". Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 4.8
parent
0121641163
commit
a3dd4b9ffa
@@ -18,61 +18,68 @@
|
||||
// - Keyboard: native <button> handles Enter & Space; Tab moves between
|
||||
// items. No custom key handling needed.
|
||||
|
||||
// Each answer is written as a definitive, self-contained paragraph: it can be
|
||||
// read (or quoted) in isolation without the question for context, and the
|
||||
// buyer-stage answers bundle the WorkRoot name with the canonical numbers
|
||||
// (founded 2022 · 20+ projects · 11 districts · 50,000+ records · 99.9%
|
||||
// uptime · GeM · IIT Patna). Keep every figure identical to <ProofNumbers />
|
||||
// and the homepage `companyFacts` set — the visible text below is also the
|
||||
// source for the FAQPage JSON-LD emitted at the bottom of this component.
|
||||
const moneyFaqs = [
|
||||
{
|
||||
question: 'How much does a project cost? Do you work with fixed budgets?',
|
||||
answer:
|
||||
'Projects start from ₹1,00,000, and most web, mobile, and ERP builds land between ₹2L and ₹15L depending on scope. And yes — we work with fixed budgets: tell us the number you have in mind and we will scope what we can deliver within it. Every quote is free, itemised, and no-obligation.',
|
||||
'WorkRoot IT Solutions projects start from ₹1,00,000, and most web, mobile, and ERP builds land between ₹2,00,000 and ₹15,00,000 depending on scope. Yes — we work with fixed budgets: tell us the number you have in mind and we will scope exactly what we can deliver within it. Every quote is free, itemised, and carries no obligation.',
|
||||
},
|
||||
{
|
||||
question: 'How much does a custom ERP cost?',
|
||||
answer:
|
||||
'Typical engagements run ₹2L–₹15L depending on scope. We offer fixed-price options for well-defined projects and time-and-materials for evolving ones.',
|
||||
'A custom ERP from WorkRoot IT Solutions typically runs ₹2,00,000–₹15,00,000, with a genuinely production-grade single-department system starting around ₹6,00,000. We offer fixed-price quotes for well-defined scopes and time-and-materials pricing for evolving ones, and every estimate is free and itemised.',
|
||||
},
|
||||
{
|
||||
question: 'What is your typical timeline?',
|
||||
answer:
|
||||
'4–16 weeks from kickoff to launch. MVPs ship in ~6 weeks on average.',
|
||||
'Most WorkRoot IT Solutions engagements run 4–16 weeks from kickoff to launch, and a typical MVP ships in about 6 weeks. We work in 2-week sprints with a live staging environment from day one, so you see and steer working software early rather than waiting for a single big-bang release.',
|
||||
},
|
||||
{
|
||||
question: 'Do you sign NDAs?',
|
||||
answer:
|
||||
'Yes — happily. We sign mutual NDAs before any detailed discussion.',
|
||||
'Yes. WorkRoot IT Solutions signs a mutual NDA before any detailed discussion of your idea, data, or codebase — at no cost and with no conditions attached. Your concept and commercial details stay confidential from the very first call.',
|
||||
},
|
||||
{
|
||||
question: 'Who owns the source code?',
|
||||
answer:
|
||||
'You do. Full IP transfer is included; we hand over repositories, deployment access, and documentation.',
|
||||
'You do. Every WorkRoot IT Solutions engagement includes full intellectual-property transfer on delivery: you receive the complete source repositories, deployment access, and documentation, with no per-seat licence fees and no vendor lock-in. You are free to host, extend, or hand the system to another team at any time.',
|
||||
},
|
||||
{
|
||||
question: 'Do you work with government tenders / GeM?',
|
||||
answer:
|
||||
"Yes. We're empanelled for relevant categories and have delivered platforms used across 11 districts in Bihar.",
|
||||
'Yes. WorkRoot IT Solutions is empanelled on the Government e-Marketplace (GeM) for relevant IT service categories and can respond to government tenders. We have delivered public-service platforms live across 11 districts of Bihar at 99.9% uptime, including a Police Management System and a Smart Crematorium Management System for the Bihar Government.',
|
||||
},
|
||||
{
|
||||
question: 'What technologies do you work with?',
|
||||
answer:
|
||||
'Astro, Next.js, Angular, React Native, Spring Boot, Go, Node.js, PostgreSQL, and the full AWS/GCP stack.',
|
||||
'WorkRoot IT Solutions builds on Astro, Next.js, Angular, and React Native on the front end; Spring Boot, Go, and Node.js on the back end; and PostgreSQL or MySQL for data — the same stack behind the IIT Patna University Management System and our multi-district government deployments, all deployed and operated on the AWS and GCP cloud.',
|
||||
},
|
||||
{
|
||||
question: 'Do you offer ongoing support after launch?',
|
||||
answer:
|
||||
'Yes. We offer maintenance packages covering bug fixes, security patches, performance monitoring, and feature enhancements — with response SLAs to match your uptime needs.',
|
||||
'Yes. WorkRoot IT Solutions offers maintenance packages covering bug fixes, security patches, performance monitoring, and feature enhancements, each with a response SLA matched to your uptime needs — the same operational discipline that keeps our government systems running at 99.9% uptime.',
|
||||
},
|
||||
{
|
||||
question: 'What is your development process?',
|
||||
answer:
|
||||
'Agile with 2-week sprints, weekly check-ins, and a live staging environment from day one. You see working software early and steer the roadmap as it ships.',
|
||||
'WorkRoot IT Solutions works in Agile 2-week sprints with weekly check-ins and a live staging environment from day one. You see working software early and steer the roadmap as it ships, rather than waiting for a single final handover at the end of the project.',
|
||||
},
|
||||
{
|
||||
question: 'Can you work with our existing team?',
|
||||
answer:
|
||||
'Absolutely. We augment in-house teams as readily as we deliver fully managed builds — adapting to your repo, branch strategy, ticket system, and review process.',
|
||||
'Absolutely. WorkRoot IT Solutions augments in-house teams as readily as it delivers fully managed builds, adapting to your repository, branch strategy, ticketing system, and code-review process so we slot into the way your team already works.',
|
||||
},
|
||||
{
|
||||
question: 'How do you ensure project security?',
|
||||
answer:
|
||||
'Security is built into every phase: OWASP-aligned reviews, encrypted data at rest and in transit, role-based access control, regular dependency audits, and compliance with GDPR / SOC 2-style controls where the project demands them.',
|
||||
'Security is built into every phase at WorkRoot IT Solutions: OWASP-aligned code reviews, encrypted data at rest and in transit, role-based access control, regular dependency audits, and GDPR- and SOC 2-style controls where a project demands them. The same architecture secures a Bihar government police platform deployed across 11 districts.',
|
||||
},
|
||||
];
|
||||
|
||||
|
||||
+107
-2
@@ -44,8 +44,8 @@ const services = [
|
||||
slug: 'government-systems',
|
||||
title: 'Government IT Solutions',
|
||||
outcome: 'Roll out secure, compliant platforms across districts without rewriting them for each one.',
|
||||
description: 'GeM-empanelled and already live across 11+ districts at 99.9% uptime — role-based access, audit trails, and the security public services demand.',
|
||||
features: ['Live in 11+ Districts', 'GeM-Empanelled & Compliant', '99.9% Uptime'],
|
||||
description: 'GeM-empanelled and already live across 11 districts at 99.9% uptime — role-based access, audit trails, and the security public services demand.',
|
||||
features: ['Live in 11 Districts', 'GeM-Empanelled & Compliant', '99.9% Uptime'],
|
||||
cta: 'Discuss your government project',
|
||||
},
|
||||
];
|
||||
@@ -171,6 +171,37 @@ const techStack = [
|
||||
// "Common Questions" block that used to live above the tech-stack section
|
||||
// was removed; its unique questions were merged into HomepageFaq's
|
||||
// `moneyFaqs` array so no buyer-facing content was dropped.
|
||||
|
||||
// Quotable, self-contained company facts. Each sentence deliberately bundles
|
||||
// the full company name + a concrete claim + a number so the line stays
|
||||
// accurate and citable when lifted out of context (search snippets, press
|
||||
// quotes, AI assistants). Every figure here is the canonical site-wide value
|
||||
// and MUST stay identical to <ProofNumbers />, the hero trust badge, /about,
|
||||
// and the /services pages. Do not change a number here without updating it
|
||||
// everywhere it appears — mismatched stats reintroduce the credibility bug
|
||||
// this canonical set was created to fix.
|
||||
const companyFacts = [
|
||||
'WorkRoot IT Solutions was founded in 2022 and has delivered 20+ production software systems for startups, enterprises, and government bodies.',
|
||||
'WorkRoot IT Solutions runs government platforms across 11 districts of Bihar, India, sustaining 99.9% uptime on mission-critical public services.',
|
||||
'WorkRoot IT Solutions manages 50,000+ live records across its government and enterprise deployments.',
|
||||
'WorkRoot IT Solutions built the University Management System for IIT Patna on a Next.js and Spring Boot stack.',
|
||||
'WorkRoot IT Solutions is empanelled on the Government e-Marketplace (GeM), making it eligible to bid on Indian government IT tenders.',
|
||||
'WorkRoot IT Solutions delivered a Police Management System that digitised FIRs and case tracking for 15,000+ officers across 11 districts of Bihar.',
|
||||
'WorkRoot IT Solutions is a senior in-house engineering team averaging 8+ years of experience per engineer.',
|
||||
];
|
||||
|
||||
// Comparison table — custom software (WorkRoot) vs off-the-shelf ERP / SaaS.
|
||||
// Mirrors the deeper table on /services/custom-erp-development, surfaced on the
|
||||
// homepage so the core buying trade-off is framed before a late-stage visitor
|
||||
// reaches the inline lead form. The final row carries the canonical
|
||||
// "11 districts · 99.9% uptime" proof point.
|
||||
const comparison = [
|
||||
{ dimension: 'Fit to your workflow', offShelf: 'You reshape your process to fit the software', custom: 'The software is built around your exact process' },
|
||||
{ dimension: 'Source-code ownership', offShelf: 'Vendor-locked, closed source', custom: 'Full IP transfer on delivery — you own the code' },
|
||||
{ dimension: 'Licensing cost', offShelf: 'Recurring per-seat fees that grow with headcount', custom: 'One-time build — no per-seat licence tax' },
|
||||
{ dimension: 'Data residency', offShelf: 'The vendor’s cloud and region', custom: 'Your servers, your region, your control' },
|
||||
{ dimension: 'Proven at scale', offShelf: 'Generic, one-size-fits-all', custom: 'Live across 11 districts at 99.9% uptime' },
|
||||
];
|
||||
---
|
||||
|
||||
<BaseLayout
|
||||
@@ -681,6 +712,80 @@ const techStack = [
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- Company Facts + Comparison — extractable, self-contained statements
|
||||
that bundle the WorkRoot name with a concrete claim and a number so each
|
||||
line stays accurate when quoted out of context (search snippets, press,
|
||||
AI assistants). Followed by a custom-vs-off-the-shelf comparison table so
|
||||
the buying trade-off is framed in one glance. Every figure matches the
|
||||
canonical set in <ProofNumbers />. -->
|
||||
<section
|
||||
id="company-facts"
|
||||
class="py-24 bg-white dark:bg-secondary-900 border-t border-secondary-100 dark:border-secondary-800"
|
||||
aria-labelledby="company-facts-heading"
|
||||
>
|
||||
<div class="container-wrapper">
|
||||
<div class="text-center max-w-3xl mx-auto mb-16" data-animate="fade-up">
|
||||
<span class="inline-block px-4 py-2 rounded-full bg-primary-50 dark:bg-primary-900/30 text-primary-700 dark:text-primary-300 text-sm font-bold uppercase tracking-wider mb-4">The facts</span>
|
||||
<h2 id="company-facts-heading" class="text-4xl sm:text-5xl font-bold text-secondary-900 dark:text-secondary-100 mb-6">WorkRoot at a glance</h2>
|
||||
<p class="text-xl text-secondary-600 dark:text-secondary-400">
|
||||
The record behind the work, stated plainly — so you know exactly who you're hiring.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<ul class="grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-5 max-w-5xl mx-auto mb-20" role="list">
|
||||
{companyFacts.map((fact, index) => (
|
||||
<li
|
||||
class="flex items-start gap-4 bg-secondary-50 dark:bg-secondary-800/60 rounded-2xl border border-secondary-100 dark:border-secondary-700 p-5 sm:p-6"
|
||||
data-animate="fade-up"
|
||||
data-delay={String((index % 2) * 100)}
|
||||
>
|
||||
<span class="flex-shrink-0 w-10 h-10 rounded-xl bg-primary-100 dark:bg-primary-900/40 flex items-center justify-center" aria-hidden="true">
|
||||
<svg class="w-6 h-6 text-primary-600 dark:text-primary-300" fill="none" stroke="currentColor" viewBox="0 0 24 24" stroke-width="2.2">
|
||||
<path stroke-linecap="round" stroke-linejoin="round" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z" />
|
||||
</svg>
|
||||
</span>
|
||||
<p class="text-base sm:text-lg text-secondary-800 dark:text-secondary-200 leading-relaxed">{fact}</p>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
|
||||
<!-- Comparison table: custom build vs off-the-shelf. Reuses the markup
|
||||
pattern from /services/custom-erp-development for visual consistency. -->
|
||||
<div class="max-w-4xl mx-auto" data-animate="fade-up">
|
||||
<div class="text-center mb-8">
|
||||
<h3 class="text-2xl sm:text-3xl font-bold text-secondary-900 dark:text-secondary-100 mb-3">Custom software vs off-the-shelf ERP</h3>
|
||||
<p class="text-secondary-600 dark:text-secondary-400 text-base sm:text-lg">Where a bespoke WorkRoot build pays you back over a packaged SaaS tool.</p>
|
||||
</div>
|
||||
<div class="overflow-x-auto rounded-2xl border border-secondary-200 dark:border-secondary-700 shadow-sm">
|
||||
<table class="w-full text-left border-collapse min-w-[640px]">
|
||||
<caption class="sr-only">Comparison of off-the-shelf ERP software versus custom software built by WorkRoot IT Solutions</caption>
|
||||
<thead>
|
||||
<tr class="bg-secondary-50 dark:bg-secondary-800">
|
||||
<th scope="col" class="px-5 py-4 text-sm font-bold text-secondary-700 dark:text-secondary-200">Dimension</th>
|
||||
<th scope="col" class="px-5 py-4 text-sm font-bold text-secondary-500 dark:text-secondary-400">Off-the-shelf ERP</th>
|
||||
<th scope="col" class="px-5 py-4 text-sm font-bold text-primary-700 dark:text-primary-300">Custom software (WorkRoot)</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{comparison.map((row, i) => (
|
||||
<tr class={i % 2 === 0 ? 'bg-white dark:bg-secondary-900' : 'bg-secondary-50/50 dark:bg-secondary-800/40'}>
|
||||
<th scope="row" class="px-5 py-4 text-sm font-semibold text-secondary-900 dark:text-secondary-100 align-top">{row.dimension}</th>
|
||||
<td class="px-5 py-4 text-sm text-secondary-600 dark:text-secondary-400 align-top">{row.offShelf}</td>
|
||||
<td class="px-5 py-4 text-sm text-secondary-700 dark:text-secondary-200 align-top font-medium">
|
||||
<span class="inline-flex items-start gap-2">
|
||||
<svg class="w-4 h-4 mt-0.5 flex-shrink-0 text-emerald-500" fill="none" stroke="currentColor" viewBox="0 0 24 24" stroke-width="2.5" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M5 13l4 4L19 7" /></svg>
|
||||
{row.custom}
|
||||
</span>
|
||||
</td>
|
||||
</tr>
|
||||
))}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<!-- Technologies We Work With — relocated from the hero so social proof
|
||||
leads above the fold. Kept intentionally subdued (border-only cards,
|
||||
neutral grayscale icons) so it reads as supporting context rather than
|
||||
|
||||
Reference in New Issue
Block a user