What's in the box.
Protekt Vue is a feature-rich Medical Mask Shop web application built as a fully functional Vue 3 app using the Composition API, Vite, and Bootstrap 4. It ships with 21+ view components, a filterable mask shop grid, a news blog module, a certifications dashboard, written entirely with script setup and the Composition API — zero Options API usage.
Built for Vue developers delivering medical mask shop and PPE e-commerce sites. The codebase uses Vue 3 Composition API throughout — ref(), reactive(), computed(), watch(), and composables for shared logic. Single File Components (.vue) keep template, script setup, and scoped styles co-located. Replace the static JSON data sources with any REST API or headless CMS and the reactive layer adapts immediately.
Everything in the Package
- 21+ view-level Single File Components with Vue Router 4 history mode routing
- Vue 3 with script setup syntax and Vite — fast HMR dev server and optimised production build
- Vue Router 4 — history mode with lazy-loaded routes via defineAsyncComponent
- Pinia store for global state management — state, getters, and actions with localStorage persist plugin
- Bootstrap 4 — responsive grid and utility classes
- VeeValidate 4 — schema-based form validation with v-model two-way binding on all forms
- Swiper Vue — touch-friendly carousels via SwiperSlide components
- All data sourced from typed JSON in src/data/ — swap to fetch() or axios for live API
- Scoped CSS inside each .vue file — no global style bleed between components
- Retina-ready, fully responsive from 320px to 1920px+
- Vue DevTools compatible — Pinia store fully inspectable in browser
Composition API and Component Architecture
- All views use script setup — defineProps, defineEmits, ref(), computed(), and watch()
- Composables encapsulate reusable logic — useFilter, useCart, useForm, and feature-specific hooks
- Pinia store: defineStore with typed state, computed getters, and async actions
- defineAsyncComponent applied to secondary view bundles — route-level code splitting
- v-model, v-for, v-if, v-show used throughout — idiomatic Vue 3 template syntax
- storeToRefs used for reactive destructuring of Pinia store properties in setup()
- Folder structure: src/views/, src/components/, src/composables/, src/stores/, src/data/
All 21 Views
- /home-v1 — v2 — Two distinct hero and PPE product showcase layouts
- /about — Company story and quality mission
- /shop — Mask product grid, left-sidebar shop, and shop detail
- /services — Mask and PPE service offerings
- /portfolio — Mask product and certification showcase archive
- /news — PPE guidance and face mask editorial
- /news-details — Full article view
- /contact — Contact form and quote enquiry
Key Features
- 21 Fully Designed HTML5 Pages across home, shop, services, portfolio, news, and contact
- 2 Unique Home Layouts — distinct hero styles and PPE product showcase arrangements
- Bootstrap 4 — responsive, mobile-first grid system
- Shop Section — mask product grid, left-sidebar shop, and shop detail pages
- Portfolio Gallery — mask product and certification showcase archive
- News Blog — PPE guidance and face mask editorial content
- ionRangeSlider — price range filtering for mask and PPE browsing
- CounterUp Animated Statistics — masks sold, customers, and lab-tests counters
- EasyPieChart — animated certification and product quality charts
- Isotope Grid Filtering — filter products by mask type or category
- MeanMenu — mobile-optimised responsive navigation
- Slick Carousel — featured mask and customer testimonial sliders
Performance and SEO
- useHead (VueUse) sets per-route title and meta description reactively for SEO
- defineAsyncComponent and Suspense code-split secondary view bundles on route change
- Vite production build applies Rollup tree-shaking, chunk splitting, and asset fingerprinting
- All images carry descriptive :alt bindings meeting WCAG 1.1.1
- Google Fonts loaded with font-display: swap to prevent invisible-text flash
Use Cases
- Medical Mask Shops: Fast Vue 3 SPA storefront with Composition API — reactive, composable, and easy to maintain
- Vue Developers: Composables, Pinia stores, and Vue Router 4 patterns — production architecture from day one
- Freelancers and Agencies: Deliver a polished medical mask shop site to clients with Vite build tooling and DevTools support
- Startups: Lightweight bundle, defineAsyncComponent code-splitting, and VeeValidate forms ready to go
Credits and Dependencies
- Vue 3 — MIT License
- Vite — MIT License
- Vue Router 4 — MIT License
- Pinia — MIT License
- VeeValidate 4 — MIT License
- Bootstrap 4 — MIT License
- Swiper Vue — MIT License
- Slick — MIT License
- Isotope — MIT License
- CounterUp — MIT License
- Magnific — MIT License
- Lightbox — MIT License
- ionRange — MIT License
- Chart — MIT License
- Font Awesome 6 — Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT
- Google Fonts — SIL Open Font License
- Demo images: Unsplash — Unsplash License (free for commercial use, no attribution required)
- Demo images: Freepik — Freepik License (free for commercial use with attribution)
- All demo images are for preview purposes only and are NOT included in the download.
Buyer’s guideDocfind — Doctor Directory Website Template | Bootstrap 5 (40 Frontend + 81 Admin Pages) — see how Protekt compares with the alternatives.
Protekt in other formats
The same design, built natively in each stack. Every format is its own product with its own demo, documentation, download and reviews.
-
ProtektHTML5
$15
$49View HTML5 → -
ProtektReact
$27
$49View React → -
This page ProtektVue.js $16
$49You are viewing it -
ProtektAngular
$27
$49View Angular → -
ProtektWordPress
$62
$102View WordPress → -
ProtektPHP
$22
$49View PHP → -
ProtektAI Smart Website
$1,299
$1,429View AI Smart Website → -
Save 20%
Developer bundleAll 6 code formats
$135.20
$169View bundle →
What's changed.
- Vue 3 Composition API with script setup syntax throughout
- Vite build tooling with fast HMR and optimised production output
- 21+ view-level Single File Components with Vue Router 4 history mode
- Pinia store with localStorage persist plugin for global state management
- VeeValidate 4 schema-based form validation on all form views
- defineAsyncComponent route-level code splitting on secondary views
- useHead per-route SEO meta tags via VueUse
Need Protekt installed or customized?
Fixed prices, done by the developers who built this template. Pick a service and we take it from there.
- Theme installation
- Color scheme customization
- Speed optimization
- 1-hour web development








Reviews
There are no reviews yet.