This project is a Smart Visitor Guidance System, codenamed "Mint Navigator," developed using the MERN stack (MongoDB, Express.js, React, Node.js) and styled with Tailwind CSS. It aims to provide intelligent navigation and information for visitors within a specified environment.
- Interactive maps and routing for visitors.
- Point of Interest (POI) information and details.
- User authentication and authorization (e.g., for admin access to manage POIs).
- Search functionality for locations and services.
- Responsive design for various devices.
- [Add more specific features as your project develops, e.g., real-time updates, multilingual support, accessibility features.]
- Frontend: React (likely with Vite for development), React Router DOM, Tailwind CSS
- Backend: Node.js, Express.js
- Database: MongoDB (with Mongoose for ODM)
- Other: [Mention any other significant libraries or tools like Axios, Redux, etc.]
Follow these steps to set up the project locally on your machine.
- Node.js: (LTS version recommended, e.g., 18.x or 20.x) - Download from nodejs.org.
- npm: (Comes with Node.js) or Yarn.
- MongoDB:
- Local Installation: Install MongoDB Community Server - Follow instructions on mongodb.com.
- MongoDB Atlas: Alternatively, you can use a cloud-hosted MongoDB Atlas cluster.
-
Clone the repository:
git clone https://github.com/your-username/mint-navigator.git cd mint-navigator(Replace
your-usernamewith your actual GitHub username) -
Set up Environment Variables: This project requires environment variables for configuration (e.g., database connection strings, API keys).
- You will find an
.env.examplefile in the root of the project (and potentially inclient/andserver/sub-folders if your project is structured that way). - Create a new file named
.envin the same directory as.env.example. - Copy the contents from
.env.exampleinto your new.envfile. - Fill in the actual values for each variable. Do not commit your
.envfile to Git!
Example
.envcontent (adjust variable names and values as per your actual backend and frontend needs):# Backend Configuration PORT=5000 MONGO_URI=mongodb://localhost:27017/mint_navigator_db # Or your MongoDB Atlas connection string JWT_SECRET=your_super_secret_jwt_key # Frontend Configuration (if needed, e.g., for API URL) VITE_API_URL=http://localhost:5000/api - You will find an
-
Install Dependencies:
If your project has separate
client/andserver/folders, each with its ownpackage.json:# Install backend dependencies cd server npm install cd ../ # Install frontend dependencies cd client npm install cd ../
(Adjust
clientandserverfolder names if yours are different. If you have a singlepackage.jsonat the root, simply runnpm installin the root directory.) -
Run the Project:
If you need to start frontend and backend separately (common for MERN):
# In your first terminal, start the backend server cd server npm start # or npm run dev, check your server/package.json for the correct script cd ../ # In a new terminal, start the frontend development server cd client npm run dev # or npm start, check your client/package.json for the correct script cd ../
The frontend will typically run on
http://localhost:5173(Vite default) and the backend onhttp://localhost:5000(or whateverPORTyou configured).
We welcome contributions to the Mint Navigator project! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix (
git checkout -b feature/your-feature-name). - Make your changes and ensure tests pass (if applicable).
- Commit your changes (
git commit -m 'feat: Add new feature X'). - Push to your branch (
git push origin feature/your-feature-name). - Open a Pull Request to the
mainbranch of this repository.