We are happy to announce that release candidate for Vue Storefront 1.10 is now ready to test! In this release, despite stabilization and bug fixing, we focused on improving Vue Storefront frontend API layer and expanding possibilities of current features. Even more exciting things happened outside of the code world. Let me walk you through them!
All about Vue Storefront 1.10-RC
Below you can find the gigantic list of around 90 PRs merged with improvements, bug fixes and enhancements made by our community for Vue Storefront 1.10-RC release.
You must admit it’s impressive ;)
- Make installer work for windows — @Flyingmana (#2616)
- “Clear cart” button in the cart — @jablpiotrek (#2587)
- Global config API path under
api.url- @BartoszLiburski (#2622)
- Google Tag Manager integration — @talalus (#841)
- Portuguese (pt-PT) translation — @xlcnd (#2695)
- Module Mailchimp is removed in favor of more generic Newsletter — @mdesmet (#2558)
elasticCacheQuotalowered to 3096KB - @pkarw (#2729)
- Back-button on order detail page [#2819]
- Elastic Search Suggestions in the Search Response — @jpetar (#2853)
- Linting for typescript files @ResuBaka (#2843)
- Back to top functionality — @vishal-7037 (#2866)
- Thumbnail sizes are now configurable within the
config.cart.thumbnails- @pkarw (#2897)
- In multistore mode, it’s now possible to configure multiple instances with different hosts, not only the paths — @lukeromanowicz (#3048, #3052).
- In multistore mode now there is a possibility to skip appending store code to URL with
appendStoreCodeconfig option - @lukeromanowicz (#3048, #3052, #3074).
- Add support for API.url in the Task module — @basvanpoppel (#3011)
- Products column change functionality — @vishal-7037 (#3017)
- New Module order-history this provides the pagination via lazy load — @Hackbard (#2810)
- OrderNumber on ThankYouPage — @Flyingmana (#2743)
- The getter
cart/totalshas been replaced with
cart/getTotals- @pkarw (#2522)
- The getter
cart/couponhas been replaced with
cart/getCoupon- @pkarw (#2522)
- The getter
cart/totalQuantityhas been replaced with
- The event
cart-before-savehas been removed - @pkarw (#2522)
- The action
cart/savehas been removed - @pkarw - (#2522)
- Some deprecated config options:
setupVariantByAttributeCodehave been removed - @pkarw (#2915)
- Button for filters acceptance added with new styles for clear filters button — @965750 (#2811)
- Added “Clear wishlist” button — @aniamusial (#2806)
- Make all links with the primary color — @Hackbard (#2932)
- The back button on the Error page has been fixed — @pkarw (#3077)
- Special price got zeroed — @pkarw (#2940)
- Microcart tax + discount totals fix — @pkarw (#2892)
- Microcart offline prices now forced down to original prices — @pkarw (#3012)
- Login/Register error message added in case of FetchError (no network connectivity) — @pkarw
- Products removed from the cart are no longer add back on the connectivity return — @pkarw (#2898)
- Sidebar menu wasn’t possible to scroll — @PanMisza (#2627)
- Confirmation popup ‘Product has been added to cart’ is displayed only once — @JKrupinski (#2610)
- Moved My Account options from Categories — @bartdominiak (#2612)
- Fix displaying (and adding) reviews for configurable products — @afirlejczyk (#2660)
- Image switching fix — @pkarw (#2709)
- Respect store code on order/PROCESS_QUEUE for shop store — @Zulcom (#2727)
window.localStorageuse in user module actions - @Zulcom (#2735)
- Fix handling state of same address checkbox in the checkout — @lukeromanowicz (#2730)
- Fix for
everythingNewcollection on the home page - @vishal-7037 (#2761)
- Fixed display of chevron arrows when there is only one product image — RGijsberts — (#2911)
Clear cartoption as it previously was not syncing the changes with the server - therefore when the user was logged in and cleared the cart all the products were restored - @pkarw (#2587)
- Fixed the cart sync for a rare case that current cart token was empty — @pkarw (#2592)
- Use event bus to emit ‘application-after-init’ event (#2852)
- Validation of fields ‘company name’ and ‘tax’ in checkout doesn’t work correctly — @dimasch (#2741)
- Fixed wrong price, displayed in instant checkout module — @vishal-7037 (#2884)
- Incorrect working of checkboxes in checkout — @dimasch (#2730)
- Fixed ios input zoom on category page — @VictorKadup (#2815)
- Fixed Load more in Search Results not working when typed too fast — @Flyingmana (#2659, #2946)
- Subscribe button responsive — @exlo89, @webdiver, @przemyslawspaczek (#2886)
- Multiple instances for search adapter invocations — @bratok (#2960)
- Fixed issue with login popup state not resetting on mobile devices — @aniamusial (#2699)
- Fix sortBy for the category page — @Jensderond (#2868)
- Fixed incorrect prices in Instant Checkout (PR API) — @qiqqq (#2874)
- Fixed placeholders in the gallery in offline mode — @przspa (#2863)
user_idset on the order object - @pkarw (#2966)
- Problem with SSR render on the product page with logged in user — @patzick (#2888)
- NaN displayed as shipping method — button disabled — @aniamusial (#2881)
- Logo on the Error page has been fixed — @przspa (#3077)
- No placeholders / no photos for the Get Inspire section in offline — @przspa (#3072)
- The back icon on product page causing inconsistent behavior — @patzick (#3056)
Changed / Improved
cart/updateQuantitynow returns the
diffLogobject with all the notifications, server statuses, and items changed during the shopping cart sync
cart/addItemis no longer displaying the error messages - please use the
diffLog.clientNorificationsto update the UI instead (take a look at the
AddToCart.tsfor a reference)
- The action
cart/userAfterLoggedingot renamed to
cart/authorize- @pkarw (#2522)
- The action
cart/refreshTotalsgot renamed to
cart/syncTotals- @pkarw (#2522)
- The action
cart/serverPullgot renamed to
cart/sync- @pkarw - (#2522)
- The way we’re getting the user and cart tokens got refactored — @pkarw (#2513)
- Changed the way to access the configuration. Currently the
rootStore.state.configis deprecated. Please do use
import config from 'config'>
configinstead - @pkarw (#2649)
- Changed the order number (from
increment_id) on MyOrders and MyOrder pages - @pkarw (#2743)
- Disabled the server cart sync in case a user is in the checkout — @pkarw (#2749)
- Improved ProductGalleryCarousel component to handle non-numeric options id’s — @danieldomurad(#2586)
- Number of displayed products is now visible on PLP on desktop — @awierzbiak (#2504)
- Improved visibility of product SKU in wishlist — @PanMisza (#2606)
- Instant focus to search input field after clicking on the search icon in navbar — @ca1zr (#2608)
- Login flow from authorized pages after session expired, show the modal with the new error message and redirect after login — @gdomiciano, @natalledm (#2674)
- Added support for the newest node version — @gdomiciano (#2669)
- Default store ID from
1for multistore and CMS data logic - @janmyszkier (#2590)
$busplugin instead of EventBus import - @szafran89 (#2630)
- BaseCheckbox now uses v-model. @click is not needed anymore — @haukebri (#2630)
- Image selection supporting multiple configurable options — @mdesmet (#2599)
- Product video — retrieve video id from ‘video_id’ field (if set) instead of ‘id’ — @afirlejczyk
- Webpack config improvement — @yogeshsuhagiya (#2689)
- BaseSelect input event — @ResuBaka (#2683)
- Fixed static file handler to immediately return 404 status for missing files — @grimason (#2685)
- Fixed maxAge Response Header for static files and Content-Type for Service Worker — @grimason (#2686)
- Default log verbosity is changed to show only errors — @lromanowicz (#2717)
- Remembering last search query — @webdiver, @patzick (#2787)
- Extracted ProductImage component to support faster images loading — @przemyslawspaczek (#2925)
- Improve performance with preventing render ‘404 page’ on the server side if some of the static content is missed, simple 404 response uses instead — PHOENIX MEDIA — Yuri Boyko @yuriboyko, Anton Lobodenko @sniffy1988 (#3002)
- Logger refactor + now it takes
showErrorOnProductioninto account - @lromanowicz - (#2717)
- Jest updated from 24.1 to 24.7 along with typings — @lromanowicz — (#2717)
- Jest globals added to .eslint — @lromanowicz (#2717)
- The default store ID was removed from the configurations — @nuovecode (#2718)
- ‘Multitab cart’ sync — @BartoszLiburski (#2547)
- Back to login button now shows the Login modal window instead of closing it — @RGijsberts (#2882)
- Status filter in Related Products query (#2805)
- The ‘Apply’ button size has been reduced — @idodidodi (#2807)
- Added return to shopping button on ‘Thank You’ page — @ZeevGerstner (#2818)
- Added optional attributes to catalog/product.ts — @ZeevGerstner (#2792)
- Formatted dates in CHANGELOG.md to match ISO standard — @phoenixdev-kl (#2839)
- Moved Filter Price Ranges (used for ES aggregations and UI Filter) to the config — @jpetar (#2873)
- Extra space if not found products in everything new section home page — @cnviradiya (#2846)
- Load custom fonts without webfont.js — @jahvi (#2944)
- Added some structured data to the product page — @cewald (#2910)
- Improved the Size Guide feature, so it opens in a modal popup instead of a new page — @RGijsberts — (#2913)
- Refactored Travis config @Tjitse-E (#3035)
Native Magento 2 Indexer
Our standard data importers were designed to solely use the platform APIs to push the data into Elastic Search. This is precisely how the mage2vuestorefront works.
As flexible, this solution is, it comes with some severe limitations. One of the most critical limitations it has is the performance. Executing API requests for each product might have a sense for 1–2K SKUs but doesn’t work with the databases counting a hundred thousand items.
This was our motivation to create the native indexers for Magento. Currently, you can find two native indexers on our Github:
- Magento 2: https://github.com/DivanteLtd/magento2-vsbridge-indexer
- Magento 1: https://github.com/DivanteLtd/magento1-vsbridge-indexer
Read more about native Magento indexers here.
Magento MSI support
Thanks to our fantastic partner, BitBull, Vue Storefront is now supporting Magento Multi Stock Inventory. Special thanks to Alessandro Ronchi who made it possible and ensured high code quality!
Vue Storefront has new CTO!
Following to rapid growth of Vue Storefront, we have decided to expand the Vue Storefront team with a new tech leader. Everyone — please meet Mr. Sander Mangel, Magento community legend and our new CTO!
Sander is working with us for only one month, and we already see exceptional results of this cooperation!
Vue Storefront as Shopware exclusive PWA solution!
It turns out that May was an excellent month for Vue Storefront! We not only started working with sander but also announced Vue Storefront and Shopware partnership! Now we will work on delivering the best possible PWA experience for Shopware 6 together!
You can read more about Shopware and Vue Storefront cooperation here.
Shopware 6 integration
Followed by our partnership with Shopware we released Vue Storefront integration with newest Shopware 6!
Here you can find the code and installation guide.
Our QA team will now help you on VS forum!
As we take our support to the next level, we would like you to meet Core QA Team! Gabi, Alina, and Artur help you find or get the answers for your Vue Storefront related questions and issues on our official forum.
Vendic launched Vue Storefront for Meubelplaats
What are the challenges of enriching Magento-based stores with PWA solutions? To find out, we met up with Tjitse and Eugene, developers from Vendic agency, who recently launched a PWA in the Meubelplaats furniture store.
You can read the full interview here.
Vue Storefront hackathon in Deventer by Vendic & Yireo
When speaking about Vendic, it’s hard not to mention amazing hackathon they’ve organized together with Yireo recently in Deventer! Despite the regular focus on coding many efforts has been put into knowledge sharing.
We header about PWAs from Sander mangel, Magento PWA solutions comparison from Jisse Reitsma and running Vue Storefront on production from Tjitse Efde
You can find stunning presentation made by Tjitse from Vendic about running Vue Storefront on production here!
Upcoming Vue Storefront hackathons
If you missed hackathon in the Netherlands, there is no reason to panic! We have plenty of them coming where you can meet Sander, core team members, our partners, and other Vue Storefront community members!
Keep an eye on our event list to stay updated and don’t miss Vue Storefront hackathon near your town!