NuxtShop - A highly-customizable, open-source starter kit for building headless Shopify stores with Nuxt 3

Related tags

Scaffold nuxtshop
Overview
NuxtShop

Introduction

NuxtShop is a highly-customizable, open-source starter kit for building headless Shopify stores with Nuxt 3. It comes out of the box with a great developer experience and in-built performance practices as a foundation for a production-quality eCommerce site.

Excerpt

The fallout of the Covid-19 pandemic on eCommerce resulted in a meteoric rise in brand revenue and incremental sales. Universal Standard, the world’s most size-inclusive fashion brand, migrated to a headless Shopify storefront with Nuxt.js, running on Layer0. Not only has the clothing company seen a 200% lift in mobile conversion rate and highest revenue day to date with the migration, but the team velocity has improved dramatically.

NuxtShop is a distillation of how Universal Standard architected the migration and solved for key challenges in headless commerce including:

  • Cross-domain communication for cart management
  • Optimization for Core Web Vitals
  • Apollo client and GraphQL API caching ( coming soon )
  • Real-time CDN data synchronization
  • Developer productivity
  • Performance optimization
  • Seamless migration and proven techniques for server-side rendering (SSR), caching, performance optimization, and deployments with an emphasis on developer experience
  • Sensible defaults for deployment on Layer0

What NuxtShop Is

NuxtShop is an open source starter kit for developing headless eCommerce on Shopify with Vue 3, Nuxt 3, Apollo, Tailwind 3, and Pinia. It allows you to use the latest technologies like Nuxt3 and Tailwind 3, with less dependencies for a performant ecommerce site. If you’ve written any Nuxt at all, you will be right at home with NuxtShop.

NuxtShop:

  • is a lightweight starting point.
  • has configurations to help you be productive quickly.
  • has minimally styled components with basic functionality ready to extend.
  • is opinionated, but not prescriptive.
  • provides a starting point for Nuxt + shopify eCommerce at the edge with Layer0.
  • has basic eCommerce functionality with a structure that encourages great development practices.
  • is made for developers embarking on headless Shopify eCommerce with Nuxt.

What NuxtShop Isn’t

NuxtShop is not:

  • a shopify theme.
  • a full-featured, plug and play solution/production ready store.
  • a design system.
  • tightly coupled to any one tool - swap out what you want, add what you need.

Technologies

NuxtShop uses the following technologies:

Features/Benefits

  • Easy to setup/get started.
  • Only necessary packages required to run.
  • Customizable — minimal styling out of the box.
  • Cart.
  • Shopify checkout.
  • 1-click deploy to Layer0 with features like Real User Monitoring

We recommend to look at the documentation.

Getting Started

Make sure to install the dependencies

yarn install

Development

Start the development server on http://localhost:3000

yarn dev

Production

Build the application for production:

yarn build

Checkout the deployment documentation.

Requirements

  • Node14 LTS (14.18 recommended)

Recommendations

  • VSCode Extensions
    • Vetur
    • Tailwind intellisense for class autocomplete
  • Prettier
  • Eslint

Shopify Setup

App Setup

  • rename .env.sample to .env
  • Add your Shopify Access Token and *.myshopify url to the .env variables

Limitations

Because NuxtShop is built in the open and on the bleeding-edge, there are a few limitations to be aware of:

  1. NuxtShop is built on Nuxt3 which at this time is still officially in beta
  2. NuxtShop uses the new Shopify Cart API which does not support Shopify Scripts on Plus yet. To use scripts, you can adjust to the Checkout API
You might also like...
Vue.js Ui Kit Starter pack

Starter pack for creating ui kit on Vue.js

Salvia-kit dashboard template v8 with Nuxt.js
Salvia-kit dashboard template v8 with Nuxt.js

Salvia-kit dashboard template v8 with Nuxt.js

Customizable and advanced Vue.js starter pack 🚀

VueKickoff This template should help get you started developing with Vue 3 in Vite. Recommended IDE Setup VSCode + Volar (and disable Vetur) + TypeScr

Vue-typescript-starter-project - Vue3, Vuex, Vue-router starter project using typescript

Vue Typescript Starter Project Project setup npm install Compiles and hot-reloads for development npm run serve Compiles and minifies for production

Elucidator blog starter - a starter blog built with Vuejs 3, Vite, and Typescript
Elucidator blog starter - a starter blog built with Vuejs 3, Vite, and Typescript

Elucidator blog starter Blog starter build with Vue 3 + Vite + Typescript

A highly opinionated Vue 2.0 template.
A highly opinionated Vue 2.0 template.

VueCharged Template An opinionated feature-first Vue 2.0 template with CLI scaffolding superpowers. Key Features Features First! Each component create

Vuejs3-solana-boilerplate - An open-source boilerplate to connect your frontend to the Solana network using VueJS 3 with Typescript
A practical starter template for Nuxt, which has Tailwind, FontAwesome, and Google fonts already built-in. Also, some common components are ready for use.

Nuxt Template Nuxt + Tailwind + FontAwesome + Google Fonts This project includes a complete ready-to-go template of Nuxt, including Tailwind CSS, Font

Starter template for parallax effects & smooth scrolling experience. Empower your Nuxt project in no time.
Starter template for parallax effects & smooth scrolling experience. Empower your Nuxt project in no time.

Starter template for parallax effects & smooth scrolling experience. Empower your Nuxt project in no time.

Comments
  • Small details

    Small details

    Hi, congrats for this boilerplate !! You can change the env sample with the .myshopify.com/api/2022-07/graphql.json adress I've tested with vueuse/use ^9.1.1 and it works fine, you can change your package

    Dependency error with graphQl and apollo-cache-inmemory : had to --force the install, maybe you should precise it in the doc.

    npm WARN Could not resolve dependency:
    npm WARN peer graphql@"^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0" from [email protected]       
    npm WARN node_modules/apollo-cache-inmemory
    npm WARN   dev apollo-cache-inmemory@"^1.6.6" from the root project
    
    opened by Joaojack 0
  • Contact

    Contact

    Hey, i am really interested in your project and i want to know about it more.
    here is my email, you can contact me there if you are also interested in talking about it [email protected]

    opened by ritikagarwal231 0
Owner
null
Nuxt3 (Nuxt 3) best starter repo, Tailwindcss, Sass, Headless UI, Vue, Pinia, Vite

Nuxt 3 Starter We recommend to look at the documentation. Preview Deploy your own This starter template also includes: Tailwind CSS v3.0.0-alpha ⚠ Hea

Mehmet 386 Dec 28, 2022
This is a Nuxt 3 Starter Kit with Vite, Vue 3, TypeScript, SCSS and TailwindCSS!

Nuxt 3 Starter Kit This is a Nuxt 3 Starter Kit with Vite, Vue 3, TypeScript, SCSS and TailwindCSS! We recommend to look at the documentation. Setup M

Ricardo 17 Nov 19, 2022
Nuxt Starter Kit - an opinionated boilerplate based off of Nuxt3

Nuxt.js 3 + Supabase starter for Typescript lovers Nuxt Starter Kit is an opinionated boilerplate based off of Nuxt3(beta), with all the bells and whi

Elia 4 May 21, 2022
Vue Now UI Kit It: a beautiful UI kit featuring over 50 elements and 3 templates

Vue Now UI Kit Vue Now UI Kit It is a beautiful cross-platform UI kit featuring

null 1 May 24, 2022
An open source starter solution for organizations to add a customer portal to their FileMaker database. Supports taking credit card payments online.

Customer Portal Starter Solution About this portal This portal was created by Blue Feather. It was designed both as a starting point for us to use wit

Blue Feather 9 Feb 4, 2022
Nuxt3-awesome-starter - A Nuxt 3 starter template or boilerplate with a lot of useful features. Nuxt3 + Tailwindcss 3

Nuxt 3 Awesome Starter a Nuxt 3 starter template or boilerplate with a lot of us

Alfian Dwi Nugraha 663 Jan 2, 2023
A Vue.js starter kit that lets you focus on more programming and less configuration.

vue-starter A Vue.js starter kit that lets you focus on more programming and less configuration. A full-featured Webpack setup with hot-reload, lint-o

Rohit Rai 54 Sep 26, 2022
A starter kit for Element Plus with Vite

element-plus-vite-starter A starter kit for Element Plus with Vite Preview: https://vite-starter.element-plus.org This is an example of on-demand elem

EvisuXiao 0 Nov 30, 2021
A starter kit for Element UI generated by vue-cli

element-starter A starter kit for Element UI generated by vue-cli If you are familiar with cooking, here is a starter generated with it Environment No

null 0 Dec 31, 2021
A starter-kit for TDesign UI components.

TDesign Starter 项目简介 TDesign Starter 基于 TDesign UI 组件,旨在提供项目开箱即用的、配置式的并且拥有开发体验和设计感的中后台的项目。 设计美学 基于 TDesign UI 设计规范 提供 Figma、 Sketch、 Adobe XD、 Axure 等

TDesign 3 Dec 11, 2021