Websites and web apps built with Vue 3 and Nuxt
Websites, web apps and customer portals built with Vue 3 and Nuxt, rendered on the server so search engines can read them. We also move Vue 2 and Nuxt 2 code, which no longer gets fixes, onto Vue 3, step by step and without stopping the app.
We reply within one working day. 020 3540 5048
Problems you shouldn't have to live with
A Vue 2 app on borrowed time
Vue 2 reached end of life on 31 December 2023 and Nuxt 2 on 30 June 2024. Your app still runs, but libraries are dropping support, security fixes have stopped and every upgrade is harder than the last.
A single-page app search can't see
Your Vue app renders in the browser, so search engines and link previews get an empty page first. Marketing pages that should bring in customers don't rank.
Mixins and a store nobody understands
Logic is spread across mixins, a global event bus and a Vuex store that grew with every feature. Changes take longer than they should and break things in other places.
A team that knows Vue, not React
Your developers know Vue, and agencies keep proposing a React rebuild. You want someone who will work in the framework you already have, and improve it.
How we solve it
- 1
Vue 3 and the Composition API
Components written with script setup and composables, so shared logic lives in one place, reads clearly and is typed with TypeScript.
- 2
Nuxt 3 and 4 for search
Server-side rendering, static generation or a mix per route, so every page arrives as finished HTML with its title, description and structured data, and loads quickly.
- 3
Pinia for state
Pinia, Vue's official store, in place of a sprawling Vuex store: small stores by feature, typed, and easy to test.
- 4
Vite and TypeScript
Fast local builds and hot reload with Vite, and TypeScript across components, stores and API calls, so mistakes show up before they reach users.
- 5
Vue 2 to Vue 3 migration
An audit, a module-by-module plan and the first module migrated, from £3,500, then the rest at a fixed price, with the app working throughout.
- 6
Content your team edits
Nuxt front ends on a headless CMS such as Sanity, Storyblok or Payload, so editors publish pages without a developer.
Technologies we use
Vue 3 Nuxt 3 and 4 Pinia Vite TypeScript Vue Router Vitest Playwright Tailwind CSS Node.js Sanity Storyblok
How we work with Vue
What we build with Vue 3 and Nuxt, and how
We have no published Vue client work to show yet, so this page sets out what we build, how we approach it and what it costs, rather than case studies we can't link to.
- 1
What we build
Company websites and content sites on Nuxt, web apps and dashboards on Vue 3, and customer portals with sign-in and subscriptions. Components use the Composition API with script setup, state lives in Pinia, the build runs on Vite and the code is TypeScript throughout, with Vitest for units and Playwright for the journeys that matter.
You own the code, the hosting and every account from the first week, and the handover is written so another Vue team could pick it up.
- 2
Server-side rendering and static generation for search
A Vue single-page app sends the browser an empty page and builds it with JavaScript, which is fine for a dashboard behind a sign-in and poor for pages that need to be found. Nuxt renders each page on the server or ahead of time, so search engines and link previews get finished HTML with titles, descriptions and structured data.
Nuxt lets each route choose: static for marketing pages and articles, server-rendered for pages that change per visitor, client-side for the app behind the sign-in. We pick per route, not per project.
- 3
Moving Vue 2 and the Options API to Vue 3
Vue 2 reached end of life on 31 December 2023, and Nuxt 2 on 30 June 2024. Neither gets fixes from the Vue project any more, including security fixes. Moving doesn't have to mean a rewrite: Vue 3 still supports the Options API, and Vue's migration build runs most Vue 2 code while it's updated piece by piece.
We start with an audit of your code and dependencies, write a module-by-module plan, and migrate the first module so you see the approach working. Components we touch move to the Composition API and Pinia where that helps; ones that work and rarely change can stay as they are.
- 4
Vue and Nuxt, or React and Next.js: an honest view
Both are good, and for most websites the choice matters less than how well the site is built. We'd recommend Vue and Nuxt when your team already knows Vue, when you have a Vue codebase worth keeping, or when your back end is Laravel, where Vue is a common partner. Rewriting working Vue code in React to suit an agency is rarely money well spent.
We'd recommend React and Next.js when you're starting from nothing and want the largest pool of developers to hire from, when you plan a React Native app that could share code and people, or when your existing code is already React. This site runs on Next.js. Tell us what you have and we'll tell you which we'd choose, and why.
- 5
What it costs
A company website starts at £2,500 and a content-managed site on a headless CMS at £4,500, built with Nuxt or Next.js. Web apps and portals usually land between £15,000 and £50,000, depending on sign-in, billing and integrations. A Vue 2 to Vue 3 migration starts at £3,500 for the audit, the plan and the first module, with the rest quoted at a fixed price after the audit.
You pay a 50% deposit to book the start date and the balance on launch; prices exclude VAT. After launch, Website care from £95 a month keeps a site hosted, updated and secure, and Ongoing development from £1,500 a month gives you reserved build days for a product that keeps growing.
After launch
Keep it working after launch
Websites and apps need looking after once they're live. Ongoing development is the plan most people choose after this, at from £1,500 a month.
Already have an app or site that needs looking after?2 reserved build days a month, more if you need themFits after this
Ongoing development
From £1,500 a month
From £1,500 a month for 2 reserved build days to keep improving your app or web product, with a backlog we prioritise together and a release each month.
What's coveredin Ongoing developmentUp to 1 hour of small edits a month
Website care
£95 a month
We keep your website online, up to date and secure, and make the small changes you need each month.
What's coveredin Website careUp to 3 hours of changes a month
Website care Plus
£195 a month
Everything in Website care, with three hours of changes a month for sites that need new pages, offers or content most months.
What's coveredin Website care PlusUp to 4 hours of changes a month
App care
£550 a month
We keep your app working on each new iOS or Android, passing App Review or Play policy and looking current in the store, with time each month for changes.
What's coveredin App care
Month to month, billed in advance. Cancel with 30 days' notice. Pay yearly for two months free. Prices exclude VAT.
Questions we get asked
A company website starts at £2,500, a content-managed Nuxt site on a headless CMS at £4,500, and web apps or customer portals usually land between £15,000 and £50,000. A Vue 2 to Vue 3 migration starts at £3,500 for the audit, plan and first module. You get a fixed price for an agreed scope before we start.
If your team knows Vue or you have a Vue codebase worth keeping, stay with Vue: a rewrite to suit an agency is rarely worth it. If you're starting from nothing, want the widest hiring pool or plan a React Native app, React and Next.js is often the better fit. We build with both and will tell you which we'd choose for you.
Yes. Nuxt renders pages on the server or ahead of time, so search engines get finished HTML, and it has built-in ways to set titles, descriptions and structured data per page. Ranking still takes good content and time, and nobody can honestly promise a position.
Usually not. Vue 3 still supports the Options API, and Vue's migration build lets most Vue 2 code run while it's updated module by module. We audit first and only recommend a rewrite where moving the old code would cost more than replacing it.
For new projects, Nuxt 4, the current major version. For an existing Nuxt 3 app, the move to 4 is usually small and we plan it as part of normal upkeep. Nuxt 2 apps need a bigger migration, which the audit prices separately.
Yes. We can take a module or a migration off your team's plate, review code, or set up the patterns (Composition API, Pinia, TypeScript, tests) and hand them over. Everything goes into your repository, through your normal reviews.
Where to go next
Related services
React & Next.js Development
Read about React & Next.js DevelopmentWebsites and web apps built with React and Next.js. You get pages that load quickly and can be found in search, content you can edit, and code another team could pick up.
Website Redesign & Modernisation
Read about Website Redesign & ModernisationA rebuild of an old or slow website, with your search rankings kept through the move. You get a faster site that is easier to use on a phone, and content you can update yourself.
SaaS MVP Development
Read about SaaS MVP DevelopmentA first version of your software product with sign-in, billing and the one workflow customers will pay for. You get a live product to test with real users, and code that can grow into the full version.
Ready to talk about your project?
Let's talk about your project and the best way to approach it. No commitment and no pressure, just a conversation about what's possible.
We reply within one working day. Or call 020 3540 5048