LocateMyStuff is a full-stack MERN application designed to help users manage and locate their belongings through an intuitive board interface. Using MongoDB, Express, React, and Node.js, this app provides a user-friendly experience for organizing and tracking items.
Features Item Management: Add, update, and remove items with details and locations. Board Interface: Visualize items on a dynamic board with filtering options. Search Functionality: Easily find items by name, category, or location. Location Mapping: View the locations of items on an interactive map. Responsive Design: Fully functional on both desktop and mobile devices.
Technologies Used MongoDB: NoSQL database for storing user data and item information. Express.js: Web framework for building the backend server. React: Frontend library for creating the board interface. Node.js: Runtime environment for executing server-side code.
Setup To set up and run the LocateMyStuff application locally, follow these steps:
Prerequisites Make sure you have the following installed on your machine:
Node.js (v14 or later) MongoDB (v4.4 or later) npm (comes with Node.js)
Clone the Repository bash
git clone https://github.com/shahinmulani/locatemystuff.git cd locatemystuff Install Dependencies Install the dependencies for both the client and server:
bash
cd server npm install
cd ../client npm install Configure Environment Variables Create a .env file in the server directory and add the following environment variables:
bash
MONGO_URI=mongodb://localhost:27017/locatemystuff JWT_SECRET=your_jwt_secret Running the Application Start the application by running the following commands in separate terminal windows or tabs:
bash
cd server npm start bash
cd ../client npm start The application should now be accessible at http://localhost:3000.
Folder Structure bash
locatemystuff/ │ ├── client/ # React frontend application │ ├── public/ # Static files │ └── src/ # React source code │ ├── server/ # Node.js backend application │ ├── config/ # Configuration files │ ├── controllers/ # Route handlers │ ├── models/ # MongoDB models │ ├── routes/ # Express routes │ ├── .env # Environment variables │ └── index.js # Entry point for the server │ └── README.md # This file Contributing We welcome contributions to LocateMyStuff. If you would like to contribute, please follow these steps:
Fork the repository. Create a new branch (git checkout -b feature/YourFeature). Make your changes and commit them (git commit -am 'Add new feature'). Push your changes to your fork (git push origin feature/YourFeature). Open a Pull Request to the main repository. License This project is licensed under the MIT License. See the LICENSE file for details.
Contact For any questions or feedback, please reach out to [email protected]