{"id":15063125,"url":"https://github.com/hubblecommerce/hubble-frontend-pwa","last_synced_at":"2025-04-05T20:01:58.535Z","repository":{"id":40351742,"uuid":"206510236","full_name":"hubblecommerce/hubble-frontend-pwa","owner":"hubblecommerce","description":"E-Commerce PWA Storefront - Shopware 6 Nuxt.JS Storefront","archived":false,"fork":false,"pushed_at":"2025-03-27T09:25:58.000Z","size":10483,"stargazers_count":59,"open_issues_count":6,"forks_count":18,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-03-29T19:01:11.760Z","etag":null,"topics":["ecommerce","ecommerce-platform","headless","javascript","magento","magento2","nuxt","nuxt3","nuxt3-module","nuxtjs","performance","pwa","shopping-cart","shopware","shopware6","storefront","typescript","vue","vue3","vuejs"],"latest_commit_sha":null,"homepage":"https://www.hubblecommerce.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hubblecommerce.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-05T08:11:11.000Z","updated_at":"2025-03-26T13:31:06.000Z","dependencies_parsed_at":"2023-12-18T16:19:53.672Z","dependency_job_id":"4b07d1f6-d136-4792-bd16-a24cf261738c","html_url":"https://github.com/hubblecommerce/hubble-frontend-pwa","commit_stats":{"total_commits":1374,"total_committers":15,"mean_commits":91.6,"dds":0.4461426491994177,"last_synced_commit":"1650697e7125aa3b5efa5e1dc3e64133e59e32d1"},"previous_names":[],"tags_count":78,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubblecommerce%2Fhubble-frontend-pwa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubblecommerce%2Fhubble-frontend-pwa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubblecommerce%2Fhubble-frontend-pwa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hubblecommerce%2Fhubble-frontend-pwa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hubblecommerce","download_url":"https://codeload.github.com/hubblecommerce/hubble-frontend-pwa/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247393547,"owners_count":20931811,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ecommerce","ecommerce-platform","headless","javascript","magento","magento2","nuxt","nuxt3","nuxt3-module","nuxtjs","performance","pwa","shopping-cart","shopware","shopware6","storefront","typescript","vue","vue3","vuejs"],"created_at":"2024-09-24T23:51:43.686Z","updated_at":"2025-04-05T20:01:58.508Z","avatar_url":"https://github.com/hubblecommerce.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cbr\u003e\n\n\u003cimg src=\"https://docs.hubblecommerce.io/assets/images/hubblelogo.svg\" style=\"height:50px\" /\u003e\n\n# Headless E-Commerce Interface\n\u003e Progressive Web App for your e-commerce platform based on [Nuxt.js](https://nuxtjs.org/)\n\n- [x] An open source project\n- [x] Installable as a Nuxt.js Module\n- [x] Compatible with Shopware 6\n- [x] Covers all common e-commerce features\n- [x] Excellent performance and usability\n- [x] Toolbox / framework for creating your own shop frontend\n\n## Documentation\nRun `npm run docs:dev` to see the developer documentation or take a look at `/docs`. \u003c/br\u003e\nOr visit the documentation online at [docs.hubblecommerce.io](https://docs.hubblecommerce.io/).\n\n[![hubble PWA Introduction for Developers on YouTube](https://img.youtube.com/vi/V11Wo0h7j_8/0.jpg)](https://www.youtube.com/watch?v=V11Wo0h7j_8)\n\n## Links\n[Demo](https://hubble-pwa-demo.vercel.app/) |\n[Website](https://www.hubblecommerce.io/de)\n\n## Table of contents\n- [Prerequisites](#prerequisites)\n- [Installation](#installation)\n- [Features](#features)\n- [Performance](#performance)\n- [SEO friendly](#seo-friendly)\n- [PWA](#pwa)\n- [Specialized in Shopware 6](#specialized-in-shopware-6)\n- [Roadmap](#roadmap)\n- [Contributing](#contributing)\n- [Support](#support)\n- [Stay updated](#stay-updated)\n- [Meta](#meta)\n\n## Prerequisites\nThis guide focuses on installing hubble PWA as a Nuxt.js module only,\nso before moving on, make sure you meet the [requirements](/pwa/what/requirements.html) first.\n\n## Installation\n\n1. Create a new Nuxt 3 Project\n```sh\nnpx nuxi init nuxt-app\ncd nuxt-app\nnpm install\n```\n\n2. Install the hubble Nuxt module\n```sh\nnpm i @hubblecommerce/hubble\n```\n\n3. Add the module to nuxt.config.ts\n```js\nmodules: ['@hubblecommerce/hubble']\n```\n\n4. Create a .env file in project root and fill credentials\n```sh\nAPI_SW_ACCESS_KEY = ''\nAPI_BASE_URL      = ''\n```\n::: tip\nRead more about where to get the credentials in the [supported e-commerce platforms](/pwa/what/requirements.html#supported-e-commerce-platforms) section.\n:::\n\n### Build modes\n\n#### Development\n\n```sh\nnpm run dev\n```\n\n#### Production\n\n```sh\nnpm run build\nnode .output/server/index.mjs\n```\n\n## Features\nhubble PWA is a Nuxt.js module.\nThat means it relies on all the great features of Nuxt.js like:\n- All benefits of Vue 3 and Nuxt 3\n- Server Side Rendering\n- Dynamic Routing\n- Code-Splitting\n- Module Ecosystem (Composables)\n- Intuitive Developer Experience\n- Runtime Configuration\n\nand enriches them to meet the demanding requirements of an e-commerce interface like:\n- [Shop connector](/pwa/architecture/shop-connection.html) including an API client and data mapping (headless)\n- [File-based inheritance (Theming)](/pwa/architecture/filebasedinheritance.html)\n- [E-commerce optimized components](/pwa/architecture/components.html) like catalog, customer, checkout etc.\n- [Integration path for shop-plugins (Compatibility Plugins)](/pwa/shopware/shopwareplugins.html)\n\nThis way hubble PWA can always be up-to-date to the fast-growing Nuxt.js ecosystem.\n\n## Performance\nWe aim for an intuitive and smooth interface experience no matter how many features you build in your shop.\nHow we do it:\n- everything that's not necessary for SEO purposes will be loaded lazily via chunking and dynamic imports\n- uses as less global code as possible, everything is a Single-File-Component\n- uses only relevant parts of a CSS framework (Tailwind CSS)\n- measure performance with Google Lighthouse\n\n## SEO friendly\nAll content that is relevant for SEO purposes will be rendered server-side thanks to Nuxt.js universal mode.\nThe rest will be loaded lazily to improve performance. \u003cbr\u003e\n\nWe also take care of:\n- Rich Snippets\n- Google Tag Manager\n- Enhanced e-commerce tracking\n\n## PWA\nTo us, a PWA means more than the ability to add your website to home-screen or enable push notifications.\nWe want to make sure the interface actually feels like an intuitive, native app and hand you tools to achieve that like:\n- Excellent performance on mobile devices\n- Mobile first design approach\n- User input feedback via decent animations and transitions\n\nBesides, hubble of course is shipped with a simple service worker for offline support.\nFeel free to adjust it to fit your caching approach needs.\nOther PWA Features like \"Add to Home\" or \"Push Notifications\" can be installed easily\nusing the [official Nuxt.js PWA Module](https://pwa.nuxtjs.org/).\n\n## Specialized in Shopware 6\nBecause hubble PWA was built for Shopware 6 primarily, it supports features like:\n- [Emotion Worlds](/pwa/shopware/shopwareemotion.html)\n- [Shopware Plugins via Compatibility Plugins](/pwa/shopware/shopwareplugins.html)\n- [Shop configuration](/pwa/shopware/shopwareplugins.html#how-do-i-access-my-plugin-configurations)\n\n## Roadmap\nThanks to the headless approach hubble is not tied to Shopware only,\nso we are constantly working on connecting other e-commerce frameworks.\nSee our detailed [roadmap](/pwa/what/roadmap.html) for further information.\n\n## Contributing\n\nSpecific instructions for pull requests can be found [here](pwa/contribution/contributionpwa.md).\n\n## Support\n\nIf you like the hubble PWA, feel free to contribute and spread the word on social media.\nAlso don't forget to give us a star on Github.\n\n## Stay updated\n\nIf you like to receive updates about updates and the latest releases just click on \"watch\" and select the information\nyou like to get noticed about.\n\n## Meta\n\ndigital.manufaktur GmbH – hallo@digitalmanufaktur.com\n\nDistributed under the MIT license. See [LICENSE](https://github.com/hubblecommerce/hubble-frontend-pwa/blob/main/LICENSE) for more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhubblecommerce%2Fhubble-frontend-pwa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhubblecommerce%2Fhubble-frontend-pwa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhubblecommerce%2Fhubble-frontend-pwa/lists"}