A Vue 3 based web application for viewing and interacting with the YHRP site registry data.
This application provides a modern interface for accessing and visualizing site registry data from the YHRP API. Built with Vue 3 and Vuetify 3, it offers a responsive and user-friendly experience.
- Vue 3 with Composition API
- Vuetify 3 for UI components
- ArcGIS and Leaflet integration for map visualization
- Service-based architecture for API integration
- Responsive design for all device sizes
- Node.js and NPM
- Docker (optional, for containerized deployment)
-
Clone the repository
-
Create environment files:
cp src/api/.env src/api/.env.development
-
Configure environment variables (see Environment Variables section)
-
Start the development servers:
# Terminal 1 - API cd src/api npm run start:dev # Terminal 2 - Frontend cd src/web npm run start:dev
-
Access the application at http://localhost:8080
Environment variables should never be checked into the repository!
Required variables:
- API_PORT=(port for API server)
- FRONTEND_URL=(service URL from browser)
docker build -t yhrp-viewer .docker run -p 8222:3000 -e NODE_ENV=production --restart=on-failure yhrp-viewersrc/web/- Vue 3 frontend applicationsrc/api/- Backend API servicessrc/docs/- Project documentation- Migration plans
- API schemas
- Release process
- State management documentation
For detailed information about the project, refer to the documentation in src/docs/:
architecture/state-management.md- State management architecturearchitecture/caching-strategy.md- Caching implementation detailsdevelopment/vue3-migration.md- Details about the Vue 3 migrationprocesses/release-process.md- Release and deployment proceduresprocesses/branching-strategy.md- Branch management and workflowprocesses/CHANGELOG_GUIDE.md- Guidelines for maintaining the changelogCHANGELOG.md- Version history and changes (in root directory)
- Create a feature branch
- Make your changes
- Submit a pull request
- Ensure all tests pass
- Update documentation as needed
Internal use only - YG Government