A self-hosted internet speed tracker for monitoring ISP performance.
Zepeed is a powerful speedtest aggregator and monitor built with a modern technology stack. It allows you to schedule and run speedtests using multiple providers like Speedtest Ookla, LibreSpeed, and Fast.com, providing a unified dashboard for monitoring your network performance.
- Multiple Providers: Support for Speedtest Ookla, LibreSpeed, Cloudflare, and Fast.com.
- Scheduled Runs: Automated speedtests with customizable schedules.
- Customizable Templates: Create and manage your own speedtest templates email notifications.
- Maintenance Windows: Define periods where tests should be paused or restricted.
- Manual Triggers: Run speedtests on demand from the dashboard.
- Real-time Notifications: Get notified of run successes or failures via Inertia notifications.
- Modern Stack: Built with Laravel 12, Vue 3, shadcn/vue, and Tailwind CSS v4.
- Webhooks: Integrate with your favorite services for real-time notifications.
- Apprise: Fan out notifications to 80+ messaging services (Slack, Discord, Telegram, Signal, and more) through a self-hosted Apprise gateway.
- Prometheus Integration: Expose a
/metricsscrape endpoint for monitoring with Prometheus and Grafana. - Email Services: Send speedtest results via SMTP, Mailgun, Postmark, AWS SES, and more.
- Ping Test: Check the latency of your internet connection.
- MCP Server: AI-ready Model Context Protocol server for querying monitoring data programmatically.
We welcome contributions! Please follow these steps:
- Fork and Clone: Fork the repository and clone it to your local machine.
- Setup Environment: Follow the Quick start instructions.
- Create a Branch: Create a feature branch for your changes (
git checkout -b feature/amazing-feature). - Code Standards: Ensure your code follows the project's standards by running:
composer run format # Fixes Pint, Prettier, and ESLint issues composer run analyse # Runs PHPStan static analysis composer run rector # Applies Rector refactorings
- Test: Make sure all tests pass before submitting:
composer run test - Submit PR: Push your branch and create a Pull Request with a clear description of your changes.
MIT

