Shopware Ecommerce Store with Nuxt

R
Renaudil y a 2 jours
0

Description

A reference ecommerce store implementation using Shopware, Nuxt 3, and Tailwind CSS.

npx boilerapp shopware-nuxt-ecommerce

文档

Demo template (Nuxt)

Shopware Frontends

This repository is an example demo application built with Shopware Frontends Framework and Nuxt 3.

Interactive preview:

Open in StackBlitz

Deploy with Vercel:

Deploy with Vercel

What's inside

  • Nuxt 3 application
  • Required libraries (API client, CMS components, composables, Nuxt 3 module)
  • Pre-configured demo Shopware 6 API

Requirements

Go to Documentation > Requirements to see the details.

Set up your Shopware 6 instance

To connect to a different API, adjust the API credentials in the nuxt.config.ts file:

Shopware:{endpoint and accessToken}.

Install & Run

  1. pnpm i to install dependencies
  2. pnpm dev to run the project with the development server

Generate your own API types

By default API types are delivered from our demo instance. To generate your own types use @shopware/api-gen CLI.

  1. update .env file with your Shopware API information
  2. load JSON schema from your instance pnpx @shopware/api-gen loadSchema --apiType=store --filename=storeApiSchema.json
  3. generate types pnpx @shopware/api-gen generateTypes --filename=storeApiSchema.json

[!NOTE] Do not edit your storeApiSchema.d.ts file. It will be overwritten on the next schema generation. Instead use your shopware.d.ts file to extend types.

Styling and Shopping Experiences integration

This tempalte uses UnoCSS for styling, which is a utility-first CSS framework. It is configured to use the Tailwind CSS classes.

The template also includes a CMS Base nuxt layer to provide the CMS components for Shopping Experiences integration. The layer is registered in the nuxt.config.ts file. In order to override the default Tailwind CSS configuration, you can create your own uno.config.ts file in the root of your project and extend the default configuration.

Production

Refer to to the Shopware documentation for best practices on deploying a production JavaScript application with Shopware: Best Practices > Deployment

Running the application with Node.js

Execute the build script to build the application:

pnpm build

# or npm run build
# or yarn build

Execute the start script to run the application:

pnpm start

# or npm run start
# or yarn start

Running Composable Frontends with Docker

Have a look at the docker-composable-frontends repository.

[!NOTE] We recommend using a local Shopware 6 development instance (devenv) and then configuring Composable Frontends to use your local instance.

Nitro presets

More information on generating different outputs can be found here. Our recommendation is to use .env file for changing platform presets

Vercel serverless functions and ISR

There is an issue with Vercel serverless functions and ISR for catch-all route and dynamic data that depends on GET query parameters.

To fix it, you need to do one of the following:

  • disable isr for the catch-all route:

      // nuxt.config.ts
      routeRules: {
        "/**": {
          isr: false
        },
      }
    
  • switch to vercel-edge platform by setting the corresponding preset:

    # package.json build script
    NITRO_PLATFORM=vercel-edge pnpm build
    

    or set the NITRO_PLATFORM env right in vercel dashboard.

Prix

Gratuit

FREE

评论 (0)

常见问题

常见问题解答 (FAQ)

有问题?我们有答案。如果您找不到想要的答案,请随时联系我们。

Boilerapp 是一个专门用于分享 Boilerplates、入门套件(Starter Kits)和项目模版的开发者社区平台。我们的目标很简单:为您节省初始配置(Setup)的时间,让您可以专注于真正重要的代码。无论您是在寻找简单的代码库还是完整的 SaaS 项目,都能在这里找到。

还有其他问题?

我们的团队随时为您提供帮助。联系我们,我们将尽快回复。