> For the complete documentation index, see [llms.txt](https://docs.ipcheck.ing/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ipcheck.ing/developer/configuration/features-tied-to-ipcheck-ing.md).

# Features Tied to IPCheck.ing

MyIP is designed to be fully self-hostable: every core tool works on your own deployment with no special access. A small set of features, however, rides on a **closed companion service** operated for the official site, [ipcheck.ing](https://ipcheck.ing). This page lists exactly what they are, so you know what to expect from a fork — before you file an issue about a "missing" tool.

{% hint style="info" %}
**How the gating works.** The backend tells the frontend whether it is serving the official site (`/api/configs` returns an `originalSite` flag based on the request hostname). Tools marked as official-site-only are simply not rendered anywhere else — they don't appear broken; they don't appear at all.
{% endhint %}

## What's different on a fork

| Feature                        | Where it appears                                  | On your fork                                                                                                                                                                                                                                |
| ------------------------------ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Invisibility Test**          | Advanced Tools drawer                             | Hidden. The tool calls a private proxy-detection backend.                                                                                                                                                                                   |
| **In-depth DNS Leak Test**     | Advanced Tools drawer                             | Hidden. The standard [DNS Leak Test](https://docs.ipcheck.ing/knowledge-base/connection-tools/dns-leak-test) on the main page works everywhere.                                                                                             |
| **IPCheck.ing IP data source** | IP cards + the IP detail panel                    | Skipped — the card chain falls back to the other sources, and this source's detail-panel extras (IP type, proxy detection, quality score) are not shown.                                                                                    |
| **Accounts (sign-in)**         | Navigation bar                                    | Absent unless you configure your own Firebase project (`VITE_FIREBASE_*` variables). MyIP never requires sign-in for any core tool.                                                                                                         |
| **Achievements**               | Achievement toasts + profile                      | Effectively official-site-only: unlocks are stored through the private user API, even if you wire up your own sign-in.                                                                                                                      |
| **Docs assistant**             | Nav search box (desktop) / question icon (mobile) | Hidden. It answers from IPCheck.ing's own documentation site, so the entry point is gated on the canonical deployment as well as on [`VITE_DOCS_URL`](/developer/reference/environment-variables.md#vite-docs-url) being set at build time. |

The environment variables behind the private service (`IPCHECKING_API_KEY`, `IPCHECKING_API_ENDPOINT`, `VITE_INVISIBILITY_TEST_KEY`) are documented in the [Environment Variables](/developer/reference/environment-variables.md) reference for completeness, but the credentials are not distributed — setting them to arbitrary values does nothing useful.

## Why these are closed

The companion API simply isn't mature enough to open-source yet — its code and interfaces are still changing too fast to support outside deployments. It may open up once it stabilizes, but there is currently no timeline, and no self-host path for these features in the meantime.

## Everything else works

To be explicit: the six-section dashboard (IP cards, Connectivity, WebRTC, DNS Leak, Speed Test) and every other advanced tool — Global Latency, MTR, Rule Test, DNS Resolver, Censorship Check, Whois, MAC Lookup, ASN panels, Browser Fingerprint, Security Checklist — run entirely on public infrastructure and open code, subject only to the [optional API keys](/developer/configuration/optional-api-keys.md) you choose to configure.

{% hint style="success" %}
Deploying your own instance? Start at the [Quickstart](/developer/getting-started/quickstart.md) — the only hard requirement is a free [MaxMind account](/developer/getting-started/maxmind-setup.md).
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.ipcheck.ing/developer/configuration/features-tied-to-ipcheck-ing.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
