Intelligent Meeting Point Recommendation System - Find the Perfect Place for Every Gathering
🎯 Live Demo | 📺 Demo Video | English | 简体中文
MeetSpot is an intelligent meeting point recommendation system that calculates optimal meeting locations based on multiple participants' geographical positions and recommends nearby venues.
- 🎯 Smart Center Point Calculation: Calculate geometric center based on multiple locations for fairness
- 🏢 Multi-Scenario Recommendations: Search multiple venue types simultaneously (cafes + restaurants + libraries)
- 📍 Multi-Location Support: Support 2-10 participant locations
- 🎨 Intuitive User Interface: Modern responsive design
- 🚀 Real-time Recommendations: Generate personalized recommendations quickly
- 📊 Intelligent Ranking: Comprehensive sorting based on ratings, distance, and user requirements
- ✅ Multi-Scenario Recommendations: Support simultaneous selection of multiple venue types
- ✅ Frontend Multi-Selection: Intuitive venue type selection interface
- ✅ Smart Ranking Algorithm: Scenario matching reward mechanism
- ✅ Performance Monitoring: Complete performance statistics and health checks
- ✅ Error Handling: Robust exception handling mechanism
- Python 3.11+
- Amap (Gaode Map) API Key
- Modern browsers (Chrome, Firefox, Safari, Edge)
- Clone Repository
git clone https://github.com/JasonRobertDestiny/MeetSpot.git
cd MeetSpot- Install Dependencies
pip install -r requirements.txt- Configure API Key
cp config/config.toml.example config/config.tomlEdit config/config.toml and add your Amap API key:
[amap]
api_key = "your_amap_api_key_here"- Start Service
python web_server.py- Access Application Open browser and visit: http://127.0.0.1:8000
- Input Locations: Add 2-10 participant locations
- Select Scenarios: Choose 1-3 venue types (cafes, restaurants, libraries, etc.)
- Set Requirements: Add special requirements (convenient parking, quiet environment, etc.)
- Get Recommendations: Click search to get intelligent recommendations
- Multi-Scenario Combination: Search "cafe restaurant" simultaneously for more options
- Custom Keywords: Enter special venue types like "escape room"
- Filter Conditions: Filter by rating, distance, price
- Special Requirements: Support parking, Wi-Fi, private rooms, etc.
- FastAPI: High-performance web framework
- Pydantic: Data validation and settings management
- aiohttp: Async HTTP client
- Amap API: Geocoding and POI search
- HTML5 + CSS3: Responsive design
- Vanilla JavaScript: Lightweight interaction
- Boxicons: Icon library
- Modern UI Design: Gradients and glass effects
- Geometric Center Calculation: Multi-point centroid algorithm
- Intelligent Ranking: Multi-factor scoring system
- Scenario Matching: Keyword matching reward
- Deduplication Algorithm: Smart deduplication based on name and address
GET /- Homepage redirectPOST /api/find_meetspot- Meeting point recommendationGET /health- Health checkGET /workspace/js_src/{filename}- Generated recommendation pages
curl -X POST "http://127.0.0.1:8000/api/find_meetspot" \
-H "Content-Type: application/json" \
-d '{
"locations": ["Beijing University", "Tsinghua University"],
"keywords": "cafe restaurant",
"user_requirements": "convenient parking"
}'{
"success": true,
"html_url": "/workspace/js_src/place_recommendation_20250624_12345678.html",
"locations_count": 2,
"keywords": "cafe restaurant",
"processing_time": 0.52
}Complete test suite included:
# Run all tests
python test_optimizations.py # System optimization tests
python test_multi_scenario.py # Multi-scenario feature tests
python comprehensive_test.py # Comprehensive feature tests
# Health check
curl http://127.0.0.1:8000/health-
Response Time:
- Single scenario: 0.3-0.4 seconds
- Dual scenario: 0.5-0.6 seconds
- Triple scenario: 0.7-0.8 seconds
-
Support Scale:
- Locations: 2-10
- Scenarios: 1-3
- Concurrent users: 100+
- User account system
- History saving
- Favorites feature
- Share recommendations
- Machine learning recommendations
- Real-time traffic information
- Weather data integration
- Mobile app
- AR navigation
- Voice interaction
- Internationalization
- Enterprise features
We welcome all forms of contributions! Please see CONTRIBUTING.md for details.
This project is open source under the MIT License - see LICENSE file for details.
- 📧 Email: [email protected]
- 🐛 Bug Reports: GitHub Issues
- 💬 Discussions: GitHub Discussions
- Amap - Providing geocoding and POI search services
- FastAPI - Excellent web framework
- Boxicons - Beautiful icon library
If this project helps you, please give it a ⭐ Star!
Made with ❤️ by JasonRobertDestiny



