Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/ProcesosAgilesUMSS/sansistore/llms.txt

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

SansiStore is a full-stack e-commerce web application built for Universidad Mayor de San Simón (UMSS). It covers the complete purchase lifecycle — from product browsing and cart management, through seller order fulfillment and courier delivery, to inventory tracking and platform administration — inside a single, cohesive codebase. The app is deployed as a Progressive Web App (PWA) on Vercel, making it installable and partially offline-capable on any device.

Five User Roles

SansiStore is built around five distinct roles, each with its own portal, default route, and set of permissions. A single Firebase Auth account can hold multiple roles simultaneously.
RoleSpanish nameDefault RouteResponsibilities
BuyerComprador/Browse the catalog, manage a cart, place and track orders
SellerVendedor/seller/created-ordersAccept, package, and dispatch orders; manage daily collections and offers
CourierMensajero/courierPick up packaged orders and handle last-mile delivery with map support
Inventory OperatorOperador de Inventario/inventoryRegister stock entries and exits, record movements and incidents
AdminAdministrador/adminFull platform access: users, categories, analytics, audit logs, reconciliation

Key Technologies

  • Astro 6 — server-side rendered pages (output: 'server') with the official Vercel adapter
  • React 19 — interactive UI islands inside Astro pages
  • Firebase Auth — Google OAuth sign-in, restricted to @umss.edu accounts in production
  • Cloud Firestore — real-time NoSQL database with 18 collections (some as subcollections)
  • Firebase Storage — product image hosting
  • Tailwind CSS v4 — utility-first styles with custom --theme-* design tokens
  • Nanostores — lightweight shared state for cart and auth across islands
  • vite-pwa / @vite-pwa/astro — PWA manifest, service worker, and offline caching
  • Vercel — two environments: main branch → staging, production branch → live

Where to Go Next

Quickstart

Clone the repo, start Firebase emulators, seed test data, and run the dev server in under five minutes.

Architecture Overview

Understand how Astro SSR, React islands, Firebase, and Tailwind fit together.

Product Catalog

How products, categories, search, and filtering work for buyers.

Seller Order Management

How sellers move orders through the fulfillment lifecycle.

Courier Delivery Flow

How couriers receive assignments, confirm pickups, and record delivery outcomes.

Admin Dashboard

User management, audit logs, reconciliation, and platform analytics.
@umss.edu domain restriction — In production, the Google OAuth provider is configured with hd: 'umss.edu', which forces the Google account chooser to filter to institutional accounts only. The prompt: 'select_account' parameter also prevents auto-login with a non-institutional cached account. During local development with the Auth emulator, this restriction is not enforced and any email can be used.

Build docs developers (and LLMs) love