# 🌍 Globe Teller **Globe Teller** is an interactive 3D globe that shows details of every country on Earth. Powered by `react-globe.gl`, it allows users to explore countries, view national flags, and experience a world of immersive geography and culture. --- ## πŸš€ Live Demo πŸ”— **[Explore Globe Teller Live](https://globe-teller.vercel.app/)** πŸ“ **[View GitHub Repository](https://github.com/Tasnim-Ferdous/Globe-Teller)** --- ## πŸ“· Screenshot ![Globe Teller Banner](https://hc-cdn.hel1.your-objectstorage.com/s/v3/30059334ccec3a41c0738d71f750cf7038cba20d_screenshot_27-7-2025_52738_localhost.jpeg) --- ## ✨ Features - 🌐 **3D Interactive Globe** β€” Navigate the Earth with realistic country boundaries. - πŸ” **Smart Search with Dropdown** β€” Type and select countries from a modern, dynamic search bar. - πŸ“– **Country-Based Details** β€” Each country reveals a unique detail. - 🏳️ **Flag Display** β€” National flags enhance the experience. - πŸ’‘ **On-Load Instruction Modal** β€” New users get guided on how to explore the globe. - 🎨 **Modern UI/UX** β€” Smooth transitions, popups, and elegant modals. --- ## πŸ› οΈ Tech Stack - **Frontend**: React + Vite - **3D Globe**: [react-globe.gl](https://github.com/vasturiano/react-globe.gl) - **Data Processing**: JavaScript (JSON, Fetch API) - **Styling**: Tailwind CSS, custom modals & transitions --- ## 🧠 How It Works 1. Countries are rendered using `topojson` and `react-globe.gl`. 2. On search or click, the globe rotates to that country. 3. A detail is fetched from a JSON dataset. 5. Flags and info are displayed in a sleek popup. 6. One country is "active" at a time with a highlight color. --- ## πŸ“‚ Folder Structure ``` Globe Teller/ β”œβ”€β”€ public/ β”‚ β”œβ”€β”€ favicon/ β”‚ └── data β”‚ └── countryStories.json β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ components/ β”‚ β”‚ └── GlobeTeller.jsx β”‚ β”œβ”€β”€ styles β”‚ β”‚ └── index.css β”‚ β”œβ”€β”€ App.jsx β”‚ └── main.jsx β”œβ”€β”€ index.html β”œβ”€β”€ LICENSE β”œβ”€β”€ README.md β”œβ”€β”€ vite.config.js β”œβ”€β”€ postcss.config.js └── tailwaind.config.js ``` --- ## ✨ Creator Made with love by **Md. Tasnim Ferdous** πŸ’Œ [tasnimferdous2007@gmail.com] πŸ”— [LinkedIn](https://www.linkedin.com/in/md-tasnimferdous/) --- ## πŸ§ͺ Run Locally ```bash git clone https://github.com/Tasnim-Ferdous/Globe-Teller.git cd Globe-Teller npm install npm run dev ``` To build for production: ```bash npm run build ``` --- ## πŸ› Contributing & Feedback Have an idea? Found a bug? Feel free to [open an issue](https://github.com/Tasnim-Ferdous/Globe-Teller/issues) or fork the project and submit a PR. --- ## πŸ“Œ Future Features (Coming Soon) - πŸ—ΊοΈ Region & continent filtering - 🎢 Country-themed background music - πŸ“Έ Real-time satellite view integration - πŸ’¬ Multilingual storytelling - 🧩 Quiz mode with geographical challenges --- ## πŸ“œ License [MIT License](LICENSE) Β© 2025 MD. Tasnim Ferdous