Live Demo: urban-eye-location-finder.vercel.app
UrbanEye is an interactive city locator web app built with React and Leaflet.js. It allows users to search any city worldwide, view its location on a dynamic map, and explore essential city details like population, coordinates, timezone, and more. Users can toggle between Street and Satellite map views for a richer experience.
- π City Search: Search any city using the Open-Meteo Geocoding API.
- πΊοΈ Interactive Map: View the exact city location using React Leaflet.
- π Map Modes: Switch between Street View (OpenStreetMap) and Satellite View (ESRI World Imagery).
- π City Details: Displays region, subregion, coordinates, population, timezone, and elevation.
- π‘ Smooth Animations: Map zooms smoothly to the selected city.
- π§ Accessible Design: Keyboard navigation, ARIA labels, and responsive layout.
- π± Responsive UI: Fully optimized for desktop and mobile.
| Category | Technology |
|---|---|
| Frontend | React.js |
| Mapping | React Leaflet + Leaflet.js |
| Icons | React Icons (FontAwesome) |
| API | Open-Meteo Geocoding API |
| Styling | Inline CSS with Google Fonts (Audiowide) |
| Deployment | Vercel |
UrbanEye_Location-Finder/
β
βββ public/
β βββ favicon.ico
β βββ index.html
β
βββ src/
β βββ components/
β β βββ CityLocator.jsx # City search and map logic
β β βββ Footer.jsx # Footer section
β β
β βββ App.jsx # Main app entry combining components
β βββ main.jsx # Renders App to the DOM
β βββ index.css # Optional global styles (minimal)
β
βββ README.md
βββ package.json
βββ vite.config.js
βββ .gitignore
β
βββ node_modules/
git clone https://github.com/SRCarlo/UrbanEye_Location-Finder.git
cd UrbanEye_Location-Findernpm installnpm run devor if using CRA:
npm startVisit:
http://localhost:5173/
(or the port shown in your terminal)
Geocoding API: Open-Meteo Geocoding
Example Endpoint:
https://geocoding-api.open-meteo.com/v1/search?name=London&count=10
- Integrating Leaflet maps with React components.
- Handling asynchronous API calls and managing loading/error states.
- Designing accessible and responsive UIs.
- Implementing dynamic map updates using React Leafletβs
useMap()hook.
-π City Search: Search any city using the Open-Meteo Geocoding API. -πΊοΈ Interactive Map: View the exact city location using React Leaflet. -π Map Modes: Switch between Street View (OpenStreetMap) and Satellite View (ESRI World Imagery). -π City Details: Displays region, subregion, coordinates, population, timezone, and elevation. -π‘ Smooth Animations: Map zooms smoothly to the selected city. -π§ Accessible Design: Keyboard navigation, ARIA labels, and responsive layout. -π± Responsive UI: Fully optimized for desktop and mobile.
Developer: [SRCarlo]
Live Demo: urban-eye-location-finder.vercel.app
This project is licensed under the MIT License β feel free to use, modify, and share. MIT License
Copyright (c) 2025 SRCarlo
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND...