Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/fredy-rizo/ecommerce-delivery-frontend/llms.txt

Use this file to discover all available pages before exploring further.

Ecommerce Delivery is a Vue 3 + Quasar 2 (Webpack) SaaS frontend built for end-to-end e-commerce and delivery management. It connects to a backend REST API to provide a full shopping experience — from browsing a product catalog and adding items to a cart, through checkout and payment, all the way to real-time delivery tracking. Firebase Cloud Messaging delivers push notifications to users and administrators, while Socket.io keeps order statuses in sync across sessions. The application is role-aware, serving distinct interfaces and permissions to regular users, promotors, and administrators from a single codebase. Client-side utilities such as validateRequire (form field validation) and searchLinksinText (auto-linking URLs in text content) are shared across views to reduce duplication.

What it includes

Product Store

Browse and search a paginated product catalog. Administrators can create, update, and remove products directly from the store view.

Shopping Cart

Add products to a persistent cart, adjust quantities, and proceed to a multi-step checkout with address selection and payment confirmation.

Order Management

View all placed orders, filter by status, and change order states (pending → dispatched → delivered) with a dedicated sales-report panel for admins.

Delivery Tracking

Real-time delivery status list powered by Socket.io, giving buyers live updates on where their order is in the fulfillment pipeline.

Push Notifications

Firebase Cloud Messaging integration sends browser and mobile push notifications for order confirmations, status changes, and promotional messages.

Member Management

Administrators can list, search, and update member accounts, including assigning roles (Usuario, Promotor, Admin) and managing membership status.

Tech stack

LayerTechnology
UI frameworkVue 3 + Quasar 2 (Webpack mode)
State managementVuex 4
Client-side routingVue Router 4 (hash mode)
HTTP clientAxios 0.21
Real-timeSocket.io-client 4
Push notificationsFirebase 12 (FCM) — compat API
Environment config@quasar/quasar-app-extension-dotenv + dotenv 16
Build toolchain@quasar/app-webpack 3
Mobile (optional)Capacitor (quasar build -m capacitor)

User roles

The application defines three roles. Every authenticated request is validated client-side via validateUser() in src/tools/User.js, and the backend enforces the same rules server-side.
Role nameValueDescription
Usuario1Standard buyer. Can browse the product store, manage their own cart, place orders, and track deliveries.
Admin2Platform administrator. Has full access to all store management features, the sales report, member management, and role assignment. A value of 2 bypasses all other role checks automatically.
Promotor3Sales promotor. Can access order and shopping list views alongside regular users (shares [1, 3] access on several pages), acting as a field agent between the store and its customers.

Prerequisites

Before installing the project make sure your environment meets the minimum versions declared in package.json:
RequirementMinimum version
Node.js>= 12.22.1
npm>= 6.13.4
yarn>= 1.21.1
Quasar CLILatest v2 (npm i -g @quasar/cli)
Install Quasar CLI globally if you have not already:
npm install -g @quasar/cli

Build docs developers (and LLMs) love