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.json
file - 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
- Uses Chart.js to make the users see if the site is down or up.
-
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-Monitor
Run the following command to install all required dependencies:
npm install
The monitored sites are configured in the config.json
file.
- Open
config.json
in 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 start
This 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.
- Chart will show green if the site is up.
- Chart will show red if the site is down.
- v1.0.0 (November 9, 2024): Added real-time status monitor with enhanced CSS and improved layout.
- v1.1.0 (November 10, 2024): Updated CSS to support background images for enhanced design. (You can edit the background image in the CSS.)
- v1.1.1 (November 11, 2024): Enhanced Design with Interactive Chart & New CSS Styling. Added .env configuration.