Initial commit

This commit is contained in:
Anthony Wang 2021-08-16 17:39:27 -05:00
commit 2c0539776e
84 changed files with 1337 additions and 0 deletions

40
.github/ISSUE_TEMPLATE/bug_report.md vendored Normal file
View file

@ -0,0 +1,40 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: 'bug'
assignees: 'AnandChowdhary'
---
<!-- If you have a question, you should use Discussions instead: https://github.com/upptime/upptime/discussions -->
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
**Additional context**
Add any other context about the problem here.

8
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View file

@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Feature requests and ideas
url: https://github.com/upptime/upptime/discussions/new?category=ideas
about: Suggest an idea for this project
- name: Questions
url: https://github.com/upptime/upptime/discussions/new?category=q-a
about: Please ask and answer questions here

32
.github/workflows/graphs.yml vendored Normal file
View file

@ -0,0 +1,32 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Graphs CI
on:
schedule:
- cron: "0 0 * * *"
repository_dispatch:
types: [graphs]
workflow_dispatch:
jobs:
release:
name: Generate graphs
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Generate graphs
uses: upptime/uptime-monitor@v1.26.4
with:
command: "graphs"
env:
GH_PAT: ${{ secrets.GH_PAT }}

33
.github/workflows/response-time.yml vendored Normal file
View file

@ -0,0 +1,33 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Response Time CI
on:
schedule:
- cron: "0 23 * * *"
repository_dispatch:
types: [response_time]
workflow_dispatch:
jobs:
release:
name: Check status
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Update response time
uses: upptime/uptime-monitor@v1.26.4
with:
command: "response-time"
env:
GH_PAT: ${{ secrets.GH_PAT }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}

64
.github/workflows/setup.yml vendored Normal file
View file

@ -0,0 +1,64 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Setup CI
on:
push:
paths:
- ".upptimerc.yml"
repository_dispatch:
types: [setup]
workflow_dispatch:
jobs:
release:
name: Setup Upptime
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Update template
uses: upptime/uptime-monitor@v1.26.4
with:
command: "update-template"
env:
GH_PAT: ${{ secrets.GH_PAT }}
- name: Update response time
uses: upptime/uptime-monitor@v1.26.4
with:
command: "response-time"
env:
GH_PAT: ${{ secrets.GH_PAT }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}
- name: Update summary in README
uses: upptime/uptime-monitor@v1.26.4
with:
command: "readme"
env:
GH_PAT: ${{ secrets.GH_PAT }}
- name: Generate graphs
uses: benc-uk/workflow-dispatch@v1
with:
workflow: Graphs CI
token: ${{ secrets.GH_PAT }}
- name: Generate site
uses: upptime/uptime-monitor@v1.26.4
with:
command: "site"
env:
GH_PAT: ${{ secrets.GH_PAT }}
- uses: peaceiris/actions-gh-pages@v3.7.3
name: GitHub Pages Deploy
with:
github_token: ${{ secrets.GH_PAT }}
publish_dir: "site/status-page/__sapper__/export/"
user_name: "Upptime Bot"
user_email: "73812536+upptime-bot@users.noreply.github.com"

40
.github/workflows/site.yml vendored Normal file
View file

@ -0,0 +1,40 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Static Site CI
on:
schedule:
- cron: "0 1 * * *"
repository_dispatch:
types: [static_site]
workflow_dispatch:
jobs:
release:
name: Build and deploy site
runs-on: ubuntu-18.04
if: "!contains(github.event.head_commit.message, '[skip ci]')"
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Generate site
uses: upptime/uptime-monitor@v1.26.4
with:
command: "site"
env:
GH_PAT: ${{ secrets.GH_PAT }}
- uses: peaceiris/actions-gh-pages@v3.7.3
name: GitHub Pages Deploy
with:
github_token: ${{ secrets.GH_PAT }}
publish_dir: "site/status-page/__sapper__/export/"
user_name: "Upptime Bot"
user_email: "73812536+upptime-bot@users.noreply.github.com"

40
.github/workflows/summary.yml vendored Normal file
View file

@ -0,0 +1,40 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Summary CI
on:
schedule:
- cron: "0 0 * * *"
repository_dispatch:
types: [summary]
workflow_dispatch:
jobs:
release:
name: Generate README
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Update summary in README
uses: upptime/uptime-monitor@v1.26.4
with:
command: "readme"
env:
GH_PAT: ${{ secrets.GH_PAT }}
- name: Run readme-repos-list
uses: koj-co/readme-repos-list@master
with:
token: ${{ secrets.GH_PAT }}
query: "topic:upptime"
size: 20
max: 1000
one-per-owner: true

32
.github/workflows/update-template.yml vendored Normal file
View file

@ -0,0 +1,32 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Update Template CI
on:
schedule:
- cron: "0 0 * * *"
repository_dispatch:
types: [update_template]
workflow_dispatch:
jobs:
release:
name: Build
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Update template
uses: upptime/uptime-monitor@master
with:
command: "update-template"
env:
GH_PAT: ${{ secrets.GH_PAT }}

30
.github/workflows/updates.yml vendored Normal file
View file

@ -0,0 +1,30 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Updates CI
on:
schedule:
- cron: "0 3 * * *"
repository_dispatch:
types: [updates]
workflow_dispatch:
jobs:
release:
name: Deploy updates
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Update code
uses: upptime/updates@master
env:
GH_PAT: ${{ secrets.GH_PAT }}

33
.github/workflows/uptime.yml vendored Normal file
View file

@ -0,0 +1,33 @@
# This file was generated by upptime/uptime-monitor@v1.26.4
#
# ===============================
# Do not edit this file directly!
# ===============================
#
# Your changes will be overwritten when the template updates (daily)
# Instead, change your .upptimerc.yml configuration: https://upptime.js.org/docs
name: Uptime CI
on:
schedule:
- cron: "*/5 * * * *"
repository_dispatch:
types: [uptime]
workflow_dispatch:
jobs:
release:
name: Check status
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2.3.3
with:
ref: ${{ github.head_ref }}
token: ${{ secrets.GH_PAT }}
- name: Check endpoint status
uses: upptime/uptime-monitor@v1.26.4
with:
command: "update"
env:
GH_PAT: ${{ secrets.GH_PAT }}
SECRETS_CONTEXT: ${{ toJson(secrets) }}

3
.templaterc.json Normal file
View file

@ -0,0 +1,3 @@
{
"files": [".github/**/*"]
}

31
.upptimerc.yml Normal file
View file

@ -0,0 +1,31 @@
# Change these first
owner: upptime # Your GitHub organization or username, where this repository lives
repo: upptime # The name of this repository
sites:
- name: Google
url: https://www.google.com
- name: Wikipedia
url: https://en.wikipedia.org
- name: Hacker News
url: https://news.ycombinator.com
- name: Test Broken Site
url: https://thissitedoesnotexist.koj.co
status-website:
# Add your custom domain name, or remove the `cname` line if you don't have a domain
# Uncomment the `baseUrl` line if you don't have a custom domain and add your repo name there
cname: demo.upptime.js.org
# baseUrl: /your-repo-name
logoUrl: https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/icon.svg
name: Upptime
introTitle: "**Upptime** is the open-source uptime monitor and status page, powered entirely by GitHub."
introMessage: This is a sample status page which uses **real-time** data from our [GitHub repository](https://github.com/upptime/upptime). No server required — just GitHub Actions, Issues, and Pages. [**Get your own for free**](https://github.com/upptime/upptime)
navbar:
- title: Status
href: /
- title: GitHub
href: https://github.com/$OWNER/$REPO
# Upptime also supports notifications, assigning issues, and more
# See https://upptime.js.org/docs/configuration

21
LICENSE Normal file
View file

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2020 Anand Chowdhary
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

119
README.md Normal file
View file

@ -0,0 +1,119 @@
# [![Upptime](https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/logo.svg)](https://upptime.js.org)
<!--start: description-->
**Upptime** (https://upptime.js.org) is the open-source uptime monitor and status page, powered entirely by GitHub Actions, Issues, and Pages. It's made with 💚 by your friends at [Koj](https://koj.co).
> I find Upptime an incredible clever usage of \[GitHub Actions]. You essentially get a free configurable uptime monitor for whatever you want. [CSS Tricks](https://css-tricks.com/upptime/)
Upptime is used by [**1,000+**](https://github.com/topics/upptime) people and teams to ensure they know when their endpoints go down.
<!--end: description-->
[![Uptime CI](https://github.com/upptime/upptime/workflows/Uptime%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Uptime+CI%22)
[![Response Time CI](https://github.com/upptime/upptime/workflows/Response%20Time%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Response+Time+CI%22)
[![Graphs CI](https://github.com/upptime/upptime/workflows/Graphs%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Graphs+CI%22)
[![Static Site CI](https://github.com/upptime/upptime/workflows/Static%20Site%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Static+Site+CI%22)
[![Summary CI](https://github.com/upptime/upptime/workflows/Summary%20CI/badge.svg)](https://github.com/upptime/upptime/actions?query=workflow%3A%22Summary+CI%22)
## [📈 Live Status](https://demo.upptime.js.org): <!--live status--> **🟧 Partial outage**
<!--start: status pages-->
<!-- This summary is generated by Upptime (https://github.com/upptime/upptime) -->
<!-- Do not edit this manually, your changes will be overwritten -->
<!-- prettier-ignore -->
| URL | Status | History | Response Time | Uptime |
| --- | ------ | ------- | ------------- | ------ |
| <img alt="" src="https://favicons.githubusercontent.com/www.google.com" height="13"> [Google](https://www.google.com) | 🟩 Up | [google.yml](https://github.com/upptime/upptime/commits/HEAD/history/google.yml) | <details><summary><img alt="Response time graph" src="./graphs/google/response-time-week.png" height="20"> 125ms</summary><br><a href="https://demo.upptime.js.org/history/google"><img alt="Response time 90" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fresponse-time.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="24-hour response time 69" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fresponse-time-day.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="7-day response time 125" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fresponse-time-week.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="30-day response time 112" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fresponse-time-month.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="1-year response time 89" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fresponse-time-year.json"></a></details> | <details><summary><a href="https://demo.upptime.js.org/history/google">100.00%</a></summary><a href="https://demo.upptime.js.org/history/google"><img alt="All-time uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fuptime.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="24-hour uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fuptime-day.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="7-day uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fuptime-week.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="30-day uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fuptime-month.json"></a><br><a href="https://demo.upptime.js.org/history/google"><img alt="1-year uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fgoogle%2Fuptime-year.json"></a></details>
| <img alt="" src="https://favicons.githubusercontent.com/en.wikipedia.org" height="13"> [Wikipedia](https://en.wikipedia.org) | 🟩 Up | [wikipedia.yml](https://github.com/upptime/upptime/commits/HEAD/history/wikipedia.yml) | <details><summary><img alt="Response time graph" src="./graphs/wikipedia/response-time-week.png" height="20"> 243ms</summary><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="Response time 160" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fresponse-time.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="24-hour response time 293" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fresponse-time-day.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="7-day response time 243" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fresponse-time-week.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="30-day response time 250" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fresponse-time-month.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="1-year response time 162" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fresponse-time-year.json"></a></details> | <details><summary><a href="https://demo.upptime.js.org/history/wikipedia">100.00%</a></summary><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="All-time uptime 99.99%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fuptime.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="24-hour uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fuptime-day.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="7-day uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fuptime-week.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="30-day uptime 99.92%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fuptime-month.json"></a><br><a href="https://demo.upptime.js.org/history/wikipedia"><img alt="1-year uptime 99.99%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fwikipedia%2Fuptime-year.json"></a></details>
| <img alt="" src="https://favicons.githubusercontent.com/news.ycombinator.com" height="13"> [Hacker News](https://news.ycombinator.com) | 🟩 Up | [hacker-news.yml](https://github.com/upptime/upptime/commits/HEAD/history/hacker-news.yml) | <details><summary><img alt="Response time graph" src="./graphs/hacker-news/response-time-week.png" height="20"> 391ms</summary><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="Response time 381" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fresponse-time.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="24-hour response time 355" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fresponse-time-day.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="7-day response time 391" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fresponse-time-week.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="30-day response time 366" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fresponse-time-month.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="1-year response time 380" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fresponse-time-year.json"></a></details> | <details><summary><a href="https://demo.upptime.js.org/history/hacker-news">100.00%</a></summary><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="All-time uptime 99.96%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fuptime.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="24-hour uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fuptime-day.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="7-day uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fuptime-week.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="30-day uptime 100.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fuptime-month.json"></a><br><a href="https://demo.upptime.js.org/history/hacker-news"><img alt="1-year uptime 99.95%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Fhacker-news%2Fuptime-year.json"></a></details>
| <img alt="" src="https://favicons.githubusercontent.com/thissitedoesnotexist.koj.co" height="13"> [Test Broken Site](https://thissitedoesnotexist.koj.co) | 🟥 Down | [test-broken-site.yml](https://github.com/upptime/upptime/commits/HEAD/history/test-broken-site.yml) | <details><summary><img alt="Response time graph" src="./graphs/test-broken-site/response-time-week.png" height="20"> 0ms</summary><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="Response time 543" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fresponse-time.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="24-hour response time 0" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fresponse-time-day.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="7-day response time 0" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fresponse-time-week.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="30-day response time 0" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fresponse-time-month.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="1-year response time 543" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fresponse-time-year.json"></a></details> | <details><summary><a href="https://demo.upptime.js.org/history/test-broken-site">0.00%</a></summary><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="All-time uptime 0.01%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fuptime.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="24-hour uptime 0.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fuptime-day.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="7-day uptime 0.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fuptime-week.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="30-day uptime 0.00%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fuptime-month.json"></a><br><a href="https://demo.upptime.js.org/history/test-broken-site"><img alt="1-year uptime 0.01%" src="https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fupptime%2Fupptime%2FHEAD%2Fapi%2Ftest-broken-site%2Fuptime-year.json"></a></details>
<!--end: status pages-->
<!--start: docs-->
_This README is also available in [🇧🇷 Brazilian Portuguese](./README.pt-br.md)_
## ⭐ How it works
- GitHub Actions is used as an uptime monitor
- Every 5 minutes, a workflow visits your website to make sure it's up
- Response time is recorded every 6 hours and committed to git
- Graphs of response time are generated every day
- GitHub Issues are used for incident reports
- An issue is opened if an endpoint is down
- People from your team are assigned to the issue
- Incidents reports are posted as issue comments
- Issues are locked so non-members cannot comment on them
- Issues are closed automatically when your site comes back up
- Slack notifications are sent on updates
- GitHub Pages are used for the status website
- A simple, beautiful, and accessible PWA is generated
- Built with Svelte and Sapper
- Fetches data from this repository using the GitHub API
_Upptime is not affiliated to or endorsed by GitHub._
[![Screenshot of status website](https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-status.png)](https://upptime.js.org)
## 👩‍💻 [Documentation](https://upptime.js.org)
1. [How it works](https://upptime.js.org/docs)
1. [Getting started](https://upptime.js.org/docs/get-started)
1. [Configuration](https://upptime.js.org/docs/configuration)
1. [Triggers](https://upptime.js.org/docs/triggers)
1. [Notifications](https://upptime.js.org/docs/notifications)
1. [Badges](https://upptime.js.org/docs/badges)
1. [Packages](https://upptime.js.org/docs/packages)
1. [Contributing](https://upptime.js.org/docs/contributing)
1. [Frequently Asked Questions](https://upptime.js.org/docs/faq)
### Concepts
#### Issues as incidents
When the GitHub Actions workflow detects that one of your URLs is down, it automatically opens a GitHub issue ([example issue #15](https://github.com/koj-co/upptime/issues/15)). You can add incident reports to this issue by adding comments. When your site comes back up, the issue will be closed automatically as well.
<table>
<tr>
<td>
<img alt="Screenshot of GitHub issue" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-issue.png">
</td>
<td>
<img alt="Screenshot of incident page" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-incident.png">
</td>
</tr>
</table>
#### Commits for response time
Four times per day, another workflow runs and records the response time of your websites. This data is commited to GitHub, so it's available in the commit history of each file ([example commit history](https://github.com/koj-co/upptime/commits/master/history/wikipedia.yml)). Then, the GitHub API is used to graph the response time history of each endpoint and to track when a site went down.
<table>
<tr>
<td>
<img alt="Screenshot of GitHub commits" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-history.png">
</td>
<td>
<img alt="Screenshot of live status" src="https://raw.githubusercontent.com/upptime/upptime.js.org/master/static/img/screenshot-live-status.png">
</td>
</tr>
</table>
<!--end: docs-->
## 📄 License
- Code: [MIT](./LICENSE) © [Koj](https://koj.co)
- Data in the `./history` directory: [Open Database License](https://opendatacommons.org/licenses/odbl/1-0/)
<!--start: logo-->
<p align="center">
<a href="https://koj.co">
<img width="44" alt="Koj" src="https://kojcdn.com/v1598284251/website-v2/koj-github-footer_m089ze.svg">
</a>
</p>
<p align="center">
<sub>An open source project by <a href="https://koj.co">Koj</a>. <br> <a href="https://koj.co">Furnish your home in style, for as low as CHF175/month →</a></sub>
</p>
<!--end: logo-->

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 24h","message":"69 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 30d","message":"112 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 7d","message":"125 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 1y","message":"89 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time","message":"90 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 24h","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 30d","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 7d","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 1y","message":"100%","color":"brightgreen"}

1
api/google/uptime.json Normal file
View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 24h","message":"355 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 30d","message":"366 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 7d","message":"391 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 1y","message":"380 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time","message":"381 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 24h","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 30d","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 7d","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 1y","message":"99.95%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime","message":"99.96%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 24h","message":"0 ms","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 30d","message":"0 ms","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 7d","message":"0 ms","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 1y","message":"543 ms","color":"yellowgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time","message":"543 ms","color":"yellowgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 24h","message":"0%","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 30d","message":"0%","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 7d","message":"0%","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 1y","message":"0.01%","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime","message":"0.01%","color":"red"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 24h","message":"293 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 30d","message":"250 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 7d","message":"243 ms","color":"green"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time 1y","message":"162 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"response time","message":"160 ms","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 24h","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 30d","message":"99.92%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 7d","message":"100%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime 1y","message":"99.99%","color":"brightgreen"}

View file

@ -0,0 +1 @@
{"schemaVersion":1,"label":"uptime","message":"99.99%","color":"brightgreen"}

4
assets/upptime-icon.svg Normal file
View file

@ -0,0 +1,4 @@
<svg width="54" height="54" viewBox="0 0 54 54" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M53.7565 32.9636L33.9514 10.8852L26.8782 3L19.805 10.8852L0 32.9636L7.07316 40.8488L26.8782 18.7703L46.6833 40.8488L53.7565 32.9636Z" fill="#1ABC9C"/>
<ellipse cx="26.5659" cy="42.375" rx="7.81344" ry="7.63081" fill="#1ABC9C"/>
</svg>

After

Width:  |  Height:  |  Size: 344 B

BIN
graphs/google.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

BIN
graphs/hacker-news.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.6 KiB

BIN
graphs/wikipedia.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

540
history/LICENSE Normal file
View file

@ -0,0 +1,540 @@
## ODC Open Database License (ODbL)
### Preamble
The Open Database License (ODbL) is a license agreement intended to
allow users to freely share, modify, and use this Database while
maintaining this same freedom for others. Many databases are covered by
copyright, and therefore this document licenses these rights. Some
jurisdictions, mainly in the European Union, have specific rights that
cover databases, and so the ODbL addresses these rights, too. Finally,
the ODbL is also an agreement in contract for users of this Database to
act in certain ways in return for accessing this Database.
Databases can contain a wide variety of types of content (images,
audiovisual material, and sounds all in the same database, for example),
and so the ODbL only governs the rights over the Database, and not the
contents of the Database individually. Licensors should use the ODbL
together with another license for the contents, if the contents have a
single set of rights that uniformly covers all of the contents. If the
contents have multiple sets of different rights, Licensors should
describe what rights govern what contents together in the individual
record or in some other way that clarifies what rights apply.
Sometimes the contents of a database, or the database itself, can be
covered by other rights not addressed here (such as private contracts,
trade mark over the name, or privacy rights / data protection rights
over information in the contents), and so you are advised that you may
have to consult other documents or clear other rights before doing
activities not covered by this License.
------
The Licensor (as defined below)
and
You (as defined below)
agree as follows:
### 1.0 Definitions of Capitalised Words
"Collective Database" – Means this Database in unmodified form as part
of a collection of independent databases in themselves that together are
assembled into a collective whole. A work that constitutes a Collective
Database will not be considered a Derivative Database.
"Convey" – As a verb, means Using the Database, a Derivative Database,
or the Database as part of a Collective Database in any way that enables
a Person to make or receive copies of the Database or a Derivative
Database. Conveying does not include interaction with a user through a
computer network, or creating and Using a Produced Work, where no
transfer of a copy of the Database or a Derivative Database occurs.
"Contents" – The contents of this Database, which includes the
information, independent works, or other material collected into the
Database. For example, the contents of the Database could be factual
data or works such as images, audiovisual material, text, or sounds.
"Database" – A collection of material (the Contents) arranged in a
systematic or methodical way and individually accessible by electronic
or other means offered under the terms of this License.
"Database Directive" – Means Directive 96/9/EC of the European
Parliament and of the Council of 11 March 1996 on the legal protection
of databases, as amended or succeeded.
"Database Right" – Means rights resulting from the Chapter III ("sui
generis") rights in the Database Directive (as amended and as transposed
by member states), which includes the Extraction and Re-utilisation of
the whole or a Substantial part of the Contents, as well as any similar
rights available in the relevant jurisdiction under Section 10.4.
"Derivative Database" – Means a database based upon the Database, and
includes any translation, adaptation, arrangement, modification, or any
other alteration of the Database or of a Substantial part of the
Contents. This includes, but is not limited to, Extracting or
Re-utilising the whole or a Substantial part of the Contents in a new
Database.
"Extraction" – Means the permanent or temporary transfer of all or a
Substantial part of the Contents to another medium by any means or in
any form.
"License" – Means this license agreement and is both a license of rights
such as copyright and Database Rights and an agreement in contract.
"Licensor" – Means the Person that offers the Database under the terms
of this License.
"Person" – Means a natural or legal person or a body of persons
corporate or incorporate.
"Produced Work" – a work (such as an image, audiovisual material, text,
or sounds) resulting from using the whole or a Substantial part of the
Contents (via a search or other query) from this Database, a Derivative
Database, or this Database as part of a Collective Database.
"Publicly" – means to Persons other than You or under Your control by
either more than 50% ownership or by the power to direct their
activities (such as contracting with an independent consultant).
"Re-utilisation" – means any form of making available to the public all
or a Substantial part of the Contents by the distribution of copies, by
renting, by online or other forms of transmission.
"Substantial" – Means substantial in terms of quantity or quality or a
combination of both. The repeated and systematic Extraction or
Re-utilisation of insubstantial parts of the Contents may amount to the
Extraction or Re-utilisation of a Substantial part of the Contents.
"Use" – As a verb, means doing any act that is restricted by copyright
or Database Rights whether in the original medium or any other; and
includes without limitation distributing, copying, publicly performing,
publicly displaying, and preparing derivative works of the Database, as
well as modifying the Database as may be technically necessary to use it
in a different mode or format.
"You" – Means a Person exercising rights under this License who has not
previously violated the terms of this License with respect to the
Database, or who has received express permission from the Licensor to
exercise rights under this License despite a previous violation.
Words in the singular include the plural and vice versa.
### 2.0 What this License covers
2.1. Legal effect of this document. This License is:
a. A license of applicable copyright and neighbouring rights;
b. A license of the Database Right; and
c. An agreement in contract between You and the Licensor.
2.2 Legal rights covered. This License covers the legal rights in the
Database, including:
a. Copyright. Any copyright or neighbouring rights in the Database.
The copyright licensed includes any individual elements of the
Database, but does not cover the copyright over the Contents
independent of this Database. See Section 2.4 for details. Copyright
law varies between jurisdictions, but is likely to cover: the Database
model or schema, which is the structure, arrangement, and organisation
of the Database, and can also include the Database tables and table
indexes; the data entry and output sheets; and the Field names of
Contents stored in the Database;
b. Database Rights. Database Rights only extend to the Extraction and
Re-utilisation of the whole or a Substantial part of the Contents.
Database Rights can apply even when there is no copyright over the
Database. Database Rights can also apply when the Contents are removed
from the Database and are selected and arranged in a way that would
not infringe any applicable copyright; and
c. Contract. This is an agreement between You and the Licensor for
access to the Database. In return you agree to certain conditions of
use on this access as outlined in this License.
2.3 Rights not covered.
a. This License does not apply to computer programs used in the making
or operation of the Database;
b. This License does not cover any patents over the Contents or the
Database; and
c. This License does not cover any trademarks associated with the
Database.
2.4 Relationship to Contents in the Database. The individual items of
the Contents contained in this Database may be covered by other rights,
including copyright, patent, data protection, privacy, or personality
rights, and this License does not cover any rights (other than Database
Rights or in contract) in individual Contents contained in the Database.
For example, if used on a Database of images (the Contents), this
License would not apply to copyright over individual images, which could
have their own separate licenses, or one single license covering all of
the rights over the images.
### 3.0 Rights granted
3.1 Subject to the terms and conditions of this License, the Licensor
grants to You a worldwide, royalty-free, non-exclusive, terminable (but
only under Section 9) license to Use the Database for the duration of
any applicable copyright and Database Rights. These rights explicitly
include commercial use, and do not exclude any field of endeavour. To
the extent possible in the relevant jurisdiction, these rights may be
exercised in all media and formats whether now known or created in the
future.
The rights granted cover, for example:
a. Extraction and Re-utilisation of the whole or a Substantial part of
the Contents;
b. Creation of Derivative Databases;
c. Creation of Collective Databases;
d. Creation of temporary or permanent reproductions by any means and
in any form, in whole or in part, including of any Derivative
Databases or as a part of Collective Databases; and
e. Distribution, communication, display, lending, making available, or
performance to the public by any means and in any form, in whole or in
part, including of any Derivative Database or as a part of Collective
Databases.
3.2 Compulsory license schemes. For the avoidance of doubt:
a. Non-waivable compulsory license schemes. In those jurisdictions in
which the right to collect royalties through any statutory or
compulsory licensing scheme cannot be waived, the Licensor reserves
the exclusive right to collect such royalties for any exercise by You
of the rights granted under this License;
b. Waivable compulsory license schemes. In those jurisdictions in
which the right to collect royalties through any statutory or
compulsory licensing scheme can be waived, the Licensor waives the
exclusive right to collect such royalties for any exercise by You of
the rights granted under this License; and,
c. Voluntary license schemes. The Licensor waives the right to collect
royalties, whether individually or, in the event that the Licensor is
a member of a collecting society that administers voluntary licensing
schemes, via that society, from any exercise by You of the rights
granted under this License.
3.3 The right to release the Database under different terms, or to stop
distributing or making available the Database, is reserved. Note that
this Database may be multiple-licensed, and so You may have the choice
of using alternative licenses for this Database. Subject to Section
10.4, all other rights not expressly granted by Licensor are reserved.
### 4.0 Conditions of Use
4.1 The rights granted in Section 3 above are expressly made subject to
Your complying with the following conditions of use. These are important
conditions of this License, and if You fail to follow them, You will be
in material breach of its terms.
4.2 Notices. If You Publicly Convey this Database, any Derivative
Database, or the Database as part of a Collective Database, then You
must:
a. Do so only under the terms of this License or another license
permitted under Section 4.4;
b. Include a copy of this License (or, as applicable, a license
permitted under Section 4.4) or its Uniform Resource Identifier (URI)
with the Database or Derivative Database, including both in the
Database or Derivative Database and in any relevant documentation; and
c. Keep intact any copyright or Database Right notices and notices
that refer to this License.
d. If it is not possible to put the required notices in a particular
file due to its structure, then You must include the notices in a
location (such as a relevant directory) where users would be likely to
look for it.
4.3 Notice for using output (Contents). Creating and Using a Produced
Work does not require the notice in Section 4.2. However, if you
Publicly Use a Produced Work, You must include a notice associated with
the Produced Work reasonably calculated to make any Person that uses,
views, accesses, interacts with, or is otherwise exposed to the Produced
Work aware that Content was obtained from the Database, Derivative
Database, or the Database as part of a Collective Database, and that it
is available under this License.
a. Example notice. The following text will satisfy notice under
Section 4.3:
Contains information from DATABASE NAME, which is made available
here under the Open Database License (ODbL).
DATABASE NAME should be replaced with the name of the Database and a
hyperlink to the URI of the Database. "Open Database License" should
contain a hyperlink to the URI of the text of this License. If
hyperlinks are not possible, You should include the plain text of the
required URI's with the above notice.
4.4 Share alike.
a. Any Derivative Database that You Publicly Use must be only under
the terms of:
i. This License;
ii. A later version of this License similar in spirit to this
License; or
iii. A compatible license.
If You license the Derivative Database under one of the licenses
mentioned in (iii), You must comply with the terms of that license.
b. For the avoidance of doubt, Extraction or Re-utilisation of the
whole or a Substantial part of the Contents into a new database is a
Derivative Database and must comply with Section 4.4.
c. Derivative Databases and Produced Works. A Derivative Database is
Publicly Used and so must comply with Section 4.4. if a Produced Work
created from the Derivative Database is Publicly Used.
d. Share Alike and additional Contents. For the avoidance of doubt,
You must not add Contents to Derivative Databases under Section 4.4 a
that are incompatible with the rights granted under this License.
e. Compatible licenses. Licensors may authorise a proxy to determine
compatible licenses under Section 4.4 a iii. If they do so, the
authorised proxy's public statement of acceptance of a compatible
license grants You permission to use the compatible license.
4.5 Limits of Share Alike. The requirements of Section 4.4 do not apply
in the following:
a. For the avoidance of doubt, You are not required to license
Collective Databases under this License if You incorporate this
Database or a Derivative Database in the collection, but this License
still applies to this Database or a Derivative Database as a part of
the Collective Database;
b. Using this Database, a Derivative Database, or this Database as
part of a Collective Database to create a Produced Work does not
create a Derivative Database for purposes of Section 4.4; and
c. Use of a Derivative Database internally within an organisation is
not to the public and therefore does not fall under the requirements
of Section 4.4.
4.6 Access to Derivative Databases. If You Publicly Use a Derivative
Database or a Produced Work from a Derivative Database, You must also
offer to recipients of the Derivative Database or Produced Work a copy
in a machine readable form of:
a. The entire Derivative Database; or
b. A file containing all of the alterations made to the Database or
the method of making the alterations to the Database (such as an
algorithm), including any additional Contents, that make up all the
differences between the Database and the Derivative Database.
The Derivative Database (under a.) or alteration file (under b.) must be
available at no more than a reasonable production cost for physical
distributions and free of charge if distributed over the internet.
4.7 Technological measures and additional terms
a. This License does not allow You to impose (except subject to
Section 4.7 b.) any terms or any technological measures on the
Database, a Derivative Database, or the whole or a Substantial part of
the Contents that alter or restrict the terms of this License, or any
rights granted under it, or have the effect or intent of restricting
the ability of any person to exercise those rights.
b. Parallel distribution. You may impose terms or technological
measures on the Database, a Derivative Database, or the whole or a
Substantial part of the Contents (a "Restricted Database") in
contravention of Section 4.74 a. only if You also make a copy of the
Database or a Derivative Database available to the recipient of the
Restricted Database:
i. That is available without additional fee;
ii. That is available in a medium that does not alter or restrict
the terms of this License, or any rights granted under it, or have
the effect or intent of restricting the ability of any person to
exercise those rights (an "Unrestricted Database"); and
iii. The Unrestricted Database is at least as accessible to the
recipient as a practical matter as the Restricted Database.
c. For the avoidance of doubt, You may place this Database or a
Derivative Database in an authenticated environment, behind a
password, or within a similar access control scheme provided that You
do not alter or restrict the terms of this License or any rights
granted under it or have the effect or intent of restricting the
ability of any person to exercise those rights.
4.8 Licensing of others. You may not sublicense the Database. Each time
You communicate the Database, the whole or Substantial part of the
Contents, or any Derivative Database to anyone else in any way, the
Licensor offers to the recipient a license to the Database on the same
terms and conditions as this License. You are not responsible for
enforcing compliance by third parties with this License, but You may
enforce any rights that You have over a Derivative Database. You are
solely responsible for any modifications of a Derivative Database made
by You or another Person at Your direction. You may not impose any
further restrictions on the exercise of the rights granted or affirmed
under this License.
### 5.0 Moral rights
5.1 Moral rights. This section covers moral rights, including any rights
to be identified as the author of the Database or to object to treatment
that would otherwise prejudice the author's honour and reputation, or
any other derogatory treatment:
a. For jurisdictions allowing waiver of moral rights, Licensor waives
all moral rights that Licensor may have in the Database to the fullest
extent possible by the law of the relevant jurisdiction under Section
10.4;
b. If waiver of moral rights under Section 5.1 a in the relevant
jurisdiction is not possible, Licensor agrees not to assert any moral
rights over the Database and waives all claims in moral rights to the
fullest extent possible by the law of the relevant jurisdiction under
Section 10.4; and
c. For jurisdictions not allowing waiver or an agreement not to assert
moral rights under Section 5.1 a and b, the author may retain their
moral rights over certain aspects of the Database.
Please note that some jurisdictions do not allow for the waiver of moral
rights, and so moral rights may still subsist over the Database in some
jurisdictions.
### 6.0 Fair dealing, Database exceptions, and other rights not affected
6.1 This License does not affect any rights that You or anyone else may
independently have under any applicable law to make any use of this
Database, including without limitation:
a. Exceptions to the Database Right including: Extraction of Contents
from non-electronic Databases for private purposes, Extraction for
purposes of illustration for teaching or scientific research, and
Extraction or Re-utilisation for public security or an administrative
or judicial procedure.
b. Fair dealing, fair use, or any other legally recognised limitation
or exception to infringement of copyright or other applicable laws.
6.2 This License does not affect any rights of lawful users to Extract
and Re-utilise insubstantial parts of the Contents, evaluated
quantitatively or qualitatively, for any purposes whatsoever, including
creating a Derivative Database (subject to other rights over the
Contents, see Section 2.4). The repeated and systematic Extraction or
Re-utilisation of insubstantial parts of the Contents may however amount
to the Extraction or Re-utilisation of a Substantial part of the
Contents.
### 7.0 Warranties and Disclaimer
7.1 The Database is licensed by the Licensor "as is" and without any
warranty of any kind, either express, implied, or arising by statute,
custom, course of dealing, or trade usage. Licensor specifically
disclaims any and all implied warranties or conditions of title,
non-infringement, accuracy or completeness, the presence or absence of
errors, fitness for a particular purpose, merchantability, or otherwise.
Some jurisdictions do not allow the exclusion of implied warranties, so
this exclusion may not apply to You.
### 8.0 Limitation of liability
8.1 Subject to any liability that may not be excluded or limited by law,
the Licensor is not liable for, and expressly excludes, all liability
for loss or damage however and whenever caused to anyone by any use
under this License, whether by You or by anyone else, and whether caused
by any fault on the part of the Licensor or not. This exclusion of
liability includes, but is not limited to, any special, incidental,
consequential, punitive, or exemplary damages such as loss of revenue,
data, anticipated profits, and lost business. This exclusion applies
even if the Licensor has been advised of the possibility of such
damages.
8.2 If liability may not be excluded by law, it is limited to actual and
direct financial loss to the extent it is caused by proved negligence on
the part of the Licensor.
### 9.0 Termination of Your rights under this License
9.1 Any breach by You of the terms and conditions of this License
automatically terminates this License with immediate effect and without
notice to You. For the avoidance of doubt, Persons who have received the
Database, the whole or a Substantial part of the Contents, Derivative
Databases, or the Database as part of a Collective Database from You
under this License will not have their licenses terminated provided
their use is in full compliance with this License or a license granted
under Section 4.8 of this License. Sections 1, 2, 7, 8, 9 and 10 will
survive any termination of this License.
9.2 If You are not in breach of the terms of this License, the Licensor
will not terminate Your rights under it.
9.3 Unless terminated under Section 9.1, this License is granted to You
for the duration of applicable rights in the Database.
9.4 Reinstatement of rights. If you cease any breach of the terms and
conditions of this License, then your full rights under this License
will be reinstated:
a. Provisionally and subject to permanent termination until the 60th
day after cessation of breach;
b. Permanently on the 60th day after cessation of breach unless
otherwise reasonably notified by the Licensor; or
c. Permanently if reasonably notified by the Licensor of the
violation, this is the first time You have received notice of
violation of this License from the Licensor, and You cure the
violation prior to 30 days after your receipt of the notice.
Persons subject to permanent termination of rights are not eligible to
be a recipient and receive a license under Section 4.8.
9.5 Notwithstanding the above, Licensor reserves the right to release
the Database under different license terms or to stop distributing or
making available the Database. Releasing the Database under different
license terms or stopping the distribution of the Database will not
withdraw this License (or any other license that has been, or is
required to be, granted under the terms of this License), and this
License will continue in full force and effect unless terminated as
stated above.
### 10.0 General
10.1 If any provision of this License is held to be invalid or
unenforceable, that must not affect the validity or enforceability of
the remainder of the terms and conditions of this License and each
remaining provision of this License shall be valid and enforced to the
fullest extent permitted by law.
10.2 This License is the entire agreement between the parties with
respect to the rights granted here over the Database. It replaces any
earlier understandings, agreements or representations with respect to
the Database.
10.3 If You are in breach of the terms of this License, You will not be
entitled to rely on the terms of this License or to complain of any
breach by the Licensor.
10.4 Choice of law. This License takes effect in and will be governed by
the laws of the relevant jurisdiction in which the License terms are
sought to be enforced. If the standard suite of rights granted under
applicable copyright law and Database Rights in the relevant
jurisdiction includes additional rights not granted under this License,
these additional rights are granted in this License in order to meet the
terms of this License.

7
history/google.yml Normal file
View file

@ -0,0 +1,7 @@
url: https://www.google.com
status: up
code: 200
responseTime: 69
lastUpdated: 2021-08-15T23:00:50.209Z
startTime: Mon Aug 10 2020 07:54:39 GMT+0000 (Coordinated Universal Time)
generator: Upptime <https://github.com/upptime/upptime>

7
history/hacker-news.yml Normal file
View file

@ -0,0 +1,7 @@
url: https://news.ycombinator.com
status: up
code: 200
responseTime: 355
lastUpdated: 2021-08-15T23:00:51.462Z
startTime: Mon Aug 10 2020 07:54:43 GMT+0000 (Coordinated Universal Time)
generator: Upptime <https://github.com/upptime/upptime>

199
history/summary.json Normal file
View file

@ -0,0 +1,199 @@
[
{
"name": "Google",
"url": "https://www.google.com",
"icon": "https://favicons.githubusercontent.com/www.google.com",
"slug": "google",
"status": "up",
"uptime": "100.00%",
"uptimeDay": "100.00%",
"uptimeWeek": "100.00%",
"uptimeMonth": "100.00%",
"uptimeYear": "100.00%",
"time": 90,
"timeDay": 69,
"timeWeek": 125,
"timeMonth": 112,
"timeYear": 89,
"dailyMinutesDown": {}
},
{
"name": "Wikipedia",
"url": "https://en.wikipedia.org",
"icon": "https://favicons.githubusercontent.com/en.wikipedia.org",
"slug": "wikipedia",
"status": "up",
"uptime": "99.99%",
"uptimeDay": "100.00%",
"uptimeWeek": "100.00%",
"uptimeMonth": "99.92%",
"uptimeYear": "99.99%",
"time": 160,
"timeDay": 293,
"timeWeek": 243,
"timeMonth": 250,
"timeYear": 162,
"dailyMinutesDown": {
"2021-07-16": 36
}
},
{
"name": "Hacker News",
"url": "https://news.ycombinator.com",
"icon": "https://favicons.githubusercontent.com/news.ycombinator.com",
"slug": "hacker-news",
"status": "up",
"uptime": "99.96%",
"uptimeDay": "100.00%",
"uptimeWeek": "100.00%",
"uptimeMonth": "100.00%",
"uptimeYear": "99.95%",
"time": 381,
"timeDay": 355,
"timeWeek": 391,
"timeMonth": 366,
"timeYear": 380,
"dailyMinutesDown": {
"2021-04-28": 38,
"2021-03-15": 199
}
},
{
"name": "Test Broken Site",
"url": "https://thissitedoesnotexist.koj.co",
"icon": "https://favicons.githubusercontent.com/thissitedoesnotexist.koj.co",
"slug": "test-broken-site",
"status": "down",
"uptime": "0.01%",
"uptimeDay": "0.00%",
"uptimeWeek": "0.00%",
"uptimeMonth": "0.00%",
"uptimeYear": "0.01%",
"time": 543,
"timeDay": 0,
"timeWeek": 0,
"timeMonth": 0,
"timeYear": 543,
"dailyMinutesDown": {
"2021-08-16": 43,
"2021-08-15": 1440,
"2021-08-14": 1440,
"2021-08-13": 1440,
"2021-08-12": 1440,
"2021-08-11": 1440,
"2021-08-10": 1440,
"2021-08-09": 1440,
"2021-08-08": 1440,
"2021-08-07": 1440,
"2021-08-06": 1440,
"2021-08-05": 1440,
"2021-08-04": 1440,
"2021-08-03": 1440,
"2021-08-02": 1440,
"2021-08-01": 1440,
"2021-07-31": 1440,
"2021-07-30": 1440,
"2021-07-29": 1440,
"2021-07-28": 1440,
"2021-07-27": 1440,
"2021-07-26": 1440,
"2021-07-25": 1440,
"2021-07-24": 1440,
"2021-07-23": 1440,
"2021-07-22": 1440,
"2021-07-21": 1440,
"2021-07-20": 1440,
"2021-07-19": 1440,
"2021-07-18": 1440,
"2021-07-17": 1440,
"2021-07-16": 1440,
"2021-07-15": 1440,
"2021-07-14": 1440,
"2021-07-13": 1440,
"2021-07-12": 1440,
"2021-07-11": 1440,
"2021-07-10": 1440,
"2021-07-09": 1440,
"2021-07-08": 1440,
"2021-07-07": 1440,
"2021-07-06": 1440,
"2021-07-05": 1440,
"2021-07-04": 1440,
"2021-07-03": 1440,
"2021-07-02": 1440,
"2021-07-01": 1440,
"2021-06-30": 1440,
"2021-06-29": 1440,
"2021-06-28": 1440,
"2021-06-27": 1440,
"2021-06-26": 1440,
"2021-06-25": 1440,
"2021-06-24": 1440,
"2021-06-23": 1440,
"2021-06-22": 1440,
"2021-06-21": 1440,
"2021-06-20": 1440,
"2021-06-19": 1440,
"2021-06-18": 1440,
"2021-06-17": 1440,
"2021-06-16": 1440,
"2021-06-15": 1440,
"2021-06-14": 1440,
"2021-06-13": 1440,
"2021-06-12": 1440,
"2021-06-11": 1440,
"2021-06-10": 1440,
"2021-06-09": 1440,
"2021-06-08": 1440,
"2021-06-07": 1440,
"2021-06-06": 1440,
"2021-06-05": 1440,
"2021-06-04": 1440,
"2021-06-03": 1440,
"2021-06-02": 1440,
"2021-06-01": 1440,
"2021-05-31": 1440,
"2021-05-30": 1440,
"2021-05-29": 1440,
"2021-05-28": 1440,
"2021-05-27": 1440,
"2021-05-26": 1440,
"2021-05-25": 1440,
"2021-05-24": 1440,
"2021-05-23": 1440,
"2021-05-22": 1440,
"2021-05-21": 1440,
"2021-05-20": 1440,
"2021-05-19": 1440,
"2021-05-18": 1440,
"2021-05-17": 1440,
"2021-05-16": 1440,
"2021-05-15": 1440,
"2021-05-14": 1440,
"2021-05-13": 1440,
"2021-05-12": 1440,
"2021-05-11": 1440,
"2021-05-10": 1440,
"2021-05-09": 1440,
"2021-05-08": 1440,
"2021-05-07": 1440,
"2021-05-06": 1440,
"2021-05-05": 1440,
"2021-05-04": 1440,
"2021-05-03": 1440,
"2021-05-02": 1440,
"2021-05-01": 1440,
"2021-04-30": 1440,
"2021-04-29": 1440,
"2021-04-28": 1440,
"2021-04-27": 1440,
"2021-04-26": 1440,
"2021-04-25": 1440,
"2021-04-24": 1440,
"2021-04-23": 1440,
"2021-04-22": 1440,
"2021-04-21": 1440,
"2021-04-20": 844
}
}
]

View file

@ -0,0 +1,7 @@
url: https://thissitedoesnotexist.koj.co
status: down
code: 0
responseTime: 0
lastUpdated: 2021-08-15T23:00:51.858Z
startTime: Tue Apr 20 2021 09:46:06 GMT+0000 (Coordinated Universal Time)
generator: Upptime <https://github.com/upptime/upptime>

7
history/wikipedia.yml Normal file
View file

@ -0,0 +1,7 @@
url: https://en.wikipedia.org
status: up
code: 200
responseTime: 293
lastUpdated: 2021-08-15T23:00:50.818Z
startTime: Mon Aug 10 2020 07:54:40 GMT+0000 (Coordinated Universal Time)
generator: Upptime <https://github.com/upptime/upptime>