Openstatus
www.openstatus.dev
1<p align="center" style="margin-top: 120px">
2
3 <h3 align="center">OpenStatus</h3>
4
5 <p align="center">
6 <a href="https://status.openstatus.dev">
7 <img src='https://status.openstatus.dev/badge/v2?variant=outline'>
8 </a>
9 </p>
10
11 <p align="center">The Open-Source synthetic monitoring platform.
12 <br />
13 <a href="https://www.openstatus.dev"><strong>Learn more »</strong></a>
14 <br />
15 <br />
16 <a href="https://www.openstatus.dev/discord">Discord</a>
17 ·
18 <a href="https://www.openstatus.dev">Website</a>
19 ·
20 <a href="https://github.com/openstatushq/openstatus/issues">Issues</a>
21 </p>
22</p>
23
24## About OpenStatus 🏓
25
26OpenStatus is open-source synthetic monitoring platform.
27
28- **Synthetic monitoring**: Monitor your website and APIs globally and receive
29 notifications when they are down or slow.
30
31## Recognitions 🏆
32
33<a href="https://trendshift.io/repositories/1780" target="_blank"><img src="https://trendshift.io/api/badge/repositories/1780" alt="openstatusHQ%2Fopenstatus | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
34
35<a href="https://news.ycombinator.com/item?id=37740870">
36 <img
37 alt="Featured on Hacker News"
38 src="https://hackerbadge.now.sh/api?id=37740870"
39 style="width: 250px; height: 55px;" width="250" height="55"
40 />
41</a>
42
43## Contact us 💌
44
45If you are interested in our enterprise plan or need special features, please
46email us at [ping@openstatus.dev](mailto:ping@openstatus.dev) or book a
47call<br/><br/>
48<a href="https://cal.com/team/openstatus/30min"><img alt="Book us with Cal.com" src="https://cal.com/book-with-cal-dark.svg" /></a>
49
50## Contributing 🤝
51
52If you want to help us building the best status page and alerting system, you
53can check our
54[contributing guidelines](https://github.com/openstatusHQ/openstatus/blob/main/CONTRIBUTING.MD)
55
56### Top Contributors
57
58<a href="https://github.com/openstatushq/openstatus/graphs/contributors">
59 <img src="https://contrib.rocks/image?repo=openstatushq/openstatus" />
60</a>
61
62Made with [Contrib.rocks](https://contrib.rocks)
63
64### Stats
65
66
67
68## Tech stack 🥞
69
70- [Next.js](https://nextjs.org/)
71- [Tailwind CSS](https://tailwindcss.com/)
72- [shadcn/ui](https://ui.shadcn.com/)
73- [tinybird](https://tinybird.co/?ref=openstatus.dev)
74- [turso](https://turso.tech/)
75- [drizzle](https://orm.drizzle.team/)
76- [Resend](https://resend.com/)
77
78[](https://depot.dev/?utm_source=Opource=OpenStatus)
79
80## Getting Started 🚀
81
82### With Docker (Recommended)
83
84The fastest way to get started for both development and self-hosting:
85
86```sh
87# 1. Copy environment file
88cp .env.docker.example .env.docker
89
90# 2. Start all services
91docker compose up -d
92
93# 3. Access the application
94open http://localhost:3002 # Dashboard
95open http://localhost:3003 # Status Pages
96```
97
98📖 **Full guide**: [DOCKER.md](DOCKER.md)
99
100### With Devbox
101
102You can use [Devbox](https://www.jetify.com/devbox/) and get started with the following commands:
103
1041. Install Devbox
105 ```sh
106 curl -fsSL https://get.jetify.com/devbox | bash
107 ```
1082. Install project dependencies, build and start services
109 ```sh
110 devbox services up
111 ```
112
113### Manual Setup
114
115#### Requirements
116
117- [Node.js](https://nodejs.org/en/) >= 20.0.0
118- [pnpm](https://pnpm.io/) >= 8.6.2
119- [Bun](https://bun.sh/)
120- [Turso CLI](https://docs.turso.tech/quickstart)
121
122#### Setup
123
1241. Clone the repository
125
126```sh
127git clone https://github.com/openstatushq/openstatus.git
128```
129
1302. Install dependencies
131
132```sh
133pnpm install
134```
135
1363. Initialize the development environment
137
138Launch the database in one terminal:
139
140```sh
141turso dev --db-file openstatus-dev.db
142```
143
144In another terminal, run the following command:
145
146```sh
147pnpm dx
148```
149
1504. Launch whatever app you wish to:
151
152```sh
153pnpm dev:web
154pnpm dev:status-page
155pnpm dev:dashboard
156```
157
158The above commands whill automatically run the libSQL client on `8080` so you might wanna kill the turso command from step 3.
159
1605. See the results:
161
162- open [http://localhost:3000](http://localhost:3000) (default port)
163
164### Videos
165
166Videos to better understand the OpenStatus codebase:
167
168- [The code behind OpenStatus and how it uses Turbopack](https://youtube.com/watch?v=PYfSJATE8v8).
169- [Drop Betterstack and go open source](https://www.youtube.com/watch?v=PKag0USy3eQ)