# @igorkowalczyk/repl-uptime

> 🤙 Don't let your repl go to sleep! Create a http server with just few lines of code and keep pinging it!

Latest version **1.6.1** (published 2025-12-27) · MIT license · 0 weekly downloads

## Install

```sh
npm install @igorkowalczyk/repl-uptime
pnpm add @igorkowalczyk/repl-uptime
yarn add @igorkowalczyk/repl-uptime
bun add @igorkowalczyk/repl-uptime
```

## Health

**Score 65/100 (B)** — status: stable.

Positive: has types; esm support; no vulnerabilities; has provenance; high quality score.

Warnings: low downloads.

## Facts

| | |
|---|---|
| Version | 1.6.1 |
| Published | 2025-12-27 |
| First published | 2022-04-16 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM |
| Dependencies | 0 |
| Unpacked size | 13.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Provenance | attested (GitHub Actions) |
| Author | Igor Kowalczyk |
| Maintainers | igorkowalczyk |
| Keywords | replit, repl, uptime, ping, http, api, server, uptime |

## Links

- npm: https://www.npmjs.com/package/@igorkowalczyk/repl-uptime
- Repository: https://github.com/IgorKowalczyk/repl-uptime
- Homepage: https://github.com/IgorKowalczyk/repl-uptime#readme
- Issues: https://github.com/igorkowalczyk/repl-uptime/issues
- Funding: https://github.com/sponsors/igorkowalczyk
- npm.io page: https://npm.io/package/@igorkowalczyk/repl-uptime

## Recent versions

- 1.6.1 (latest) — 2025-12-27
- 1.6.0 — 2024-10-13
- 1.5.2 — 2023-09-24
- 1.5.1 — 2023-08-12
- 1.5.0 — 2023-07-31
- 1.4.0 — 2023-07-06
- 1.3.0 — 2022-12-20
- 1.2.1 — 2022-06-20
- 1.2.0 — 2022-04-16

## README

![Repl-uptime](https://github.com/IgorKowalczyk/repl-uptime/assets/49127376/bba7b12a-875d-4d71-b595-4b9a9ab0f965)

<div align="center">
  <a aria-label="GitHub License" href="https://github.com/igorkowalczyk/repl-uptime/blob/main/license.md">
    <img src="https://img.shields.io/github/license/igorkowalczyk/repl-uptime?color=%23F26207&logo=github&style=flat-square&label=License">
  </a>
  <a aria-label="NPM Version" href="https://npmjs.com/package/@igorkowalczyk/repl-uptime">
    <img src="https://img.shields.io/npm/v/%40igorkowalczyk%2Frepl-uptime/latest.svg?logo=npm&logoColor=fff&style=flat-square&color=%23F26207&label=Version">
  </a>
  <a aria-label="NPM Downloads" href="https://npmjs.com/package/@igorkowalczyk/repl-uptime">
    <img src="https://img.shields.io/npm/dw/%40igorkowalczyk%2Frepl-uptime?logo=npm&logoColor=fff&style=flat-square&color=%23F26207&label=Downloads">
  </a>
</div>

---

## 📥 Installation

**Node.js v12.0.0 or newer is required.**

```sh
npm install @igorkowalczyk/repl-uptime
yarn add @igorkowalczyk/repl-uptime
pnpm add @igorkowalczyk/repl-uptime
```

## 📦 Examples

**No Config**

```javascript
/// ES6
import Server from "@igorkowalczyk/repl-uptime";
new Server();

/// CommonJS
const Server = require("@igorkowalczyk/repl-uptime");
new Server();
```

**That's it!** 🎉 Your repl is now ready to be pinged. You can use [uptimerobot.com](https://uptimerobot.com) or [hetrixtools.com](https://hetrixtools.com) to ping your repl.

**With Config (Advanced)**

```javascript
/// ES6
import Server from "@igorkowalczyk/repl-uptime";
new Server({
  port: 8080,
  path: "/",
  message: "🤙 Don't let your repl go to sleep!",
  debug: true,
});

/// CommonJS
const Server = require("@igorkowalczyk/repl-uptime");

new Server({
  port: 8080,
  path: "/",
  message: "🤙 Don't let your repl go to sleep!",
  debug: true,
});
```

## 📚 Documentation

### 🔧 Properties

| Option    | Type      | Default   | Description                                                                                                                        |
| --------- | --------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `port`    | `Number`  | `8080`    | The port number on which the server will listen for incoming requests.                                                             |
| `path`    | `String`  | `/`       | The custom URL path to be used for handling incoming requests.                                                                     |
| `message` | `String`  | `200 OK!` | The custom response message that will be sent back to clients when the request is successfully handled. Can be HTML or plain text. |
| `debug`   | `Boolean` | `false`   | If set to `true`, enables debugging mode, which may log additional information about the server's behavior.                        |

### 📜 Functions

| Function               | Description                                                                                                                                                                                                                                                   |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `constructor(options)` | Initializes the server with the provided options and starts listening on the specified port.                                                                                                                                                                  |
| `listen()`             | Starts the server to listen for incoming requests on the specified port. Returns a promise that resolves when the server starts listening successfully. If an error occurs, the promise is rejected. The function is called automatically by the constructor. |
| `stop()`               | Stops the server and closes the underlying HTTP server instance. Returns a promise that resolves when the server is successfully closed. If an error occurs, the promise is rejected.                                                                         |

## ⁉️ Issues

If you come across any errors or have suggestions for improvements, please create a [new issue here](https://github.com/igorkowalczyk/repl-uptime/issues) and describe it clearly.

## 📥 Pull Requests

When submitting a pull request, please follow these steps:

- Clone [this repository](https://github.com/igorkowalczyk/repl-uptime) `https://github.com/IgorKowalczyk/repl-uptime.git`
- Create a branch from `main` and give it a meaningful name (e.g. `my-awesome-new-feature`).
- Open a [pull request](https://github.com/igorkowalczyk/repl-uptime/pulls) on [GitHub](https://github.com/) and clearly describe the feature or fix you are proposing.

## 📋 License

This project is licensed under the MIT. See the [LICENSE](https://github.com/igorkowalczyk/repl-uptime/blob/main/license.md) file for details

---

<sub>This package is an independent project and is not affiliated, endorsed, or associated with <a href="https://replit.com">Replit</a> in any way.</sub>

---
_Source: https://npm.io/package/@igorkowalczyk/repl-uptime · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
