PinPoint is a web app that allows users to log in, save their current location as a pin, and view their collection of pins on an interactive map. The app is built with React, TypeScript, and Vite, using the Leaflet library for map rendering.
- 🔐 User Authentication – Secure login to save your personalized map.
- 📍 Pin Your Locations – Add, view, and manage your visited locations.
- 🌍 Interactive Map – Powered by Leaflet for smooth navigation.
- 💾 Persistent Storage – Save locations and access them anytime.
- ⚡ Fast & Modern – Built with Vite for lightning-fast performance.
- Frontend: React, TypeScript, Vite
- Mapping: Leaflet.js
- Geocoding: OpenCage
- Authentication: Firebase
- Database: Firestore
Clone the repository:
git clone https://github.com/yourusername/pinpoint.git
cd pinpointInstall dependencies:
npm install # or yarn installStart the development server:
npm run dev # or yarn dev- Sign Up / Log In – Create an account to save your map.
- Add Pins – Click on the map to drop a new pin and add details.
- View & Manage Pins – See all your visited locations and edit/delete them.
- Implement user authentication
- Google account user creation
- Add the ability to add and delete pins
- Email/password user creation
- Phone number user creation
- Optimize database queries for better performance
- Enhance UI/UX with animations and themes
Contributions are welcome! Feel free to fork the repo and submit a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by Tyler West