From 4653d847abbdc117be38c400ba44f1700c33c13d Mon Sep 17 00:00:00 2001 From: James Brooks Date: Mon, 29 Dec 2014 00:10:38 +0000 Subject: [PATCH] Finish writing introduction to Cachet --- docs/intro/readme.md | 46 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/docs/intro/readme.md b/docs/intro/readme.md index 32438873..15d3c618 100644 --- a/docs/intro/readme.md +++ b/docs/intro/readme.md @@ -4,6 +4,52 @@ This document is a brief breakdown of what Cachet is, why it was built and how i ## What is Cachet? +Cachet is a status page used for informing your customers/employees/developers with any updates or issues affecting your service and the individual components which make it up. + +For example, if you're running an online store, you may have the following components powering it: + +- Stripe (payments) +- Storefront (website) +- CDN +- API + +If your API breaks, developers may want to know what's going on as their integrations will have broken. You can easily update the status of the component and then create a new incident explaining the issue. As you progress through to rectifying the issue you can create more incidents with a new status. Eventually you'll have fixed the issue and your service status banner will turn green. + ## Why build it? +Originally built by [James Brooks](http://james-brooks.uk/cachet/), Cachet was a solution to a problem. Whilst there was [StatusPage.io](https://statuspage.io), it's an expensive service for the [small service](http://anorakci.com) that was being built at the time. + +Since Cachet is open source, **anybody** can run it and anybody can contribute to it. Contributions make software better and having the freedom to fork and improve upon it means it'll be forever improving. + ## How does it work? + +Cachet is built upon two core concepts: + +- [Components](#components) +- [Incidents](#incidents) + +Here we'll break down these concepts and how they work together. Cachet also uses metrics, however they're an optional feature of Cachet that can be unused without affecting anything. + +### Components + +A component is setup for each of the core, individual parts to a service or product, for instance; + +- API +- Website +- CDN +- Payments + +In the future Cachet will be able to create third-party components directly for things like: + +- GitHub +- Stripe +- Intercom +- Desk.com + +And automatically update the status based on their current service status. + +### Incidents + +Incidents are individual to components but come pre-designed to be linked against one of them, this background feature is ready for third-party components which will be coming later on. + +An incident is a status update containing a title, message and readable status.