Latest Updated Pages
E2E Test Suite / Critical User Journeys (push) Has been skipped
E2E Test Suite / API Integration Tests (push) Has been skipped
Deploy to Production / Build & Verify (push) Failing after 13s
Ping Search Engines / Notify Search Engines (push) Successful in 3s
Deploy to Production / Pre-Deploy Tests (push) Has been skipped
Deploy to Production / Deploy to Railway (push) Has been skipped
Deploy to Production / Deploy to Render (push) Has been skipped
Deploy to Production / Deploy to VPS (PM2) (push) Has been skipped
Deploy to Production / Deploy to Fly.io (push) Has been skipped
Deploy to Production / Post-Deploy Verification (push) Has been skipped
Deploy to Production / Notify on Failure (push) Successful in 1s
E2E Test Suite / Smoke Tests (P0) (push) Failing after 9m36s
E2E Test Suite / Form Interaction Tests (push) Failing after 12m6s
E2E Test Suite / Destructive & Chaos Tests (push) Failing after 11m46s
E2E Test Suite / Cross-Browser Regression (chromium) (push) Failing after 9m31s
E2E Test Suite / Cross-Browser Regression (firefox) (push) Failing after 11m5s
E2E Test Suite / Cross-Browser Regression (webkit) (push) Failing after 15m24s
E2E Test Suite / Security Header Tests (push) Failing after 7m55s
E2E Test Suite / Test Report Summary (push) Failing after 6s
E2E Test Suite / Mobile Device Tests (push) Failing after 3h12m28s
Uptime Monitor / Health & Response Time (push) Successful in 5s
Uptime Monitor / SSL Certificate (push) Successful in 3s
Uptime Monitor / Send Alerts (push) Has been skipped
Uptime Monitor / Record Uptime Success (push) Successful in 2s
E2E Test Suite / Critical User Journeys (push) Has been skipped
E2E Test Suite / API Integration Tests (push) Has been skipped
Deploy to Production / Build & Verify (push) Failing after 13s
Ping Search Engines / Notify Search Engines (push) Successful in 3s
Deploy to Production / Pre-Deploy Tests (push) Has been skipped
Deploy to Production / Deploy to Railway (push) Has been skipped
Deploy to Production / Deploy to Render (push) Has been skipped
Deploy to Production / Deploy to VPS (PM2) (push) Has been skipped
Deploy to Production / Deploy to Fly.io (push) Has been skipped
Deploy to Production / Post-Deploy Verification (push) Has been skipped
Deploy to Production / Notify on Failure (push) Successful in 1s
E2E Test Suite / Smoke Tests (P0) (push) Failing after 9m36s
E2E Test Suite / Form Interaction Tests (push) Failing after 12m6s
E2E Test Suite / Destructive & Chaos Tests (push) Failing after 11m46s
E2E Test Suite / Cross-Browser Regression (chromium) (push) Failing after 9m31s
E2E Test Suite / Cross-Browser Regression (firefox) (push) Failing after 11m5s
E2E Test Suite / Cross-Browser Regression (webkit) (push) Failing after 15m24s
E2E Test Suite / Security Header Tests (push) Failing after 7m55s
E2E Test Suite / Test Report Summary (push) Failing after 6s
E2E Test Suite / Mobile Device Tests (push) Failing after 3h12m28s
Uptime Monitor / Health & Response Time (push) Successful in 5s
Uptime Monitor / SSL Certificate (push) Successful in 3s
Uptime Monitor / Send Alerts (push) Has been skipped
Uptime Monitor / Record Uptime Success (push) Successful in 2s
This commit is contained in:
@@ -96,15 +96,16 @@ const fullTitle = title === 'Home' ? siteName : `${title} | ${siteName}`;
|
||||
<meta name="twitter:label1" content="Est. reading time" />
|
||||
<meta name="twitter:data1" content="3 minutes" />
|
||||
|
||||
<!-- Theme Color -->
|
||||
<meta name="theme-color" content="#0891b2" />
|
||||
<!-- Theme Color: dual media query for OS-level dark/light, overridden by JS for stored preference -->
|
||||
<meta name="theme-color" media="(prefers-color-scheme: light)" content="#0891b2" />
|
||||
<meta name="theme-color" media="(prefers-color-scheme: dark)" content="#0f172a" />
|
||||
|
||||
<!-- JSON-LD Structured Data - Organization Schema -->
|
||||
<!-- JSON-LD Structured Data - Organization + LocalBusiness Schema -->
|
||||
<script type="application/ld+json" set:html={JSON.stringify({
|
||||
"@context": "https://schema.org",
|
||||
"@type": "Organization",
|
||||
"@type": ["Organization", "LocalBusiness"],
|
||||
"name": "WorkRoot IT Solutions",
|
||||
"alternateName": "WorkRoot",
|
||||
"alternateName": ["WorkRoot", "WorkRoot IT Solutions LLP"],
|
||||
"url": "https://workroot.in",
|
||||
"logo": {
|
||||
"@type": "ImageObject",
|
||||
@@ -121,27 +122,46 @@ const fullTitle = title === 'Home' ? siteName : `${title} | ${siteName}`;
|
||||
},
|
||||
"address": {
|
||||
"@type": "PostalAddress",
|
||||
"streetAddress": "123 Tech Plaza, Suite 400",
|
||||
"addressLocality": "San Francisco",
|
||||
"addressRegion": "CA",
|
||||
"postalCode": "94105",
|
||||
"addressCountry": "US"
|
||||
"streetAddress": "At Post Rajapur Shantinagar, Taluka Khatav",
|
||||
"addressLocality": "Satara",
|
||||
"addressRegion": "MH",
|
||||
"postalCode": "415503",
|
||||
"addressCountry": "IN"
|
||||
},
|
||||
"geo": {
|
||||
"@type": "GeoCoordinates",
|
||||
"latitude": "17.7733632",
|
||||
"longitude": "74.3309312"
|
||||
},
|
||||
"hasMap": "https://maps.google.com/?q=Rajapur+Shantinagar+Khatav+Satara+Maharashtra+415503",
|
||||
"telephone": "+91-9561417403",
|
||||
"email": "admin@workroot.in",
|
||||
"contactPoint": [{
|
||||
"@type": "ContactPoint",
|
||||
"telephone": "+1-555-123-4567",
|
||||
"telephone": "+91-9561417403",
|
||||
"contactType": "customer service",
|
||||
"email": "hello@workroot.in",
|
||||
"availableLanguage": ["English"],
|
||||
"email": "admin@workroot.in",
|
||||
"availableLanguage": ["English", "Hindi", "Marathi"],
|
||||
"areaServed": "Worldwide"
|
||||
}, {
|
||||
"@type": "ContactPoint",
|
||||
"telephone": "+1-555-123-4567",
|
||||
"telephone": "+91-9561417403",
|
||||
"contactType": "sales",
|
||||
"email": "sales@workroot.in",
|
||||
"availableLanguage": ["English"],
|
||||
"email": "admin@workroot.in",
|
||||
"availableLanguage": ["English", "Hindi", "Marathi"],
|
||||
"areaServed": "Worldwide"
|
||||
}],
|
||||
"openingHoursSpecification": [
|
||||
{
|
||||
"@type": "OpeningHoursSpecification",
|
||||
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
|
||||
"opens": "09:00",
|
||||
"closes": "18:00"
|
||||
}
|
||||
],
|
||||
"priceRange": "$$",
|
||||
"currenciesAccepted": "INR",
|
||||
"paymentAccepted": "Cash, Credit Card, Bank Transfer",
|
||||
"sameAs": [
|
||||
"https://twitter.com/workroot",
|
||||
"https://linkedin.com/company/workroot",
|
||||
@@ -202,6 +222,26 @@ const fullTitle = title === 'Home' ? siteName : `${title} | ${siteName}`;
|
||||
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap" />
|
||||
</noscript>
|
||||
|
||||
<!-- Theme init: runs inline before render to prevent FOUC -->
|
||||
<!-- Also syncs theme-color meta to match stored preference (overrides OS-level media query) -->
|
||||
<script is:inline>
|
||||
(function() {
|
||||
try {
|
||||
var stored = localStorage.getItem('theme');
|
||||
var prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
var isDark = stored === 'dark' || (!stored && prefersDark);
|
||||
if (isDark) document.documentElement.classList.add('dark');
|
||||
// Sync theme-color meta tags when user has an explicit stored preference
|
||||
// (without stored preference the OS media query on the meta tags handles it natively)
|
||||
if (stored) {
|
||||
var metas = document.querySelectorAll('meta[name="theme-color"]');
|
||||
var color = isDark ? '#0f172a' : '#0891b2';
|
||||
metas.forEach(function(m) { m.setAttribute('content', color); });
|
||||
}
|
||||
} catch(e) {}
|
||||
})();
|
||||
</script>
|
||||
|
||||
<!-- Critical CSS for above-the-fold content -->
|
||||
<style is:inline>
|
||||
/* Critical CSS for faster FCP - system fonts render immediately */
|
||||
@@ -314,11 +354,8 @@ const fullTitle = title === 'Home' ? siteName : `${title} | ${siteName}`;
|
||||
scroll-behavior: smooth;
|
||||
}
|
||||
|
||||
/* Focus styles for accessibility */
|
||||
:focus-visible {
|
||||
outline: 2px solid theme('colors.primary.DEFAULT');
|
||||
outline-offset: 2px;
|
||||
}
|
||||
/* Focus styles are defined in global.css via Tailwind ring utilities.
|
||||
Removed duplicate outline here to avoid conflicting with ring-based focus styles. */
|
||||
|
||||
/* Remove focus outline for mouse users */
|
||||
:focus:not(:focus-visible) {
|
||||
|
||||
Reference in New Issue
Block a user