scherhak / uplinkr
A lightweight, file-based Laravel package for monitoring website availability with zero external dependencies.
Requires
- php: ^8.2
- ext-openssl: *
- illuminate/console: ^11.0|^12.0
- illuminate/support: ^11.0|^12.0
Requires (Dev)
- orchestra/testbench: ^10.0
- phpunit/phpunit: ^11.0
This package is auto-updated.
Last update: 2026-03-11 19:46:44 UTC
README
Uplinkr
CLI-first monitoring for Laravel — simple, local, reliable.
File-based monitoring for URLs & APIs. No external services.
What is Uplinkr?
Uplinkr is a lightweight, file-based uptime and response monitoring package for Laravel. It allows you to monitor your URLs and APIs without requiring a database, storing all probe results as JSON files. Perfect for developers who need simple, reliable monitoring integrated directly into their Laravel applications.
Key Features
- File-Based Storage - No database required, all data stored as JSON files
- Native Laravel Integration - Built specifically for Laravel with Artisan commands
- Automatic Scheduler Integration - Run probes automatically with Laravel's task scheduler
- Project Organization - Group related probes together in projects
- Global + Project Settings - Separate global
uplinkr/settings.jsonand per-projectsettings.json - Customizable Thresholds - Define acceptable response times and failure tolerances
- Multiple Notification Channels - Log, email, and webhook support out of the box
- I’m Alive Heartbeats - Global heartbeat notifications with configurable interval and channels
How It Works
Uplinkr follows a simple workflow:
- Create a Project - Organize your monitoring targets into logical groups
- Add Probes - Define URLs/APIs to monitor with optional custom headers, methods, and body data
- Configure Alerts - Set up failure thresholds and notification channels
- Run Probes - Execute manually or automatically via Laravel's scheduler
- Receive Alerts - Get notified when probes fail or respond slowly
- Send Heartbeats - Keep operators informed that monitoring is active via I’m alive
All probe results and settings are stored as JSON files, making it easy to inspect, back up, and track operational changes over time.
Quick Start
This section walks you through the minimal setup required to start monitoring a URL or API. No database, no external services — just install, configure, and run your first probe.
1. Install Uplinkr via Composer
composer require scherhak/uplinkr
2. Publish Configuration Files
php artisan uplinkr:install
3. Create your first project
php artisan uplinkr:project:init --project=my-project
4. Add the simplest check
php artisan uplinkr:project:add:probe --project=my-site --url=https://example.com
5. Run the check for your first project
php artisan uplinkr:project:run-probes
Deep Dive
Want to go beyond the basics?
-
Full documentation: https://uplinkr.dev Complete reference, concepts, and architecture overview.
-
Getting started guide: https://uplinkr.dev/getting-started/quick-start/
Step-by-step setup with explanations and best practices.
Requirements
- PHP: 8.2 or higher
- Laravel: 11.x or 12.x
- PHP extension:
ext-openssl(required for TLS certificate metadata)
Contributing
Contributions are welcome! Please see CONTRIBUTING.md for details.
Security
If you discover any security related issues, please see SECURITY.md for how to report them.
License
MIT License. See LICENSE.md.
