[{"data":1,"prerenderedAt":479},["ShallowReactive",2],{"site:en":3,"entry:en:services:\u002Fservices\u002Fmigration":60,"services:compact:en":441},{"id":4,"bookingLabel":5,"bookingUrl":6,"cards":7,"contact":10,"ctaLabel":19,"extension":20,"footer":21,"form":24,"legal":36,"meta":40,"nav":41,"stem":54,"teamStats":55,"__hash__":59},"site_en\u002Fen\u002Fdata\u002Fsite.yml","Book a 30-min call","https:\u002F\u002Fcalendar.proton.me\u002Fu\u002F1\u002Fbookings#T4kfYSyNbRUyRRyXSdY7y_GGMPRBvDki7BAF0PsBmnE=",{"readCase":8,"explore":9},"Read the case","Explore",{"label":11,"heading":12,"intro":13,"replyNote":14,"successTitle":15,"successBody":16,"errorBody":17,"unavailableBody":18},"Contact","What’s your next move?","Tell us what you’re building, or where things are stuck.","We reply within one working day. Prefer to talk?","Thanks, message received.","Ignatius or Kirils will reply within one working day.","Your message didn’t send. Please try again in a moment.","The contact form isn’t open yet. Please check back soon.","Let’s talk","yml",{"company":22,"locations":23},"Nikulsons & Co.","UK · Malta · Latvia · Estonia · Remote",{"nameLabel":25,"namePlaceholder":26,"emailLabel":27,"emailPlaceholder":28,"companyLabel":29,"companyOptional":30,"companyPlaceholder":31,"messageLabel":32,"messagePlaceholder":33,"submitLabel":34,"submittingLabel":35},"Name","Your name","Email","you@company.com","Company","(optional)","Company name","What are you building, or where are things stuck?","A product, a process to automate, a stuck project. A few lines is plenty.","Send message","Sending…",[37],{"label":38,"to":39},"Privacy notice","\u002Fprivacy",{},[42,45,48,51],{"label":43,"to":44},"Work","\u002Fwork",{"label":46,"to":47},"Services","\u002Fservices",{"label":49,"to":50},"Industries","\u002Findustries",{"label":52,"to":53},"Studio","\u002F#studio","en\u002Fdata\u002Fsite",{"total":56,"countries":57,"note":58},21,12,"core team & freelancers","QJcb3tt7TOmvSEOxqBaaLqAQmHhdy_9Cf35QOOswVKc",{"id":61,"title":62,"audience":63,"audienceCard":64,"body":65,"chips":407,"claim":420,"description":421,"detail":422,"engagementLine":423,"extension":424,"headline":425,"highlight":428,"icon":90,"illustration":429,"layout":430,"meta":431,"name":62,"navigation":428,"numbered":428,"offer":432,"ogImage":435,"order":436,"path":437,"seo":438,"shortName":62,"stem":439,"__hash__":440},"services_en\u002Fservices\u002Fmigration.md","Legacy website migration","Sites outgrowing a legacy CMS","Sites outgrowing WordPress, WooCommerce or a legacy CMS",{"type":66,"value":67,"toc":404},"minimark",[68,112,151,186,227,292,338,394],[69,70,74,82,88,93,104],"section-hero-detail",{"link":71,"linklabel":72,"seeds":73},"#process","See how it runs","3.1 5.4 7.2",[75,76,78],"hero-meta",{"icon":77},"swap",[79,80,81],"p",{},"Fixed-price migration · from €15k",[75,83,85],{"icon":84},"chart-line-up",[79,86,87],{},"Content and SEO carried over",[75,89,91],{"icon":90},"browsers",[79,92,63],{},[94,95,97],"template",{"v-slot:title":96},"",[79,98,99,100],{},"Let’s move you ",[101,102,103],"em",{},"off legacy.",[94,105,106],{"v-slot:lede":96},[79,107,108,109],{},"Your website shouldn’t be a black box. ",[101,110,111],{},"We move WordPress, WooCommerce and other legacy sites to Astro with EmDash CMS, or fully custom Next.js and Nuxt.",[113,114,116,123,129,135,143],"section-problem",{"label":115},"The problem",[117,118,120],"pain-point",{"title":119},"Every change waits on a developer",[79,121,122],{},"Each banner, landing page and locale update is a ticket in someone’s backlog. Campaigns ship late or not at all.",[117,124,126],{"title":125},"Every brand sits on a different CMS",[79,127,128],{},"Each team rebuilds the same components, workflows and integrations in parallel. Governance drifts, updates diverge and every rollout gets harder.",[117,130,132],{"title":131},"Every year it costs more to run",[79,133,134],{},"Renewals, maintenance and specialist support keep adding cost without improving how teams publish. The cost of standing still becomes its own migration case.",[94,136,137],{"v-slot:title":96},[79,138,139,140],{},"The site got big. ",[101,141,142],{},"The platform didn’t keep up.",[94,144,145],{"v-slot:statement":96},[79,146,147,148],{},"Years of plugins, themes and one-off patches have turned the site into something nobody fully understands. ",[101,149,150],{},"It still works, but every change is slow, risky and more expensive than the last.",[152,153,155,167,178],"section-stack",{"label":154},"Where we move you",[156,157,164],"option-card",{":links":158,":rows":159,"icon":160,"label":161,"meta":162,"title":163},"[{\"label\":\"astro.build\",\"href\":\"https:\u002F\u002Fastro.build\u002F\"},{\"label\":\"emdashcms.com\",\"href\":\"https:\u002F\u002Femdashcms.com\u002F\"}]","[{\"label\":\"Best for\",\"value\":\"Marketing sites, content hubs, multi-brand and multi-locale estates\"},{\"label\":\"Editors get\",\"value\":\"A visual admin with previews, scheduling and roles\"},{\"label\":\"Plugins\",\"value\":\"Sandboxed, which limits the damage one bad plugin can do\"},{\"label\":\"Hosting\",\"value\":\"Cloudflare, Netlify, Vercel or your own servers\"}]","article","Content-led sites","Option A","Astro + EmDash CMS",[79,165,166],{},"Fast, content-first pages on Astro, managed in EmDash, the open-source CMS from Cloudflare built as a modern alternative to WordPress.",[156,168,175],{":links":169,":rows":170,"icon":171,"label":172,"meta":173,"title":174},"[{\"label\":\"nextjs.org\",\"href\":\"https:\u002F\u002Fnextjs.org\u002F\"},{\"label\":\"nuxt.com\",\"href\":\"https:\u002F\u002Fnuxt.com\u002F\"}]","[{\"label\":\"Best for\",\"value\":\"Shops, portals and logged-in experiences\"},{\"label\":\"Built with\",\"value\":\"Next.js (React) or Nuxt (Vue)\"},{\"label\":\"Content\",\"value\":\"A headless CMS that fits your team\"},{\"label\":\"Hosting\",\"value\":\"Vercel, Netlify, Cloudflare or your own cloud\"}]","code","Products & commerce","Option B","Custom Next.js or Nuxt",[79,176,177],{},"A fully custom front end in React or Vue, connected to the CMS, shop and services you already rely on.",[94,179,180],{"v-slot:title":96},[79,181,182,183],{},"Two ways off legacy. ",[101,184,185],{},"Both yours to own.",[187,188,190,198,205,212,219],"section-numbered",{"label":189},"What you get",[191,192,195],"numbered-card",{"icon":193,"title":194},"list-magnifying-glass","Audit & migration plan",[79,196,197],{},"Every page, plugin, integration and URL mapped, with the right stack recommended for your site.",[191,199,202],{"icon":200,"title":201},"squares-four","Component library",[79,203,204],{},"Reusable blocks your teams build pages from, shared across every brand and locale.",[191,206,209],{"icon":207,"title":208},"database","Content & SEO carried over",[79,210,211],{},"Posts, products, media and metadata moved by script, with every old URL redirected or deliberately retired.",[191,213,216],{"icon":214,"title":215},"pencil-simple-line","Editor-ready CMS",[79,217,218],{},"Roles, workflows, previews and scheduling set up, so publishing stops waiting on developers.",[94,220,221],{"v-slot:title":96},[79,222,223,224],{},"Every URL mapped. ",[101,225,226],{},"Every page checked.",[228,229,232,249,264,279,287],"section-process",{"label":230,"outcometitle":231},"How it runs","Handover",[233,234,236,243],"phase",{"label":235},"Phase 1",[237,238,240],"step",{"title":239},"Audit",[79,241,242],{},"Content inventory, plugin and integration review, plus a traffic and SEO baseline.",[237,244,246],{"title":245},"Plan",[79,247,248],{},"Stack choice, content model and a redirect map for every URL.",[233,250,252,258],{"label":251},"Phase 2",[237,253,255],{"title":254},"Build",[79,256,257],{},"Components, templates and the CMS set up, shown in weekly demos.",[237,259,261],{"title":260},"Migrate",[79,262,263],{},"Content imported by script, then checked page by page against the old site.",[233,265,267,273],{"label":266},"Phase 3",[237,268,270],{"title":269},"Launch",[79,271,272],{},"Redirects live and traffic switched over, with the old site on standby for rollback.",[237,274,276],{"title":275},"Train",[79,277,278],{},"Hands-on sessions for editors and documentation for developers.",[94,280,281],{"v-slot:title":96},[79,282,283,284],{},"A controlled move, ",[101,285,286],{},"with rollback ready.",[94,288,289],{"v-slot:outcome":96},[79,290,291],{},"A fast site your team runs without tickets, code you own and no licence lock-in. We stay on for support or hand over to your developers.",[293,294,296,306,314,322,330],"section-engagement",{"label":295},"Engagement",[297,298,303],"fact",{"icon":299,"label":300,"value":301,"meta":302},"receipt","Price","€15k","From",[79,304,305],{},"For a single site, scoped and fixed after the audit; larger estates are scoped in stages. Hosting and licences are charged separately.",[297,307,311],{"icon":308,"label":309,"value":310},"calendar","Timeline","6–12 weeks",[79,312,313],{},"From kick-off to launch for most sites. Multi-brand estates move in waves.",[297,315,319],{"icon":316,"label":317,"value":318},"chats-circle","Format","Weekly demos",[79,320,321],{},"A live preview of the new site from the first sprint, not a reveal at the end.",[94,323,324],{"v-slot:title":96},[79,325,326,327],{},"Fixed scope, ",[101,328,329],{},"fixed price.",[94,331,332],{"v-slot:note":96},[79,333,334,335],{},"Not sure where to start? ",[101,336,337],{},"Send us your URL and we’ll take a look.",[339,340,342,349,355,361,367,373,379,384],"section-faq",{"label":341},"Questions",[343,344,346],"faq-item",{"question":345},"Will we lose our search rankings?",[79,347,348],{},"Any move carries some search risk. Careful planning reduces it: we map every old URL to the right destination, carry over titles and metadata, test the redirects and crawl the new site before launch, and watch search traffic in the weeks after.",[343,350,352],{"question":351},"Can the current site stay live during the move?",[79,353,354],{},"Yes. The old site keeps running until the new one is built and tested. For shops, orders, customers and products get a final sync just before the switch.",[343,356,358],{"question":357},"Astro and EmDash, or custom Next.js and Nuxt?",[79,359,360],{},"Content-led sites usually fit Astro with EmDash best. Shops, portals and anything with accounts or complex logic suit a custom Next.js or Nuxt build. We recommend one in the audit.",[343,362,364],{"question":363},"Do our editors need to learn code?",[79,365,366],{},"No. Editors get a visual admin with previews, scheduling and roles. Developers only step in for new components, not new pages.",[343,368,370],{"question":369},"What happens to all our plugins?",[79,371,372],{},"We list every plugin and what it actually does. Most become built-in features or a few lines of code; the rest become proper integrations.",[343,374,376],{"question":375},"Do you only migrate from WordPress?",[79,377,378],{},"No. We also move sites off Drupal, Joomla, Magento, Sitecore and in-house CMSs. If the content can be exported, we can usually move it. Custom features are reviewed in the audit.",[94,380,381],{"v-slot:title":96},[79,382,383],{},"Questions, answered.",[94,385,386],{"v-slot:intro":96},[79,387,388,389],{},"Something else on your mind? ",[390,391,393],"a",{"href":392},"#contact","Ask us directly.",[395,396,399],"section-other-services",{"label":397,"linklabel":398},"Other services","All services",[94,400,401],{"v-slot:title":96},[79,402,403],{},"Other ways we help.",{"title":96,"searchDepth":405,"depth":405,"links":406},2,[],[408,411,414,417],{"label":409,"logo":410},"Astro","\u002Flogos\u002Ftech\u002Fastro.svg",{"label":412,"logo":413},"EmDash CMS","\u002Flogos\u002Ftech\u002Femdash.svg",{"label":415,"logo":416},"Next.js","\u002Flogos\u002Ftech\u002Fnextjs.svg",{"label":418,"logo":419},"Nuxt","\u002Flogos\u002Ftech\u002Fnuxt.svg","Move to a stack your team can run without tickets.","Your website shouldn’t be a black box. We move WordPress, WooCommerce and other legacy sites to Astro with EmDash CMS, or fully custom Next.js and Nuxt.","Astro with EmDash CMS, or fully custom Next.js and Nuxt.","Fixed-price migration · 6–12 weeks","md",{"lead":426,"accent":427},"Your website shouldn’t be a black box.","Let’s move you off legacy.",true,"migrate","wide",{},{"price":433,"currency":434,"from":428},15000,"EUR","\u002Fog\u002Fservices-migration.png",7,"\u002Fservices\u002Fmigration",{"title":62,"description":421},"services\u002Fmigration","qOqKQuDBczlLWr7Dg7tjbTXKqcIp9YCSTY9Sl7l-e3A",[442,448,454,460,466,472,478],{"path":443,"name":444,"audience":445,"icon":446,"engagementLine":447},"\u002Fservices\u002Fpitch-deck","Pitch deck & product concept","Founders shaping an idea or preparing to raise","lightbulb","Fixed-price sprint · 4 weeks",{"path":449,"name":450,"audience":451,"icon":452,"engagementLine":453},"\u002Fservices\u002Fmvp","MVP design & development","Funded teams ready to launch","rocket-launch","Fixed price or dedicated team",{"path":455,"name":456,"audience":457,"icon":458,"engagementLine":459},"\u002Fservices\u002Fux-audit","UX audit & product discovery","Live products losing users or momentum","magnifying-glass","Fixed-price sprint · 2–3 weeks",{"path":461,"name":462,"audience":463,"icon":464,"engagementLine":465},"\u002Fservices\u002Frebuild","Product rebuild & redesign","Mature products hitting a growth ceiling","trend-up","Fixed-price phases · design and dev",{"path":467,"name":468,"audience":469,"icon":470,"engagementLine":471},"\u002Fservices\u002Fproduct-team","Dedicated product team","Scale-ups & enterprise","buildings","Monthly team · 30-day notice",{"path":473,"name":474,"audience":475,"icon":476,"engagementLine":477},"\u002Fservices\u002Fai-automation","AI automation","Teams buried in manual work","lightning","Fixed-price pilot, then scale",{"path":437,"name":62,"audience":63,"icon":90,"engagementLine":423},1792071976003]