COMP47360-Research-Practicum
Smart Tourist Guide for New York City ππ½
π Project Description
The Smart Tourist Guide for New York City is an innovative plan designed to enhance the travel experience for tourists by providing real-time information about Points of Interest (POI), focusing on recommending times to visit when these locations are least crowded. This project leverages multiple datasets and advanced technologies to deliver personalized, data-driven recommendations, ensuring tourists can explore the city efficiently and comfortably.
π― Objectives
- Map Integration:
- Utilize the actual position of users (GPS)
- Display relevant POIs within a determined radius
- Predictions:
- Weather API integration
- Crowd density predictions based on research
- Distance calculations
- Time variations
- Rating System:
- Closeness and distance relevance
- Affiliate business prioritization
- Cross-Platform Functionality:
- Mobile and desktop compatibility
- Development and Deployment:
- Automatic deployment for quick development and testing
- Automatic testing under different conditions
- Efficient development practices
- Adherence to coding guidelines
- Reliable testing protocols
π‘ Nice-to-Have Features
- User Implementation:
- User recognition for applying discounts
- Gamification (e.g., system of points, discount payment with earned coins)
- Mobile app functionality with GPS
- Flows and Maintenance:
- Redundant server setup
- Scalable platform
- Automatic backups and restoring from backups
πΌοΈ System Structure (Draft)
- Hosting: Self Host / AWS
- Backend: Postgres
- Environment: Docker / Kubernetes
- Web Server: Apache on Nginx
- Database: Postgres
- Deployment: Automated tasks from GitHub repo
π οΈ Tools and Repository
π Development Tools
- Code & Idea IDE
- Postgres
- Apache
- Nginx
- JSON Requests
- OpenMaps API
πΎ Resources and Repositories
π οΈ Implementation Plans
The Coordination Lead Plan
The Data Lead Plan
The Front-end Plan
The Customer Lead Plan
The Back-end Plan
The Maintenance Lead Plan
π License
This project is licensed under the GPL-2.0 license. See the LICENSE file for details.