Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ahmedadelfahim/uptime-monitor

Uptime monitoring RESTful API server that allows authenticated users to monitor URLs, and get detailed uptime reports about their availability, average response time, and total uptime/downtime.
https://github.com/ahmedadelfahim/uptime-monitor

docker docker-compose expressjs mochajs mongoose nodejs redis rest-api typescript uptime-monitor

Last synced: 11 days ago
JSON representation

Uptime monitoring RESTful API server that allows authenticated users to monitor URLs, and get detailed uptime reports about their availability, average response time, and total uptime/downtime.

Awesome Lists containing this project

README

        

# Uptime-Monitor
Uptime monitoring RESTful API server that allows authenticated users to monitor URLs, and get detailed uptime reports about their availability, average response time, and total uptime/downtime.
## Getting Started

These steps will get you a copy of the project up and running for development and testing purposes.

## Installation

1. Install **Nodejs** _latest stable version_
2. Install **npm** _latest stable version_
3. Install **mongoDB** _latest stable version_
4. Install **redis** _latest stable version_
5. _Optional Step_ ⇒ You can install **MongoDB Compass** [any user interface application for MongoDB] as it offers a user interface for dealing with the database
6. Clone the Project
7. Run the following commands:
```
npm install
cp .env.example .env
```
8. write required variables in .env

## Usage

1. for running localy
```
npm run start
```
2. for testing
```
npm run test
```
3. for build
```
npm run build
npm run start:prod
```
## Running Using Docker
1. write required variables in docker-compose.yml
2. Run the following commands:
```
docker-compose up
```
## [API Documentation](https://url-monitor.herokuapp.com/api/v1/documentation)

## [Demo](https://url-monitor.herokuapp.com)

## Built With

1. [Nodejs](https://nodejs.org/en/)
2. [Bull](https://github.com/OptimalBits/bull) (used in handle job scheduling to make App scalable)
3. [Redis](https://github.com/redis/node-redis)
4. [Mongodb](https://docs.mongodb.com/)

## Todo
- [ ] increase test coverage
- [x] deploy app
- [ ] handle owasp vulnerabilities