PageSourceSearch

https://buildwithsimon.com/_next/static/chunks/67-948879ccd4c1a6a5.js?dpl=dpl_4pmAnpWdPTUJP2JWHrLfrt9h6r6K

js buildwithsimon.com collected 2026-10-04 07:46:50 UTC 18,892 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[67],{618:(e,t,s)=>{s.d(t,{Q9:()=>o,QG:()=>m,gw:()=>l,mR:()=>d,tn:()=>c});var n=s(6754),r=s(5015),i=s(2983),a=s(9992);function o(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=(0,n.useRef)(null);return(0,n.useEffect)(()=>{r.os.registerPlugin(i.u);let n=r.os.context(()=>{r.os.set(e,{y:60,opacity:0}),r.os.to(e,{y:0,opacity:1,duration:1.2,ease:"power3.out",delay:t,stagger:.15,scrollTrigger:{trigger:s.current,start:"top 85%",toggleActions:"play none none reverse"}})},s);return()=>n.revert()},[e,t]),s}function l(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=(0,n.useRef)(null);return(0,n.useEffect)(()=>{r.os.registerPlugin(i.u);let n=r.os.context(()=>{r.os.set(e,{y:30,opacity:0}),r.os.to(e,{y:0,opacity:1,duration:.8,ease:"back.out(1.7)",delay:t,stagger:.1,scrollTrigger:{trigger:s.current,start:"top 85%",toggleActions:"play none none reverse"}})},s);return()=>n.revert()},[e,t]),s}function c(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,s=(0,n.useRef)(null);return(0,n.useEffect)(()=>{r.os.registerPlugin(i.u);let n=r.os.context(()=>{r.os.set(e,{y:40,opacity:0}),r.os.to(e,{y:0,opacity:1,duration:1,ease:"power2.out",delay:t,scrollTrigger:{trigger:s.current,start:"top 85%",toggleActions:"play none none reverse"}})},s);return()=>n.revert()},[e,t]),s}function d(e,t){let s={expandDuration:.6,collapseDuration:.4,chars:"upperAndLowerCase",expandText:"Simon B",collapseText:"S.B",...t};return(0,n.useEffect)(()=>{r.os.registerPlugin(a.C)},[]),{handleMouseEnter:()=>{e.current&&r.os.to(e.current,{duration:s.expandDuration,scrambleText:{text:s.expandText,chars:s.chars,speed:.3},ease:"power2.out"})},handleMouseLeave:()=>{e.current&&r.os.to(e.current,{duration:s.collapseDuration,scrambleText:{text:s.collapseText,chars:s.chars,speed:.4},ease:"power2.in"})}}}function m(e,t){return(0,n.useEffect)(()=>{r.os.registerPlugin(a.C)},[]),{handleMouseEnter:()=>{e.current&&r.os.to(e.current,{duration:.2,scrambleText:{text:t,chars:"upperCase",speed:.5},ease:"power1.out"})}}}},2220:(e,t,s)=>{s.d(t,{A:()=>r});var n=s(5338);function r(e){let{children:t,className:s=""}=e;return(0,n.jsx)("div",{className:"max-w-[1440px] mx-auto px-4 sm:px-6 lg:px-8 ".concat(s),children:t})}},4067:(e,t,s)=>{s.d(t,{default:()=>j});var n=s(5338),r=s(6754),i=s(3174),a=s.n(i),o=s(6698),l=s(2220),c=s(6375),d=s(9663),m=s(7217),u=s(1813),p=s(5037),g=s(5780),h=s(7787),f=s(6366),b=s(925);let v={size:48,strokeWidth:1.5,className:"w-12 h-12"},x={className:"w-12 h-12"},y=[{id:"web-design",name:"Web Design",slug:"web-design",icon:(0,n.jsx)(()=>(0,n.jsx)(d.A,{...v}),{}),morphShapes:["circle","square","diamond"],shortDescription:"Custom designed, fast, user-friendly websites",longDescription:"I create custom designed, fast, user-friendly, and SEO optimised websites with a focus on performance, mobile responsiveness, and accessibility to ensure an exceptional user experience. With a background in digital marketing and SEO, I understand the importance of well-designed, high-performing websites that not only look great but also rank well, load quickly, and drive engagement.",features:["Custom responsive design","Mobile-first approach","SEO optimisation","Performance optimisation","Accessibility compliance"],benefits:["Improved user engagement","Higher search rankings","Faster load times","Better conversion rates","Professional brand image"],href:"/services/web-design",metaTitle:"Professional Web Design Services | Simon B",metaDescription:"Custom web design services focused on performance, SEO, and user experience. Get a website that looks great and drives results."},{id:"web-development",name:"Web Development",slug:"web-development",icon:(0,n.jsx)(()=>(0,n.jsx)(m.A,{...v}),{}),morphShapes:["square","circle","hexagon"],shortDescription:"Fast, scalable, and maintainable websites",longDescription:"I build fast, scalable, and maintainable websites using modern front-end technologies and best practices. My development approach focuses on clean, semantic code and responsive layouts that ensure optimal performance and usability across all devices and browsers. From setting up flexible CMS architectures to integrating APIs and adding interactive components, I deliver websites that are not only visually engaging but technically robust.",features:["Modern frameworks (React, Next.js)","Clean, semantic code","API integrations","CMS setup and configuration","Cross-browser compatibility"],benefits:["Scalable architecture","Easy maintenance","Fast performance","Future-proof technology","Reliable functionality"],href:"/services/web-development",metaTitle:"Expert Web Development Services | Simon B",metaDescription:"Professional web development using modern technologies. Fast, scalable, and maintainable websites built to last."},{id:"website-management",name:"Website Management",slug:"website-management",icon:(0,n.jsx)(()=>(0,n.jsx)(u.A,{...v}),{}),morphShapes:["hexagon","circle","square"],shortDescription:"Ongoing maintenance and content updates",longDescription:"Keep your website running smoothly with professional website management services. I handle all the technical maintenance, security updates, content changes, and performance monitoring so you can focus on your business.",features:["Regular security updates","Content management","Performance monitoring","Backup management","Technical support"],benefits:["Peace of mind","Always up-to-date","Improved security","Consistent performance","Quick issue resolution"],href:"/services/website-management",metaTitle:"Website Management Services | Simon B",metaDescription:"Professional website management and maintenance services. Keep your site secure, updated, and performing at its best."},{id:"organic-seo",name:"Organic SEO",slug:"organic-seo",icon:(0,n.jsx)(()=>(0,n.jsx)(p.A,{...v}),{}),morphShapes:["triangle","circle","diamond"],shortDescription:"Strategic, data-driven SEO approach",longDescription:"I take a strategic, data-driven approach to SEO, helping your website get found by the right people. Starting with in-depth keyword research, I identify the terms your target audience is actually searching for, and build them into your site's structure, content, and metadata. From on-page SEO and content optimisation to site speed, technical audits, and analytics tracking, I ensure your website meets the latest best practices for visibility and ranking.",features:["Keyword research & strategy","On-page optimisation","Technical SEO audits","Content optimisation","Analytics & reporting"],benefits:["Higher search rankings","Increased organic traffic","Better qualified leads","Improved ROI","Long-term growth"],href:"/services/organic-seo",metaTitle:"Professional SEO Services | Simon B",metaDescription:"Data-driven SEO services to improve your search rankings and drive organic traffic. Sustainable, white-hat SEO that delivers results."},{id:"webflow",name:"Webflow",slug:"webflow",icon:(0,n.jsx)(()=>(0,n.jsx)(f.$3N,{...x}),{}),morphShapes:["diamond","square","triangle"],shortDescription:"Custom Webflow design and development",longDescription:"Professional Webflow development services for businesses that need a powerful, easy-to-manage website. I create custom Webflow sites that combine beautiful design with powerful CMS functionality, giving you complete control over your content.",features:["Custom Webflow design","CMS setup & training","Responsive development","SEO optimisation","E-commerce integration"],benefits:["E
1asy content management","No coding required","Fast hosting","Professional design","Scalable platform"],href:"/services/webflow",metaTitle:"Webflow Development Services | Simon B",metaDescription:"Professional Webflow development services. Custom designs with powerful CMS functionality for easy content management."},{id:"nextjs",name:"Next.js Development",slug:"nextjs",icon:(0,n.jsx)(()=>(0,n.jsx)(f.wlC,{...x}),{}),morphShapes:["circle","hexagon","diamond"],shortDescription:"Modern React applications with Next.js",longDescription:"I specialise in building high-performance web applications using Next.js, the React framework for production. From server-side rendering to static site generation, I leverage Next.js's powerful features to create fast, SEO-friendly applications that deliver exceptional user experiences and optimal performance.",features:["Server-side rendering (SSR)","Static site generation (SSG)","API routes and serverless functions","Performance optimisation","SEO-friendly architecture"],benefits:["Lightning-fast load times","Better search engine visibility","Scalable application architecture","Enhanced user experience","Future-proof technology stack"],href:"/services/nextjs",metaTitle:"Next.js Development Services | Simon B",metaDescription:"Professional Next.js development services. Build fast, scalable React applications with server-side rendering and optimal performance."},{id:"wordpress",name:"WordPress Development",slug:"wordpress",icon:(0,n.jsx)(()=>(0,n.jsx)(f.olg,{...x}),{}),morphShapes:["square","diamond","circle"],shortDescription:"Custom WordPress themes and functionality",longDescription:"I create custom WordPress solutions that go beyond standard themes. From bespoke theme development to custom plugin creation, I build WordPress sites that are tailored to your specific needs, easy to manage, and built for performance and security.",features:["Custom theme development","Plugin development & customisation","WooCommerce integration","Performance optimisation","Security hardening"],benefits:["Easy content management","Scalable functionality","SEO-optimised structure","Enhanced security","Cost-effective maintenance"],href:"/services/wordpress",metaTitle:"WordPress Development Services | Simon B",metaDescription:"Custom WordPress development services. Bespoke themes, plugins, and functionality tailored to your business needs."},{id:"payload-cms",name:"Payload CMS",slug:"payload-cms",icon:(0,n.jsx)(()=>(0,n.jsx)(b.nBS,{...x}),{}),morphShapes:["hexagon","triangle","diamond"],shortDescription:"Headless CMS with TypeScript for modern applications",longDescription:"I build powerful, flexible content management systems using Payload CMS - a modern, TypeScript-first headless CMS. Perfect for businesses that need complete control over their content architecture while maintaining developer-friendly workflows. From custom fields and collections to advanced access control and API design, I create CMS solutions that scale with your business.",features:["Custom content models","TypeScript-first development","RESTful and GraphQL APIs","Advanced access control","Media management & optimisation"],benefits:["Complete content flexibility","Developer-friendly architecture","Scalable infrastructure","Type-safe development","API-first approach"],href:"/services/payload-cms",metaTitle:"Payload CMS Development Services | Simon B",metaDescription:"Professional Payload CMS development services. Build modern, TypeScript-first headless CMS solutions with complete flexibility."},{id:"ux-design",name:"UX Design",slug:"ux-design",icon:(0,n.jsx)(()=>(0,n.jsx)(g.A,{...v}),{}),morphShapes:["diamond","hexagon","circle"],shortDescription:"User-centred design that drives engagement",longDescription:"I create intuitive, user-centred designs that make complex interactions simple and enjoyable. Through research, wireframing, prototyping, and user testing, I ensure your website not only looks beautiful but provides an exceptional experience that keeps users engaged and drives conversions. Every design decision is backed by data and focused on achieving your business goals.",features:["User research & personas","Information architecture","Wireframing & prototyping","User journey mapping","Usability testing"],benefits:["Improved user satisfaction","Higher conversion rates","Reduced bounce rates","Increased engagement","Clear user pathways"],href:"/services/ux-design",metaTitle:"UX Design Services | Simon B",metaDescription:"Professional UX design services focused on creating intuitive, user-centred experiences that drive engagement and conversions."},{id:"email-design",name:"Email Design",slug:"email-design",icon:(0,n.jsx)(()=>(0,n.jsx)(h.A,{...v}),{}),morphShapes:["triangle","square","circle"],shortDescription:"Responsive email templates that convert",longDescription:"I design and develop responsive email templates that look great across all email clients and devices. From newsletter designs to transactional emails and marketing campaigns, I create email experiences that engage your audience and drive action. Every template is tested across multiple clients to ensure consistent rendering and optimal performance.",features:["Responsive email design","Cross-client compatibility","HTML email development","Template systems","A/B testing support"],benefits:["Higher open rates","Improved click-through rates","Consistent brand experience","Mobile-optimised emails","Measurable results"],href:"/services/email-design",metaTitle:"Email Design Services | Simon B",metaDescription:"Professional email design and development services. Create responsive, engaging email templates that drive results across all clients."}];var w=s(618);function S(e){let{service:t}=e,s=(0,r.useRef)(null),{handleMouseEnter:i}=(0,w.QG)(s,t.name);return(0,n.jsxs)(a(),{href:t.href,className:"block px-4 py-3 text-brand-dark hover:bg-brand-light hover:text-brand-green transition-colors",children:[(0,n.jsx)("div",{ref:s,onMouseEnter:i,className:"font-medium",children:t.name}),(0,n.jsx)("div",{className:"text-sm text-gray-600",children:t.shortDe
1scription})]})}function j(){let[e,t]=(0,r.useState)(!1),[s,i]=(0,r.useState)(!1),d=(0,r.useRef)(null),{handleMouseEnter:m,handleMouseLeave:u}=(0,w.mR)(d),p=(0,r.useRef)(null),g=(0,r.useRef)(null),h=(0,r.useRef)(null),f=(0,r.useRef)(null),{handleMouseEnter:b}=(0,w.QG)(p,"About"),{handleMouseEnter:v}=(0,w.QG)(g,"Services"),{handleMouseEnter:x}=(0,w.QG)(h,"Projects"),{handleMouseEnter:j}=(0,w.QG)(f,"Blog"),k=y.slice(0,4);return(0,n.jsx)("nav",{className:"bg-brand-white border-b border-brand-light sticky top-0 z-50",children:(0,n.jsxs)(l.A,{children:[(0,n.jsxs)("div",{className:"flex items-center justify-between py-4",children:[(0,n.jsxs)(a(),{href:"/",className:"flex items-center space-x-3 group",children:[(0,n.jsx)(o.default,{src:"/images/about/simon-profile.jpg",alt:"Simon B",width:40,height:40,className:"w-8 h-8 md:w-10 md:h-10 rounded-full object-cover border-2 border-brand-green/20 group-hover:border-brand-green transition-colors"}),(0,n.jsx)("div",{ref:d,onMouseEnter:m,onMouseLeave:u,className:"text-2xl md:text-3xl font-semibold text-brand-dark group-hover:text-brand-green transition-colors whitespace-nowrap cursor-pointer",children:"S.B"})]}),(0,n.jsxs)("div",{className:"flex items-center space-x-8",children:[(0,n.jsxs)("div",{className:"hidden lg:flex items-center space-x-8",children:[(0,n.jsx)(a(),{href:"/about",className:"text-brand-dark hover:text-brand-green transition-colors font-medium",children:(0,n.jsx)("span",{ref:p,onMouseEnter:b,children:"About"})}),(0,n.jsxs)("div",{className:"relative",onMouseEnter:()=>t(!0),onMouseLeave:()=>t(!1),children:[(0,n.jsxs)(a(),{href:"/services",className:"text-brand-dark hover:text-brand-green transition-colors font-medium flex items-center",children:[(0,n.jsx)("span",{ref:g,onMouseEnter:v,children:"Services"}),(0,n.jsx)("svg",{className:"ml-1 w-4 h-4 transition-transform ".concat(e?"rotate-180":""),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 9l-7 7-7-7"})})]}),e&&(0,n.jsx)("div",{className:"absolute top-full left-0 pt-2 w-64 z-50",children:(0,n.jsx)("div",{className:"bg-white border border-brand-light rounded-lg shadow-lg",children:(0,n.jsx)("div",{className:"py-2",children:k.map(e=>(0,n.jsx)(S,{service:e},e.id))})})})]}),(0,n.jsx)(a(),{href:"/projects",className:"text-brand-dark hover:text-brand-green transition-colors font-medium",children:(0,n.jsx)("span",{ref:h,onMouseEnter:x,children:"Projects"})}),(0,n.jsx)(a(),{href:"/blog",className:"text-brand-dark hover:text-brand-green transition-colors font-medium",children:(0,n.jsx)("span",{ref:f,onMouseEnter:j,children:"Blog"})})]}),(0,n.jsx)(c.default,{as:"link",href:"/contact",variant:"primary",size:"sm",className:"!text-brand-dark",scramble:!0,children:"Contact"}),(0,n.jsx)("button",{className:"lg:hidden text-brand-dark",onClick:()=>i(!s),"aria-label":"Toggle mobile menu",children:(0,n.jsx)("svg",{className:"w-6 h-6",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:s?(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):(0,n.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),s&&(0,n.jsx)("div",{className:"lg:hidden border-t border-brand-light",children:(0,n.jsxs)("div",{className:"py-4 space-y-4",children:[(0,n.jsx)(a(),{href:"/about",className:"block text-brand-dark hover:text-brand-green transition-colors font-medium",onClick:()=>i(!1),children:"About"}),(0,n.jsxs)("div",{children:[(0,n.jsx)("div",{className:"text-brand-dark font-medium mb-2",children:"Services"}),(0,n.jsx)("div",{className:"pl-4 space-y-2",children:k.map(e=>(0,n.jsx)(a(),{href:e.href,className:"block text-brand-dark hover:text-brand-green transition-colors",onClick:()=>i(!1),children:e.name},e.id))})]}),(0,n.jsx)(a(),{href:"/projects",className:"block text-brand-dark hover:text-brand-green transition-colors font-medium",onClick:()=>i(!1),children:"Projects"}),(0,n.jsx)(a(),{href:"/blog",className:"block text-brand-dark hover:text-brand-green transition-colors font-medium",onClick:()=>i(!1),children:"Blog"})]})})]})})}},6375:(e,t,s)=>{s.d(t,{default:()=>l});var n=s(5338),r=s(3174),i=s.n(r),a=s(6754),o=s(618);function l(e){let{variant:t="primary",size:s="md",children:r,className:l="",as:c="button",href:d,scramble:m=!1,...u}=e,p=(0,a.useRef)(null),g="string"==typeof r?r:"",{handleMouseEnter:h}=(0,o.QG)(p,g),f="".concat("inline-block rounded-full font-light transition-colors"," ").concat({primary:"bg-brand-green text-brand-dark hover:bg-opacity-90",secondary:"border-2 border-brand-green text-brand-green hover:bg-brand-green hover:text-brand-dark",coral:"bg-brand-coral text-brand-dark hover:bg-opacity-90",dark:"bg-brand-dark text-brand-white hover:bg-opacity-90",white:"bg-white text-brand-dark hover:bg-brand-light"}[t]," ").concat({sm:"px-4 py-2 md:px-5 md:py-2 text-sm md:text-sm",md:"px-6 py-3 md:px-8 md:py-4 text-base md:text-lg",lg:"px-8 py-4 md:px-10 md:py-5 text-lg md:text-xl"}[s]," ").concat(l),b=m?(0,n.jsx)("span",{ref:p,onMouseEnter:h,children:r}):r;return"link"===c&&d?(0,n.jsx)(i(),{href:d,className:f,...u,children:b}):(0,n.jsx)("button",{className:f,...u,children:b})}}}]);

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.