Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/barasedih11/ecotrack
Platform using RESTful APIs (Mysql, Nodejs, Express)
https://github.com/barasedih11/ecotrack
express mysql nodejs postman software-engineering
Last synced: about 2 months ago
JSON representation
Platform using RESTful APIs (Mysql, Nodejs, Express)
- Host: GitHub
- URL: https://github.com/barasedih11/ecotrack
- Owner: BaraSedih11
- Created: 2024-01-19T14:42:27.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-05-22T23:06:32.000Z (8 months ago)
- Last Synced: 2024-05-22T23:29:16.187Z (8 months ago)
- Topics: express, mysql, nodejs, postman, software-engineering
- Language: JavaScript
- Homepage:
- Size: 218 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
![GitHub repo size](https://img.shields.io/github/repo-size/BaraSedih11/EcoTrack) ![GitHub repo file count (file type)](https://img.shields.io/github/directory-file-count/BaraSedih11/EcoTrack) ![NPM Version](https://img.shields.io/npm/v/npm) ![GitHub last commit (branch)](https://img.shields.io/github/last-commit/BaraSedih11/EcoTrack/main)Environmental Monitoring and Reporting Platform
EcoTrack is a cutting-edge platform for environmental reporting and monitoring; it manages the distribution of environmental data and modifies it. This platform, a backend API built with Node.js, was developed to provide a robust framework for user interaction, data collection, and insightful reporting to satisfy the growing need for all-encompassing environmental solutions.## Table of Contents
- [Introduction](#introduction)
- [Project Folders](#project-folders)
- [Features](#features)
- [Technologies Used](#technologies-used)
- [Getting Started](#getting-started)
- [API Documentation](#api-documentation)
- [Testing](#testing)
- [Vision](#vision)## Introduction
EcoTrack serves as a robust backend API designed to handle environmental data collection, user profile management, environmental alerts, community reporting, sustainability scoring, educational resources provision, and open data access for researchers and organizations. It's a platform aimed at promoting environmental awareness, facilitating data sharing, and encouraging sustainable practices.
## Features
### Main Features:
1. **Data Collection:** Enables users to submit environmental data from various sources like IoT sensors, manual observations, or data uploads.
2. **User Profiles:** Users can create and manage profiles to track contributions and connect with others.
3. **Environmental Alerts:** Notification system for significant changes or concerning trends in environmental data.
4. **Community Reporting:** Allows users to report environmental issues such as pollution, deforestation, or wildlife endangerment.
5. **Sustainability Score:** A scoring system assessing users' environmental contributions and sustainability efforts.
6. **Educational Resources:** Provides articles and guides on environmental topics to raise awareness and educate users.
7. **Open Data Access:** Offers APIs for researchers, scientists, and organizations to access aggregated environmental data for research and analysis.### Additional Features:
- **Socket.IO Integration:** bidirectional communication between clients and server.
- **External API Integration:** Utilized to enhance functionality and supplement data collection.## Technologies Used
- **Node.js:** Backend development platform.
- **Socket.IO:** Real-time communication for alerts.
- **MySQL:** Database for CRUD operations.
- **Postman:** API building, testing and documentation tool.
- **Git:** Version control system.
- **Axios:** making and managing HTTP requests.## Getting Started
To get started with EcoTrack API, follow these steps:
1. Clone the repository: `git clone https://github.com/AdvancedSoftwareTeam/EcoTrack.git`
2. Install dependencies: `npm install`
3. Configure environment variables.
4. Setup the database using mysql ( sql code is inside database folder ).
5. Run the application: `npm start`## API Documentation
The API is fully documented using Postman. Access the documentation [here](https://documenter.getpostman.com/view/29528140/2s9YkuZyR9).
## Testing
#### Postman Testing Strategy
We have employed Postman for comprehensive API testing to ensure the functionality, reliability, and accuracy of the EcoTrack platform. Our testing strategy involves:
- **Automated Tests:** Writing automated test scripts within Postman to perform API endpoint testing, covering scenarios for data submission, user profile management, environmental alerts, community reporting, and more.
- **Environment Setup:** Configuring different environments within Postman to simulate various conditions and perform thorough testing.
- **Collection Runs:** Executing collection runs in Postman to validate endpoints, data validations, authentication mechanisms, and error handling.**Instructions for Testing Using Postman:**
1. Import the provided Postman collection.
2. Set up the necessary environment variables, choose the *EcoTrack Env*.
3. Run collection tests individually or perform a collection run to test various API endpoints.#### Demo
click on the following link to watch the testing [demo video](https://drive.google.com/file/d/1IhVZ-JUvbNWw50SRC-YMC2zegsws5C2s/view?usp=sharing).
## Vision
EcoTrack strives to be more than a data platform—it's a catalyst for change. Through collaboration, awareness, and informed decisions, it spearheads environmental initiatives, empowering global communities and organizations.