https://github.com/ksjaay/lunalytics
๐ Open source monitoring tool built with Node.js
https://github.com/ksjaay/lunalytics
application-monitoring javascript lunalytics monitoring nodejs react responsive self-hosted selfhosted uptime uptime-monitor vite webapp
Last synced: 3 months ago
JSON representation
๐ Open source monitoring tool built with Node.js
- Host: GitHub
- URL: https://github.com/ksjaay/lunalytics
- Owner: KSJaay
- License: other
- Created: 2023-11-20T00:30:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-29T00:45:55.000Z (4 months ago)
- Last Synced: 2025-01-29T01:32:17.014Z (4 months ago)
- Topics: application-monitoring, javascript, lunalytics, monitoring, nodejs, react, responsive, self-hosted, selfhosted, uptime, uptime-monitor, vite, webapp
- Language: JavaScript
- Homepage: https://lunalytics.xyz
- Size: 36.2 MB
- Stars: 42
- Watchers: 2
- Forks: 1
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Contributing: docs/contributing/conduct.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
Open source monitoring tool built with Node.js & React

## โญ Features
- Easy to self-host
- Monitor uptime for HTTP(s)/TCP
- Support for multiple users
- Role based access control
- Clean and easy to use UX/UI
- Customizable themes/colors
- Customizable user profiles
- Support for notifications
- Discord
- Slack
- Telegram
- Webhook
- More to come...## ๐ Getting Started
> [!CAUTION]
>
> This project is under active development, things may randomly break. But I'll do my best to fix them as soon as possible.#### Requirements
Make sure you have the following applications installed before starting:
- [Nodejs](https://nodejs.org/en/download/) (v18 or higher)
- Npm or [Yarn](https://classic.yarnpkg.com/lang/en/docs/install/#windows-stable)
- [Git](https://git-scm.com/)#### Clone application
```bash
git clone https://github.com/KSJaay/Lunalytics.git
cd Lunalytics
```#### Setup application
```bash
# Setup application
npm run setup# Start application using scripts
npm run start# Alternatively start application using
node server/index.js
```Lunalytics will be accessible on https://localhost:2308
#### Using pm2 to run application in the background
```bash
# Install pm2 globally
npm install pm2 -g# Start the server
pm2 start server/index.js --name Lunalytics# Or start the server using script
pm2 start npm --name "Lunalytics" -- run start# Optional
pm2 save
pm2 startup## Monitoring console output
pm2 monit
```## ๐ฏ Roadmap
- [ ] Custom status pages
- [x] Better design for compact mode
- [ ] API keys for users
- [ ] Move to Oauth2 for authentication
- [ ] Allow session management (Track/logout from sessions)
- [ ] Add support for multiple databases
- [x] Add support for PostgreSQL
- [x] Add support for SQLite
- [ ] Add support for MongoDB
- [ ] Add support for more notification services
- [ ] Better role based access control## ๐ Backstory
There's a lot of monitoring applications out there and I personally love using uptime-kuma. But, one of the main issues with Uptime-kuma is the ability to share with my friends/colleagues. And for the services that do allow me to share with others, they either have an outdated UI from the 90s or are so expensive I can't justify paying for it.
So I've decided to create my own application that's focused on a developer first experience with support for multiple users.
## Contributors
Just me for now I guess :(
## License
See the [LICENSE](https://github.com/KSJaay/Lunalytics/blob/main/LICENSE) file for licensing information.