<<<<<<< HEAD
EnviScribe is a web application that allows users to search for environmental data by location. Users can search for data by entering a location or by clicking on the map. The application will display the environmental data for the selected location. The data includes information on air quality, water quality, and weather. Users can also view the data on a map and download the data in a CSV file.
- Search for environmental data by location
- View air quality, water quality, and weather data
- View data on a map
- Download data in a CSV file
- Frontend: React, Leaflet
- Backend: Node.js, Express
- Database: MongoDB
- Clone the repository
git clone https://github.com/sushant-wayal/EnviScribe
- Install the dependencies
cd EnviScribe
npm install
- Set up the environment variables
cp .env.example .env
- Start the server
npm start
- Start the client
cd client
npm start
- Search for data by location
- Enter a location in the search bar and click on the search button
- Click on the map to select a location
- View data
- View air quality, water quality, and weather data for the selected location
- View the data on a map
- Download data
- Click on the download button to download the data in a CSV file
- This project was created by Sushant Wayal ======= EnviScribe is a comprehensive environmental monitoring system designed to collect, analyze, and visualize data from various sensors. This allows institutions to effectively track and respond to environmental changes, ensuring the safety and sustainability of their surroundings. It provides real-time alerts and historical data logging for informed decision-making.
- Real-Time Monitoring: Collects up-to-the-minute data from connected sensors, providing a live view of environmental conditions.
- Alert System: Triggers email notifications based on predefined thresholds, enabling immediate response to critical events.
- Data Logging and Visualization: Stores historical sensor data and presents it in an intuitive dashboard for analysis and reporting.
- User Management: Supports different user roles with varying levels of access to ensure data security and control.
- Device and Sensor Management: Enables easy registration and configuration of devices and associated sensors.
- Institution Management: Provides a platform for institutions to manage their profiles and associated devices/sensors.
- Image Upload: Facilitates uploading images related to environmental events or sensor locations.
- Frontend: React, TypeScript, Radix UI, Lucide React, React Hook Form, Zod, Sonner, Axios
- Backend: Node.js, Express.js, MongoDB, Mongoose, JWT, Cloudinary, Multer, Nodemailer
- Database: MongoDB
The project is structured into frontend and backend directories. Key functionalities are modularized into different routes and components. Middleware is used for authentication, authorization, and handling file uploads. Utilities and helper functions are implemented for API responses, error handling, and other common tasks.
- Clone the repository:
git clone <repository_url>
- Navigate to the project directory:
cd EnviScribe
- Install dependencies (Frontend):
cd client && npm install
- Install dependencies (Backend):
cd server && npm install
- Configure environment variables: Create
.env
files in both the client and server directories and populate them with the required credentials. - Start the development server (Frontend):
npm run dev
(in the client directory) - Start the backend server:
npm start
(in the server directory)
- Advanced Analytics: Integration of advanced data analysis techniques for predictive modeling and trend identification.
- Mobile Application: Development of a mobile app for convenient access to data and alerts.
- Data Export: Functionality to export data in various formats for reporting and integration with other systems.
- Map Integration: Displaying sensor locations and data on a map interface.
This README provides a high-level overview of EnviScribe. More detailed documentation and setup instructions can be found within the respective frontend and backend directories.
46a290b3cd2456b33ba5056ae764160d2656e124