codeshifu / Pingmydyno
Licence: mit
Keep Heroku dynos awake forever ☕️
Stars: ✭ 22
Programming Languages
typescript
32286 projects
Projects that are alternatives of or similar to Pingmydyno
Packtpub Crawler
Download your daily free Packt Publishing eBook https://www.packtpub.com/packt/offers/free-learning
Stars: ✭ 717 (+3159.09%)
Mutual labels: heroku
Url To Pdf Api
Web page PDF/PNG rendering done right. Self-hosted service for rendering receipts, invoices, or any content.
Stars: ✭ 6,544 (+29645.45%)
Mutual labels: heroku
Gautocloud
A golang library to let cloud applications connect automatically to services.
Stars: ✭ 17 (-22.73%)
Mutual labels: heroku
Node Typescript Koa Rest
REST API boilerplate using NodeJS and KOA2, typescript. Logging and JWT as middlewares. TypeORM with class-validator, SQL CRUD. Docker included. Swagger docs, actions CI and valuable README
Stars: ✭ 739 (+3259.09%)
Mutual labels: heroku
Traypingapp
📡 OSX tray application showing DNS and ping latency
Stars: ✭ 5 (-77.27%)
Mutual labels: ping
Django Photoblog
Photographer portfolio website powered by Django Framework. Features photo gallery with infinite scrolling, tagging, thumbnail generation and CMS for creating pages. Configured for Heroku and S3.
Stars: ✭ 19 (-13.64%)
Mutual labels: heroku
Www.ruby Lang.org
Source of the https://www.ruby-lang.org website.
Stars: ✭ 790 (+3490.91%)
Mutual labels: heroku
Rails Template
Application template for Rails 6 projects; preloaded with best practices for TDD, security, deployment, and developer productivity.
Stars: ✭ 763 (+3368.18%)
Mutual labels: heroku
Jekyll Auth
A simple way to use GitHub OAuth to serve a protected Jekyll site to your GitHub organization
Stars: ✭ 778 (+3436.36%)
Mutual labels: heroku
Heroku Cra Node
⚛️ How to use create-react-app with a custom Node server on Heroku
Stars: ✭ 822 (+3636.36%)
Mutual labels: heroku
Ghost On Heroku
One-button Heroku deploy for the Ghost blogging platform.
Stars: ✭ 731 (+3222.73%)
Mutual labels: heroku
Satis On Heroku
Your private Satis instance on Heroku, just one click away.
Stars: ✭ 5 (-77.27%)
Mutual labels: heroku
Piku
The tiniest PaaS you've ever seen. Piku allows you to do git push deployments to your own servers.
Stars: ✭ 902 (+4000%)
Mutual labels: heroku
Great Big Example Application
A full-stack example app built with JHipster, Spring Boot, Kotlin, Angular 4, ngrx, and Webpack
Stars: ✭ 899 (+3986.36%)
Mutual labels: heroku
Heroku Django Template
A Django 2.0 base template featuring all recommended best practices for deployment on Heroku and local development.
Stars: ✭ 887 (+3931.82%)
Mutual labels: heroku
Why?
Heroku (free) dynos are great for hosting apps and showing them off to your boss/friends or potential employer. The downside, however, is that your app will fall asleep 😴 if it doesn't receive any web traffic within a 30-minute window.
pingmydyno
solves this by pinging your server periodically so it never falls asleep.
Features
- Forever dyno pings
- Automatically retry ping on failure
Installation
npm install pingmydyno
# or using yarn
yarn add pingmydyno
Usage
With Express.js (ES6 module)
...
import express from 'express';
import pingmydyno from 'pingmydyno';
const app = express();
...
app.listen(PORT, () => {
pingmydyno('https://myapp.herokuapp.com');
});
With Hapi.js (commonJS)
const Hapi = require('hapi');
const pingmydyno = require('pingmydyno');
const server = Hapi.server({ port, host });
async () => {
await server.start();
pingmydyno('https://myapp.herokuapp.com');
};
With Koa.js
const Koa = require('koa');
const pingmydyno = require('pingmydyno');
const app = new Koa();
const url = process.env.APP_URL;
...
app.listen(3000).on('listening', () => {
pingmydyno(url, {
pingInterval: 60 * 15 * 1000, // ping every 15mins
onFailure() {
// logger
}
})
})
APIs
pingmydyno(url, [Config])
url
Type: string
Required: yes
Config
Type: Object
Required: no
value | default | description | |
---|---|---|---|
pingInterval | number (milliseconds) | 1200000 | interval between the next ping (max = 25mins) |
maxRetry | number | 2 | retry times when ping fail |
onSuccess | function | ( ) => null | callback function called when a ping is successful |
onFailure | function | ( ) => null | callback function called when maxRetry ping failed |
Contributors
Thanks goes to these wonderful people (emoji key):
Kizito Akhilome 💻 |
Luqman Olushi O. 🐛 💻 📖 🚧 |
This project follows the all-contributors specification. Contributions of any kind welcome!
License
This project is license under MIT
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].