You can view a live demo of Quick Status here: https://demo-quickstatus.justdiego.com/
A simple and lightweight status page for your services. Set up your status page in seconds and share it with your users. Easy configuration and deployment.
- Easy to Use: Quick setup with minimal configuration.
- REST API: Full REST API for programmatic service management.
- Customizable: Tailor the status page to fit your brand.
- Real-time Updates: Instant updates to your service status.
- Responsive Design: Looks great on all devices.
- Open Source: Free to use and modify.
- Self-Hosted: Run it on your own server for full control.
- Lightweight: Minimal dependencies for fast performance.
Quick Status is configured using a simple TXT file. You can easily add or remove services, set their status, and customize the appearance of your status page.
You can setup your services in sites.txt
at the root of the project.:
# Format: ServiceName=ServiceURL
GitHub=https://github.com
OpenAI=https://openai.com
Vercel=https://vercel.com
Netlify=https://netlify.com
AWS=https://aws.amazon.com
The fastest way to get Quick Status running:
# Option 1: Build and run directly from GitHub
docker build -t quick-status https://github.com/dewstouh/quick-status.git#main:docker/images/quick-status
docker run -p 3000:3000 quick-status
# Option 2: Clone and use docker-compose
git clone https://github.com/dewstouh/quick-status.git
cd quick-status/docker/images/quick-status
docker compose up
Visit http://localhost:3000 to see your status page!
- Clone the repository:
git clone https://github.com/dewstouh/quick-status.git
- Install the dependencies:
pnpm install
- Start the development server:
pnpm run dev
To build the application for production, run:
pnpm run build
dfvDlj7.mp4
npx turbo db:seed
MbxP6nX.mp4
To run tests, use the following command:
pnpm test
7et4hsj.mp4
I personally use act
to test the workflows locally. You can install it using:
brew install act
And then just start the workflow with:
act
ChvYXGa.mp4
Quick Status monitors the services listed in sites.txt
by checking their availability and response time every 30s or every refresh.
Quick Status provides a comprehensive REST API for programmatically managing services and outages. The API allows you to:
- Manage Services: Create, read, update, and delete monitored services
- Track Outages: Create and manage service outages and incidents
- Monitor Status: Get real-time service status and uptime information
- Access History: Retrieve historical outage data and service metrics
GET /api/services
- Get all services with status infoPOST /api/services
- Create a new serviceGET /api/services/{id}
- Get specific service detailsPUT /api/services/{id}
- Update service informationDELETE /api/services/{id}
- Remove a service
GET /api/outages?siteId={id}
- Get outages for a servicePOST /api/outages
- Create a new outageGET /api/outages/{id}
- Get specific outage detailsPUT /api/outages/{id}
- End an outage
GET /api/health
- API health status
# Get all services
curl http://localhost:3000/api/services
# Create a new service
curl -X POST http://localhost:3000/api/services \
-H "Content-Type: application/json" \
-d '{"name": "My Website", "url": "https://mywebsite.com"}'
# Create an outage
curl -X POST http://localhost:3000/api/outages \
-H "Content-Type: application/json" \
-d '{"siteId": "service-id", "type": "down"}'
All endpoints return JSON responses and follow RESTful conventions. No authentication is currently required.
- Add simple registration system to manage service tracking from web interface
- Add Favicons
Quick Status was created out of a need for a simple, lightweight status page solution for Quickfra that could be set up quickly and easily. Many existing solutions were either too complex or bloated with features that weren't necessary for the use case. Quick Status aims to provide a straightforward, no-frills status page that can be deployed in seconds and be configured with minimal effort.