## About OpenStatus ๐
OpenStatus is open-source synthetic monitoring platform.
- **Synthetic monitoring**: Monitor your website and APIs globally and receive
notifications when they are down or slow.
## Recognitions ๐
## Contact us ๐
If you are interested in our enterprise plan or need special features, please
email us at [ping@openstatus.dev](mailto:ping@openstatus.dev) or book a
call
## Contributing ๐ค
If you want to help us building the best status page and alerting system, you
can check our
[contributing guidelines](https://github.com/openstatusHQ/openstatus/blob/main/CONTRIBUTING.MD)
### Top Contributors
Made with [Contrib.rocks](https://contrib.rocks)
### Stats

## Tech stack ๐ฅ
- [Next.js](https://nextjs.org/)
- [Tailwind CSS](https://tailwindcss.com/)
- [shadcn/ui](https://ui.shadcn.com/)
- [tinybird](https://tinybird.co/?ref=openstatus.dev)
- [turso](https://turso.tech/)
- [drizzle](https://orm.drizzle.team/)
- [Resend](https://resend.com/)
[](https://depot.dev/?utm_source=Opource=OpenStatus)
## Getting Started ๐
### With Docker (Recommended)
The fastest way to get started for both development and self-hosting:
```sh
# 1. Copy environment file
cp .env.docker.example .env.docker
# 2. Start all services
docker compose up -d
# 3. Access the application
open http://localhost:3002 # Dashboard
open http://localhost:3003 # Status Pages
```
๐ **Full guide**: [DOCKER.md](DOCKER.md)
### With Devbox
You can use [Devbox](https://www.jetify.com/devbox/) and get started with the following commands:
1. Install Devbox
```sh
curl -fsSL https://get.jetify.com/devbox | bash
```
2. Install project dependencies, build and start services
```sh
devbox services up
```
### Manual Setup
#### Requirements
- [Node.js](https://nodejs.org/en/) >= 20.0.0
- [pnpm](https://pnpm.io/) >= 8.6.2
- [Bun](https://bun.sh/)
- [Turso CLI](https://docs.turso.tech/quickstart)
#### Setup
1. Clone the repository
```sh
git clone https://github.com/openstatushq/openstatus.git
```
2. Install dependencies
```sh
pnpm install
```
3. Initialize the development environment
Launch the database in one terminal:
```sh
turso dev --db-file openstatus-dev.db
```
In another terminal, run the following command:
```sh
pnpm dx
```
4. Launch whatever app you wish to:
```sh
pnpm dev:web
pnpm dev:status-page
pnpm dev:dashboard
```
The above commands whill automatically run the libSQL client on `8080` so you might wanna kill the turso command from step 3.
5. See the results:
- open [http://localhost:3000](http://localhost:3000) (default port)
### Videos
Videos to better understand the OpenStatus codebase:
- [The code behind OpenStatus and how it uses Turbopack](https://youtube.com/watch?v=PYfSJATE8v8).
- [Drop Betterstack and go open source](https://www.youtube.com/watch?v=PKag0USy3eQ)