Home
Softono
statusbase-nuxt

statusbase-nuxt

Open source MIT TypeScript
227
Stars
18
Forks
2
Issues
1
Watchers
3 years
Last Commit

About statusbase-nuxt

A modern, zero-dependency uptime monitoring tool & status page based on GitHub Actions & Nuxt Content v2.

Platforms

Web Self-hosted

Languages

TypeScript


Logo

StatusBase

Uptime monitoring tool & beautiful status pages

Powered by Nuxt Content v2!
Free β€’ Open Source β€’ Notification

View Demo Β· Report Bug Β· Request Feature

statusbase.vercel.app

Inspiration

I saw a lot of Status Page Software-as-a-Service (SAAS) out there lately, but I want to create one that allow users to freely host it themselves, and configure it to their hearts content.

On top of that, I find that this a golden opportunity to play with Nuxt Content v2 πŸ˜†

πŸš€ Features

  • 🀩 Free
  • πŸ“– Open-Source
  • πŸš€ Host it on platforms
  • πŸ“ Write incident report in Markdown
  • 0️⃣ Zero dependency on other service
  • πŸ”” Email notifications when site is down

πŸ”¨ Built With

Setup instructions

Warning This project is still under development

  1. Fork the repository
  2. Update cron frequency on .github/workflows/health-check.yaml
  3. Create [name].yaml on /content/urls (eg: doc.yaml)
  4. Copy the template below to your yaml file created in step 2
url: "https://docs.zernonia.com"
title: "Doc"
description: "Documentation website for zernonia"
# IMPORTANT! url must be first line
# you can add any extra field here
  1. Set up on any platform you ant
  2. Celebrate! πŸŽ‰

How it works?

This project uses GitHub actions to wake up every hour and run a shell script (health-check.sh). This script runs curl on every .yaml file in your /content/urls directory and appends the result of that run to a log file and commits it to the repository.

All thanks to Nuxt Content v2, we easily fetch the log data, as well as documented incidents report easily and display it on the website.

However, there's a downside with using GitHub Actions as CRON, which is the scheduled delayed. Other than that, the current Nuxt Content v2 doesn't support remote git sources yet, so we have to rebuild the apps every 30 minutes (depending on the frequeny you set in .github/workflows/health-check.yaml), which is not ideal.

βž• Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“œ License

Distributed under the MIT License. See LICENSE for more information.

πŸ“§ Contact

Zernonia - @zernonia - [email protected]

Also, if you like my work, please buy me a coffee β˜•πŸ˜³

Logo