Skip to content

NexinLabs/uptime-client

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Uptime Client

Project Overview

The Uptime Client is a monitoring tool designed to track the availability and performance of websites and services. It helps ensure that your online presence is always up and running, providing real-time alerts and detailed reports on downtime and performance issues.

Motivation

The primary motivation behind the Uptime Client is to provide a reliable and easy-to-use solution for monitoring the uptime of websites and services. In today's digital age, maintaining a high level of availability is crucial for businesses and individuals alike. Downtime can lead to lost revenue, damaged reputation, and frustrated users. The Uptime Client aims to mitigate these risks by offering continuous monitoring and timely notifications.

Features

  • Real-time Monitoring: Continuously checks the availability of your websites and services.
  • Alerts and Notifications: Sends instant alerts via email, SMS, or other channels when downtime is detected.
  • Detailed Reports: Provides comprehensive reports on uptime, response times, and performance metrics.
  • Customizable Checks: Allows users to configure monitoring intervals and thresholds.
  • Multi-platform Support: Compatible with various operating systems and platforms.

Technologies Used

  • Programming Language: JavaScript (Node.js)
  • Framework: Express.js for the backend server
  • Database: MongoDB for storing monitoring data
  • Frontend: React.js for the user interface
  • Monitoring Tools: Axios for making HTTP requests, Node-cron for scheduling tasks
  • Notification Services: In-build push notification and Nodemailer for email alerts

Installation

To install and run the Uptime Client locally, follow these steps:

  1. Clone the repository:
    git clone https://github.com/hunter87ff/uptime-client.git
  2. Navigate to the project directory:
    cd uptime-client
  3. Install dependencies:
    npm install
  4. Configure environment variables: Create a .env file and add the necessary configuration settings (e.g., database connection string, API keys for notification services).
  5. Start the application:
    npm start

Usage

Once the application is running, you can access the user interface through your web browser. From there, you can add the URLs of the websites and services you want to monitor, configure alert settings, and view detailed reports on their performance.

Contributing

We welcome contributions from the community. If you would like to contribute to the project, please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix:
    git checkout -b feature-name
  3. Make your changes and commit them:
    git commit -m "Description of your changes"
  4. Push your changes to your forked repository:
    git push origin feature-name
  5. Open a pull request on the main repository.

License

This project is licensed under the MIT License. See the LICENSE file for more details.

Contact

If you have any questions or need further assistance, please feel free to contact at [email protected].

About

client for monitoring and managing web servers

Resources

Stars

Watchers

Forks

Languages