This React Vite Single Page Application enables users to efficiently interact with a map, allowing them to select locations for updating personal notes. Users can seamlessly add or delete cities, leveraging a mock API for local machine operations, as backend functionality is not available on the hosted website.
Checkout the LinkedIn Post with Video demo
Embark on a journey of learning and discovery while working on the WorldWise Map Application. Here's what you'll gain:
- Learn how to create a seamless and efficient single-page application.
- Dive into the world of React.js, powered by Vite for a smoother development experience.
- Master the art of route handling with:
- Nested Routes.
- Index Routes.
- Explore the wonders of CSS modules to keep your styles organized and scoped.
- Connect your application's various sections effortlessly with
<Link>
and<NavLink>
.
- Store state in the URL and handle dynamic routes with URL parameters.
- Navigate like a pro using:
useNavigate
<Navigate>
- Unleash the power of Context API:
- Create and provide a context.
- Consume the context.
- Customize a provider and hook.
- Enhance your app with a feature-rich map using the Leaflet library.
- Set the map's position using geolocation for a personalized experience.
- Capture clicks on the map and fetch location data effortlessly.
- Create and delete cities to populate your map.
- Elevate your app's state management using context and
useReducer
.
- Secure your routes with fake authentication.
- Optimize your app for better performance, including:
- Profiling with Developer Tools.
- Tricks to reduce wasteful renders.
- Understanding
memo
,useMemo
, anduseCallback
.
- Reduce bundle size and improve load times using lazy loading and code splitting.
- Utilize API requests for data management, including:
- Sending POST requests.
- Fetching data with GET requests.
- Deleting data with DELETE requests.
-
Clone the repository:
gh repo clone VINAYAK9669/WorldWiseWebAPP1
-
Install dependencies:
cd WorldWiseWebAPP1 npm install
-
Start the development server:
npm run dev
Happy Mapping! 🗺️