PageSourceSearch

https://www.guhatek.com/assets/ProductEngineeringPage-BR0hl3Aj.js

js guhatek.com collected 2026-10-05 08:55:26 UTC 6,347 bytes, 12 lines download raw bytes

1import{e as m,r as x,b as g,j as e,m as i}from"./vendor-BBfQmSwJ.js";import{g as p,P as h,m as u,F as b,f,q as j,p as w}from"./index-Bg-EAobF.js";import{A as y}from"./arrow-left-40IckzSx.js";import{L as k}from"./layers-DIY1g7Aa.js";import{T as v}from"./terminal-B_73xcKN.js";import{S as N}from"./settings-DOKmTMFn.js";/**
2 * @license lucide-react v0.462.0 - ISC
3 *
4 * This source code is licensed under the ISC license.
5 * See the LICENSE file in the root directory of this source tree.
6 */const E=p("Smartphone",[["rect",{width:"14",height:"20",x:"5",y:"2",rx:"2",ry:"2",key:"1yt0o3"}],["path",{d:"M12 18h.01",key:"mhygvu"}]]),z=()=>{const o=m(),[l,s]=x.useState(!1),c=()=>s(!0),{t}=g(),d=[{key:"saas",icon:e.jsx(k,{className:"w-5 h-5 text-white"}),gradient:"from-blue-500 to-indigo-500 dark:from-blue-600 dark:to-indigo-500"},{key:"webMobile",icon:e.jsx(E,{className:"w-5 h-5 text-white"}),gradient:"from-emerald-400 to-teal-500 dark:from-emerald-500 dark:to-teal-400"},{key:"api",icon:e.jsx(j,{className:"w-5 h-5 text-white"}),gradient:"from-purple-400 to-pink-500 dark:from-purple-500 dark:to-pink-500"},{key:"cicd",icon:e.jsx(v,{className:"w-5 h-5 text-white"}),gradient:"from-orange-400 to-red-500 dark:from-orange-500 dark:to-red-500"},{key:"qa",icon:e.jsx(w,{className:"w-5 h-5 text-white"}),gradient:"from-cyan-400 to-blue-500 dark:from-cyan-500 dark:to-blue-500"},{key:"legacy",icon:e.jsx(N,{className:"w-5 h-5 text-white"}),gradient:"from-yellow-400 to-orange-500 dark:from-yellow-500 dark:to-orange-500"}],n=["React","Node.js","Kubernetes","AWS","Go","PostgreSQL","Docker","TypeScript","GraphQL","Python"];return e.jsxs("div",{id:"product-engineering",className:"min-h-screen  text-foreground selection:bg-primary/20",children:[e.jsx(h,{title:"Product Engineering Services | GuhaTek",description:"End-to-end product engineering for SaaS, web and mobile: architecture, delivery and reliability built in from the first commit rather than bolted on later.",service:{name:"Product Engineering",description:"End-to-end product engineering for SaaS, web and mobile applications."}}),e.jsxs("div",{className:"pb-20",children:[e.jsxs("section",{className:"relative pt-24 pb-12 lg:pt-32 lg:pb-20 overflow-hidden",children:[e.jsxs("div",{className:"absolute inset-0 z-0",children:[e.jsx("img",{src:"/saas.png",alt:t("productEngineering.hero.imageAlt"),className:"w-full h-full object-cover object-center"}),e.jsx("div",{className:`absolute inset-0 bg-gradient-to-r 
7      from-slate-900/80 via-slate-900/60 to-transparent 
8      dark:from-slate-950/90 dark:via-slate-950/70`})]}),e.jsxs("div",{className:"container mx-auto px-6 relative z-10",children:[e.jsxs("div",{className:"flex items-center gap-4 mb-10",children:[e.jsxs("button",{onClick:()=>o(-1),className:"flex items-center gap-2 text-sm font-medium text-white/80 hover:text-white transition-colors group",children:[e.jsx(y,{size:16,className:"group-hover:-translate-x-1 transition-transform"}),t("productEngineering.breadcrumb.back"),"                            "]}),e.jsx("div",{className:"h-4 w-px bg-white/30"}),e.jsxs("nav",{className:"flex items-center gap-2 text-xs text-white/60 uppercase tracking-widest",children:[e.jsx("span",{children:t("productEngineering.breadcrumb.services")}),e.jsx(u,{size:12}),e.jsx("span",{className:"text-white font-bold",children:t("productEngineering.breadcrumb.current")})]})]}),e.jsxs(i.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},className:"max-w-3xl",children:[e.jsx("span",{className:"text-xs font-semibold tracking-[0.3em] text-primary uppercase mb-6 block",children:t("productEngineering.hero.eyebrow")}),e.jsxs("h1",{className:"font-display text-4xl md:text-6xl lg:text-7xl font-bold leading-tight mb-6 text-white",children:[t("productEngineering.hero.titleA")," ",e.jsx("span",{className:"text-primary",children:t("productEngineering.hero.titleHighlight")})]}),e.jsx("p",{className:"font-body text-base md:text-lg lg:text-xl text-white/80 leading-relaxed pb-10",children:t("productEngineering.hero.description")}),e.jsx("button",{onClick:c,className:"btn btn-primary btn-md w-full sm:w-auto",children:t("productEngineering.hero.button")})]})]})]}),e.jsxs("section",{className:"container mx-auto pb-20 pt-10",children:[e.jsxs("div",{className:"flex flex-col md:flex-row md:items-end justify-between mb-16 gap-6",children:[e.jsxs("div",{className:"max-w-xl",children:[e.jsx("h2",{className:"font-display text-3xl md:text-4xl font-bold mb-4",children:t("productEngineering.capabilities.title")}),e.jsx("p",{className:"text-muted-foreground text-lg",children:t("productEngineering.capabilities.description")})]}),e.jsx("div",{className:"hidden md:block h-px flex-grow bg-border mx-10 mb-4"})]}),e.jsx("div",{className:"grid md:grid-cols-2 lg:grid-cols-3 gap-6",children:d.map((r,a)=>e.jsxs(i.div,{whileHover:{y:-8},className:`p-8 rounded-3xl border border-border bg-card/50 backdrop-blur-sm
9                         hover:border-primary/50 hover:shadow-2xl hover:shadow-
9primary/5 transition-all duration-500 group`,children:[e.jsx("div",{className:`w-12 h-12 rounded-2xl flex items-center justify-center 
10  bg-gradient-to-br ${r.gradient}
11  shadow-sm ring-1 ring-black/5 dark:ring-white/10
12  group-hover:scale-110 transition-all duration-300`,children:r.icon}),e.jsxs("h3",{className:"mt-6 font-display text-xl font-bold group-hover:text-primary transition-colors",children:[t(`productEngineering.capabilities.items.${r.key}.title`),"                                "]}),e.jsx("p",{className:"mt-3 text-muted-foreground leading-relaxed",children:t(`productEngineering.capabilities.items.${r.key}.description`)})]},a))})]}),e.jsxs("section",{className:"py-20 border-b border-border overflow-hidden bg-muted/30",children:[e.jsx("p",{className:"text-center text-xs uppercase tracking-[0.3em] text-muted-foreground mb-12",children:t("productEngineering.techStack.title")}),e.jsx("div",{className:"flex whitespace-nowrap overflow-hidden",children:e.jsx(i.div,{className:"flex gap-16 items-center",animate:{x:[0,-1e3]},transition:{repeat:1/0,duration:30,ease:"linear"},children:[...n,...n].map((r,a)=>e.jsx("span",{className:"text-2xl md:text-4xl font-bold text-muted-foreground/40 hover:text-primary transition-colors cursor-default",children:r},a))})})]})]}),e.jsx(b,{}),e.jsx(f,{isOpen:l,onClose:()=>s(!1)})]})};export{z as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.