1.0.3 • Published 11 months ago

keep-alive-package v1.0.3

Weekly downloads
-
License
MIT
Repository
-
Last release
11 months ago

🛠️ Keep Alive Package

A simple and lightweight npm package to keep your server alive by periodically pinging it. Support human-readable time intervals like 1m, 10m, 1hr 29m.

🚀 Installation

Install the package using npm:

npm install keep-alive-package

🔧 Usage

Import the package in your project and use it to keep your server alive:

const keepServerAlive = require("keep-alive-package");

// Basic usage with a server URL and interval
keepServerAlive(process.env.BACKEND_SERVER_URL, "10m");

📅 Supported Time Intervals

You can specify the interval using:

  • Cron expressions: */5 * * * * (every 5 minutes)
  • Human-readable formats:
    • "1m" (every 1 minute)
    • "10m" (every 10 minutes)
    • "1hr 29m" (every 1 hour and 29 minutes)

📝 API

keepServerAlive(url, interval)

  • url: (string) The server URL to ping. Required.
  • interval: (string) The interval for pinging the server. Supports cron expressions or human-readable intervals like 1m, 10m, 1hr 29m. Defaults to "10m".

Example

const keepServerAlive = require("keep-alive-package");

// Keep server alive every minute
keepServerAlive("https://your-server-url.com", "1m");

// Keep server alive every 1 hour and 29 minutes
keepServerAlive("https://your-server-url.com", "1hr 29m");

⚠️ Error Handling

If the server URL is missing or the interval is invalid, the package will log an error message to the console.

📦 Dependencies

  • axios: For making HTTP requests.
  • node-cron: For scheduling tasks.
  • ms: For parsing human-readable time intervals.

🏗️ Contributing

Feel free to contribute by opening issues, submitting pull requests, or improving the documentation.

  1. Fork the repository
  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

This project is licensed under the MIT License - see the LICENSE file for details.

🙌 Acknowledgements

Thanks to the developers of axios, node-cron, and ms for their great packages that make this tool possible!


Made with ❤️ by Ehsan

1.0.3

11 months ago

1.0.2

11 months ago

1.0.1

11 months ago

1.0.0

11 months ago