UniMaps is a full-stack web application built for the ITFIP university campus. It pairs a Vue 3 single-page application with a Laravel 12 REST API to give students, staff, and visitors an interactive map, turn-by-turn campus directions, and a secure account system — all installable as a Progressive Web App.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Jcofles/Proyecto-web/llms.txt
Use this file to discover all available pages before exploring further.
Quickstart
Create an account and start navigating the campus in minutes.
Campus map
Explore the interactive Leaflet-powered campus map.
Routing
Learn how Dijkstra-based routing finds the shortest path between buildings.
Authentication overview
Understand email verification, 2FA, and the secure-key recovery system.
Architecture
UniMaps is split into two independent services that you run and deploy separately.| Layer | Directory | Technology |
|---|---|---|
| Frontend SPA | itfip-map/ | Vue 3, Vue Router 4, Leaflet 1.9, PrimeVue 4, Vite 7 |
| Backend API | Clase1/ | Laravel 12, Laravel Sanctum 4, MySQL |
VITE_API_URL environment variable points the SPA at the correct backend origin.
Key capabilities
Interactive campus map
Pan and zoom a Leaflet map of the ITFIP campus with labeled buildings, facilities, and points of interest.
Dijkstra routing
Enter an origin and destination to receive the shortest walking path calculated server-side using the Dijkstra algorithm.
Secure authentication
Email-verified registration, optional two-factor authentication, and a downloadable
.jw secure-key file for account recovery.PWA support
Install UniMaps on any device. The app ships with a Web App Manifest and runs in standalone mode with geolocation access.
Dark and light mode
Toggle between themes at any time using the mode switcher in the top navigation bar.
Role-based access
Separate views and API endpoints for standard users and administrators.
UniMaps is installable as a Progressive Web App (PWA). On Chrome or Edge, look for the Install prompt in the browser address bar after you log in. Once installed, the app runs in standalone mode and can request your device’s GPS for location-aware navigation.