Map Master is a comprehensive application developed by Team IUBAT_BlockBuster that empowers users to discover nearby attractions and plan their travels with ease. Leveraging the capabilities of OpenStreetMap and Geoapify, Map Master delivers a rich and interactive map experience without relying on traditional visual maps.
- Frontend: Vite React
- Backend: Express.js (Node)
- Mapping APIs: OpenStreetMap, Geoapify, Foursquare
- Authentication: Firebase
- Database: MongoDB (for user reviews)
- Styling: Emotion, FontAwesome, TailwindCSS
- HTTP Requests: Axios
- State Management: Context API
- Other Libraries: Leaflet, React Router, etc.
To set up the project locally, clone the GitHub repository provided by the organizers. Install the dependencies using npm install and start the development server with npm run dev.
- Location-Based Search: Users can discover attractions by specifying their location and search radius.
- Attraction Categories: Classifies attractions into categories like entertainment, parks, museums, etc.
- Detailed Attraction Information: Provides comprehensive details including name, description, weather conditions, and more.
- Local Amenities Information: Offers information on nearby hotels, transportation options, restaurants, and hospitals.
- Code Management: All code and documentation must be managed within the provided GitHub repository.
- API Usage: Utilized free or freemium APIs and adhere to good API consumption practices.
- Frontend Design: Created a user-friendly and intuitive interface with responsive design.
- Advanced Map Integration: Incorporate interactive maps with detailed data visualization for a richer user experience.
- Tour Planning: Provide personalized travel itineraries based on user-defined parameters.
- Main Dependencies: React, React-DOM, Firebase, Axios, Leaflet, React-Leaflet, etc.
- Dev Dependencies: Vite, ESLint, TailwindCSS, PostCSS, Autoprefixer, etc.
For a complete list of dependencies and scripts, refer to the package.json file in the project repository.
The main challenge of this project was selecting the most suitable APIs. As free APIs often have limitations, we focused on maximizing the value obtained while minimizing API requests for efficiency. Time management and teamwork were crucial aspects of our project. Abdullah Miraz handled authentication and documentation, ensuring smooth collaboration among team members. Shahidul Alam managed API calls and backend tasks, while Nazmus Sakib Apurbo took charge of frontend development. We thoroughly reviewed the requirements and appreciated the judges' clarifications. Despite facing challenges, we enjoyed participating in the hackathon. We attempted to scrape images using Puppeteer and Selenium but found them inefficient for our project due to potential delays and adverse effects on user experience.
Map Master is a versatile tool designed to streamline travel planning and exploration. With its robust technology stack and community-driven approach, it offers a seamless experience for travel enthusiasts. We thank IUT for organizing this hackathon and providing an opportunity for us to showcase our skills and creativity.
This documentation provides a high-level overview and serves as a guide for the development and contribution process of the Map Master project. For detailed implementation and usage instructions, please refer to the project's GitHub repository.
- Abdullah Miraz
- Shahidul Alam
- Nazmus Sakib Apurbo