NeXeonSystems-Website-Monitor is a real-time website monitoring system designed to keep track of the health and status of websites and services. It checks whether websites are up or down and provides an intuitive interface to display this status in real-time. The tool uses a client-server architecture with WebSockets for live updates, offering a seamless experience for website administrators to monitor their sites efficiently.
- Real-time status updates for each monitored website
- Website name, status (up/down), and indicators with color codes (green for up, red for down)
- Easy setup and configuration via a
config.jsonfile - Mobile-responsive UI for accessibility across all devices
- Socket.IO integration for live updates without page refreshes
- Monitoring of multiple websites with a scalable, easy-to-use interface
-
Frontend:
- HTML
- CSS (Responsive Grid Layout)
- JavaScript (Socket.IO for real-time updates)
-
Backend:
- Node.js
- Express
-
Real-time Communication:
- Socket.IO
-
Web Monitoring:
- Axios (for HTTP requests to check the status of websites)
Before you begin, ensure you have the following installed:
Start by cloning the repository to your local machine:
git clone https://github.com/NeXeonSystems/NeXeonSystems-Website-Monitor.git
cd NeXeonSystems-Website-MonitorRun the following command to install all required dependencies:
npm installThe monitored sites are configured in the config.json file.
- Open
config.jsonin your project folder. - It will look like this by default:
{
"Sites": [
{ "name": "", "domain": "", "port": }
]
}- Add your own websites by filling in the
"name","domain", and"port"fields.
For example:
{
"Sites": [
{ "name": "Example", "domain": "example.com", "port": 80 },
{ "name": "Example2", "domain": "example2.com", "port": 8080 }
]
}Once you've added your websites, the system will monitor them and display their status on the front-end.
Start the application with the following command:
npm startThis will run the server, and you can access the monitoring dashboard in your browser by navigating to http://localhost:3000.
The status page will show:
- Green (up) if the website is online and accessible.
- Red (down) if the website is offline or unreachable.
Once everything is set up and the sites are running, your site monitor page will look like this:
- Green circle for sites that are up.
- Red circle for sites that are down.
- v1.0.0 (November 9, 2024): Added real-time status monitor with a nice CSS.