DEV Community

Cover image for I wrote this app to practice my React, Node, Mongo, Redis and Docker skills
Geoffroy Empain
Geoffroy Empain

Posted on • Edited on

10 4

I wrote this app to practice my React, Node, Mongo, Redis and Docker skills

Hi there 👋

Last week, as I was struggling to connect to my Gitlab.com account, I noticed that their status page was mentioning operational while in reality they were down - they later reported the incident.

That gave me the idea (spoiler alert, it's not something new) to create a very simple, painless website monitoring app where I could just add endpoints easily and get notified when something went down. Sure, I could use Prometheus and Grafana, but it's a hassle to manage when you've got several projects to monitor - and for most projects, I honestly don't look at CPU usage etc, I just want to know if they're up or down, so deploying the whole stack is unnecessary. Then you've got things like UpDown and Uptime Robot - and I'm certainly missing many others - but where's the fun when I have spare time and could practice my React, NodeJS, and MongoDB skills ?

I also wanted to experiment with Redis which I've heard so much about, configured in so many docker-compose.yml files but never actually used in code. I've also wanted to use Stripe's API and see how I could integrate billing in my apps for a while, so I figured this would be a good occasion - and I have to tell you, it is by far the most well designed, documented and sdk-complete API I have ever used (disclaimer, I don't work for Stripe, I just think it's important to recognize when something's truly great).

My requirements were quite simple:

  • simple way to add endpoints and customize request method and headers
  • simple way to configure notifications (email, Slack, Mattermost...)
  • a way to check my endpoints from different places in the world
  • fine tune the amount of down time before getting a notification
  • have a nice status page with cool - but meaningful - graphs

I also needed a cool name, so I went with "Probe" - I found the idea of having probes around the world a good match.

I published the app this week at https://probe.sh and would love to know what you think ! I was thinking about open sourcing it on Github as probe-sh/probe so anyone could self-host and help making it better - what do you think ? What license should I use ?

I've only deployed probes to France and Canada for now, but if you want other locations, additional notification types or features, let me know on Twitter @probe_sh or on Github 🚀. I'm already planning to add a public status page for endpoints and a way to group them - stay tuned !

Looking forward to your feedback 🎉

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More

Top comments (0)

Billboard image

Try REST API Generation for MS SQL Server.

DevOps for Private APIs. With DreamFactory API Generation, you get:

  • Auto-generated live APIs mapped from database schema
  • Interactive Swagger API documentation
  • Scripting engine to customize your API
  • Built-in role-based access control

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay