This is a frontend interface and part of a full-stack application (backend), designed to help users to find sports activities across different cities. It enables users to discover, create, and join sports events across various cities.
- Vue.js Composition API: The backbone of the application, offering a modular approach to reactive functionalities.
- Axios: Facilitated communication with the backend API.
- Vue Router: Managed seamless navigation between application sections.
- Vuex: Centralized storage for user data and system notifications.
- Leaflet: Integrated for interactive map displays and location-based functionalities.
-
User Interface
- A simple and intuitive design for effortless user navigation and interaction.
- Interactive elements such as maps and address autocompletion.
-
User Authentication
- Offered both manual and OAuth2 Google login options.
- Retained user sessions for a personalized experience.
-
Role-Based Access
- Implemented role-based views and actions, tailoring user experience based on assigned roles.
-
Error Handling
- Application-wide notification component to provide feedback to users.
- Input data validation on the frontend.
-
Performance Optimizations
- Practices like lazy loading were implemented to keep the app fast and responsive.
npm install
npm run serve
npm run build
npm run lint