WhereIsIt (Client Side) serves as the user interface for the Lost and Found platform. It enables users to report lost or found items, manage submissions, and interact seamlessly with the platform. The client-side is designed to be user-friendly, intuitive, and responsive.
π Visit WhereIsIt Live Website
β
Fully Responsive Design β Optimized for all screen sizes.
β
Authentication β Secure email/password login with Google authentication.
β
Lost & Found Management β Users can add, update, and delete posts.
β
Search & Filter β Find items based on title or location.
β
Framer Motion Animations β Smooth and engaging UI animations.
β
Dynamic Title Updates β Reflects the current page in the browser tab.
β
Toast Notifications β User-friendly alerts for important actions.
β
Protected Routes β Only logged-in users can manage their items.
- Home Section β Displays a slider and recent lost & found posts.
- Lost & Found Items β View and search for all lost and found items.
- Add New Item β Private route for adding new posts.
- Manage My Items β Users can edit or delete their submissions.
- All Recovered Items β View items that have been successfully returned.
- Frontend: React.js, React Router
- UI & Styling: TailwindCSS, Framer Motion, React Datepicker
- Authentication: Firebase Authentication
- Data Management: Axios, SweetAlert2
- Install Node.js (v14 or later).
git clone https://github.com/your-username/whereisit-client.gitcd whereisit-clientnpm installCreate a .env file and add:
REACT_APP_FIREBASE_API_KEY=your_firebase_api_key
REACT_APP_FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain
REACT_APP_FIREBASE_PROJECT_ID=your_project_idnpm start- Initial Setup
- Added Footer Component
- Implemented Lost & Found Items Page
- Connected Details Page to Backend
- Created "My Items" Management Page
- Added Status Update Feature
- Integrated Framer Motion for Animations
- Deployed Project to Firebase
Special thanks to the WhereIsIt team for the opportunity to contribute to this project.
WhereIsIt (Server Side) is the backend for the Lost and Found platform. It securely handles user authentication, item management, and data storage, supporting the client-side functionalities.
π Visit WhereIsIt Live Server
β
RESTful API Endpoints β CRUD operations for lost and found items.
β
MongoDB Integration β Secure and scalable NoSQL database.
β
JWT Authentication β Secure access for private routes.
β
Environment Variable Security β Sensitive credentials are stored securely.
β
CORS Enabled β Allows safe cross-origin requests.
β
Comprehensive Error Handling β Provides clear API responses.
- User Authentication β Secure JWT-based authentication system.
- Item Management β CRUD operations for lost & found items.
- Database Integration β MongoDB stores user & item data.
- Search & Filter β Efficient filtering of items.
- Secure API Requests β CORS enabled with validation & authorization.
- Backend: Node.js, Express.js
- Database: MongoDB, Mongoose
- Security: JWT Authentication, dotenv
- Deployment: Vercel
- Install Node.js
- Set up a MongoDB Atlas database or local MongoDB instance.
git clone https://github.com/your-username/whereisit-server.gitcd whereisit-servernpm installCreate a .env file and add:
PORT=5000
MONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
FIREBASE_API_KEY=your_firebase_api_key
FIREBASE_AUTH_DOMAIN=your_firebase_auth_domain
FIREBASE_PROJECT_ID=your_firebase_project_id
FIREBASE_STORAGE_BUCKET=your_firebase_storage_bucket
FIREBASE_MESSAGING_SENDER_ID=your_firebase_messaging_sender_id
FIREBASE_APP_ID=your_firebase_app_idnpm start- POST /api/items β Add a new lost/found item.
- GET /api/items β Retrieve all lost & found items.
- GET /api/items/:id β Retrieve a specific item by ID.
- PUT /api/items/:id β Update an itemβs details.
- DELETE /api/items/:id β Remove an item from the database.
- POST /api/recovered β Mark an item as recovered.
- Initial Server Setup
- Integrated MongoDB & Connected API Routes
- Implemented JWT Authentication
- Developed CRUD Operations for Items
- Added Secure Environment Variables
- Optimized API Performance
- Enabled CORS for Cross-Origin Access
- Deployed Server to Vercel
Special thanks to the WhereIsIt team for providing a platform to work on this meaningful project.
Distributed under the MIT License. See LICENSE for details.
π Happy Coding! π
