diff --git a/.env.example b/.env.example
deleted file mode 100644
index 8022d3f4e4..0000000000
--- a/.env.example
+++ /dev/null
@@ -1,6 +0,0 @@
-DOMAIN_USER=username
-DOMAIN_API_KEY=apikey
-DOMAIN_API_HOST=api-example.com
-DOMAIN_API_PORT=2087
-DOMAIN_DOMAIN=example.com
-DOMAIN_HOST_IP=69.69.69.69
diff --git a/.envrc b/.envrc
deleted file mode 100644
index 4a4726a5c7..0000000000
--- a/.envrc
+++ /dev/null
@@ -1 +0,0 @@
-use_nix
diff --git a/.eslintrc.json b/.eslintrc.json
deleted file mode 100644
index b35636417e..0000000000
--- a/.eslintrc.json
+++ /dev/null
@@ -1,31 +0,0 @@
-{
- "extends": [
- "eslint:recommended",
- "plugin:node/recommended",
- "plugin:json/recommended"
- ],
- "parserOptions": {
- "ecmaVersion": 2020
- },
- "rules": {
- "indent": ["error", 2],
- "max-len": ["error", {
- "code": 100,
- "ignoreStrings": true,
- "ignoreTemplateLiterals": true,
- "ignoreTrailingComments": true
- }],
- "node/exports-style": ["error", "module.exports"],
- "node/file-extension-in-import": ["error", "always"],
- "node/prefer-global/buffer": ["error", "always"],
- "node/prefer-global/console": ["error", "always"],
- "node/prefer-global/process": ["error", "always"],
- "node/prefer-global/url-search-params": ["error", "always"],
- "node/prefer-global/url": ["error", "always"],
- "node/prefer-promises/dns": "error",
- "node/prefer-promises/fs": "error",
- "no-process-exit": [0],
- "node/no-unsupported-features/node-builtins": [0],
- "node/no-unsupported-features/es-syntax": [0]
- }
-}
diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index 3747adddcd..07ba168b9e 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -1,6 +1,8 @@
* @phenax @wdhdev
/.github/ @wdhdev
-/domains/ @is-a-dev/maintainers @is-a-dev/trial-maintainers
+/domains/ @is-a-dev/maintainers
*.md @is-a-dev/maintainers
+/LICENSE @phenax
+/dnsconfig.js @wdhdev @andrewstech
diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml
deleted file mode 100644
index be5f73e48b..0000000000
--- a/.github/workflows/checks.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-name: Checks
-
-on: [pull_request, workflow_dispatch]
-
-jobs:
- validation:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- with:
- ref: ${{ github.event.pull_request.head.sha }}
- fetch-depth: 0
- - uses: oven-sh/setup-bun@v1
- with:
- bun-version: latest
- - run: bun install
- - name: Run tests
- run: bun test
diff --git a/.github/workflows/publish-records.yml b/.github/workflows/publish-records.yml
deleted file mode 100644
index 40e58b3ea1..0000000000
--- a/.github/workflows/publish-records.yml
+++ /dev/null
@@ -1,30 +0,0 @@
-name: Publish records
-
-on:
- push:
- branches: [main]
- workflow_dispatch:
-
-jobs:
- publish:
- if: github.repository == 'is-a-dev/register'
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v4
- - uses: oven-sh/setup-bun@v1
- with:
- bun-version: latest
- - run: bun install
- - run: bun test
- - name: Publishing records
- env:
- CI: 1
- NODE_ENV: production
- ENV: production
- DOMAIN_USER: ${{ secrets.DOMAIN_USER }}
- DOMAIN_API_KEY: ${{ secrets.DOMAIN_API_KEY }}
- DOMAIN_API_HOST: ${{ secrets.DOMAIN_API_HOST }}
- DOMAIN_API_PORT: ${{ secrets.DOMAIN_API_PORT }}
- DOMAIN_DOMAIN: ${{ secrets.DOMAIN_DOMAIN }}
- DOMAIN_HOST_IP: ${{ secrets.DOMAIN_HOST_IP }}
- run: bun run publish-records
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
new file mode 100644
index 0000000000..9622ebd4ab
--- /dev/null
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,32 @@
+name: Publish
+
+on:
+ push:
+ branches: [main]
+ paths:
+ - "domains/*"
+ - ".github/workflows/publish.yml"
+ - "dnsconfig.js"
+
+ workflow_dispatch:
+
+concurrency:
+ group: ${{ github.ref }}-publish
+ cancel-in-progress: false
+
+jobs:
+ dns:
+ name: DNS
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Generate creds.json
+ run: echo '{"cloudflare":{"TYPE":"CLOUDFLAREAPI","apitoken":"$CLOUDFLARE_API_TOKEN"}}' > ./creds.json
+
+ - name: Publish
+ uses: is-a-dev/dnscontrol-action@main
+ env:
+ CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }}
+ with:
+ args: push
diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml
new file mode 100644
index 0000000000..0ca0890ec9
--- /dev/null
+++ b/.github/workflows/validate.yml
@@ -0,0 +1,42 @@
+name: Validation
+
+on:
+ pull_request:
+
+ push:
+ branches: [main]
+ paths:
+ - "domains/*"
+ - ".github/workflows/validation.yml"
+ - "dnsconfig.js"
+
+ workflow_dispatch:
+
+concurrency:
+ group: ${{ github.ref }}-validation
+ cancel-in-progress: true
+
+jobs:
+ dns:
+ name: DNS
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Check
+ uses: is-a-dev/dnscontrol-action@main
+ with:
+ args: check
+
+ json:
+ name: JSON
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: JSON Syntax Check
+ uses: limitusus/json-syntax-check@v2
+ with:
+ pattern: "\\.json$"
+ env:
+ BASE: "domains/"
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 209d4adc40..0000000000
--- a/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-node_modules/
-*.env.production
-*.log
-is-a-dev-cert/
diff --git a/Dockerfile b/Dockerfile
deleted file mode 100644
index 990a6e0b2a..0000000000
--- a/Dockerfile
+++ /dev/null
@@ -1,22 +0,0 @@
-FROM ubuntu:20.04
-
-ENV TERM xterm
-RUN ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime
-
-RUN apt-get -y update
-RUN apt-get install -y nodejs npm curl wget dnsutils certbot --fix-missing
-RUN apt-get install -y unzip
-
-RUN bash -c "curl -fsSL https://bun.sh/install | bash -s 'bun-v1.0.15'"
-
-RUN ~/.bun/bin/bun -v
-
-WORKDIR /opt/app
-
-COPY bun.lockb .
-COPY package.json .
-
-RUN ~/.bun/bin/bun install
-
-CMD ["sh", "-c", "cp -r node_modules code; cd code; tail -f /dev/null"]
-
diff --git a/MAINTAINERS.md b/MAINTAINERS.md
index 071673ba9e..cb300be61d 100644
--- a/MAINTAINERS.md
+++ b/MAINTAINERS.md
@@ -6,7 +6,6 @@
| CuteDog5695 | [@CuteDog5695](https://github.com/CuteDog5695) | Maintainer |
| Daniel | [@hackermondev](https://github.com/hackermondev) | Maintainer |
| DIBSTER | [@DEV-DIBSTER](https://github.com/DEV-DIBSTER) | Maintainer |
-| MaskDuck | [@MaskDuck](https://github.com/MaskDuck) | Maintainer |
| Om | [@omsenjalia](https://github.com/omsenjalia) | Maintainer |
| orangc | [@orxngc](https://github.com/orxngc) | Maintainer |
| Stef | [@Stef-00012](https://github.com/Stef-00012) | Maintainer |
diff --git a/README.md b/README.md
index 0fe1cc629e..17ba3c8a36 100644
--- a/README.md
+++ b/README.md
@@ -6,6 +6,9 @@
+
+
+
is-a.dev
@@ -16,27 +19,27 @@
-## Phishing emails alert
-**We have been notified of scammers using emails in this repository to send phishing emails. Do NOT click any links in suspicious emails.**
-
-If you would like to remove your email, remove it from your JSON file and provide a separate contact method (preferably Discord).
-
-Leave the email field there, but just blank. Then add a separate contact method to your file.
-
-Please see more information in issue https://github.com/is-a-dev/register/issues/14802.
+[](https://github.com/is-a-dev/register/actions/workflows/publish.yml)
## Issues
If you have any problems, feel free to [open a issue](https://github.com/is-a-dev/register/issues/new/choose).
-If you have an issue that contains confidental infomation, send an email to security@m.is-a.dev.
+If you have an issue that contains confidental infomation, send an email to security@is-a.dev.
## Register
+### NS records
+When applying for NS records, please consider if you *actually* need them. Please provide a detailed reason (with evidence) of why you require NS records.
+
+9 times out of 10, you do not actually need NS records, and merely want them. We already support a wide range of records, so it is extremely unlikely you will actually require them.
+
+Pull requests adding NS records without reasoning will be closed instantly.
+
### Manual Registration
> If you want a more visual guide, check out [this blog post](https://wdh.gg/tX3ghge).
- [Fork](https://github.com/is-a-dev/register/fork) and star this repository
- Add a new file called `your-domain-name.json` in the `domains` folder to register `your-domain-name.is-a.dev`
-- [Read the documentation](https://www.is-a.dev/docs)
+- [Read the documentation](https://is-a.dev/docs)
- Your pull request will be reviewed and merged. *Make sure to keep an eye on it incase we need you to make any changes!*
- After the pull request is merged, please allow up to 24 hours for the changes to propagate
- Enjoy your new `.is-a.dev` domain!
@@ -47,14 +50,17 @@ If you have an issue that contains confidental infomation, send an email to secu
Join our [Discord server](https://discord.gg/is-a-dev-830872854677422150), head to the commands channel and run `/register`. The bot will ask you a few questions then will generate your PR and domain automatically. The bot also allows for domain deletion and editing.
-## Status
-You can check the uptime of our services on our [status dashboard](https://is-a-dev.hrsn.net).
-
### Donate
If you like this project, please consider donating so we can keep this project running forever!
+### Sponsors
+
+
+
+
+
### Similar Services
If you want to find services similar to is-a.dev, take a look at [Free For Life](https://github.com/wdhdev/free-for-life#domains).
diff --git a/SECURITY.md b/SECURITY.md
index e6b236db72..4c96d8394d 100644
--- a/SECURITY.md
+++ b/SECURITY.md
@@ -3,4 +3,4 @@
## Reporting a vulnerability
You can report low severity bugs as [issues](https://github.com/is-a-dev/register/issues/new/choose) on this repository.
-However, for **higher severity vulnerabilities and bugs**, please email security@m.is-a.dev.
+However, for **higher severity vulnerabilities and bugs**, please email security@is-a.dev.
diff --git a/bun.lockb b/bun.lockb
deleted file mode 100755
index 5022120107..0000000000
Binary files a/bun.lockb and /dev/null differ
diff --git a/default.nix b/default.nix
deleted file mode 100644
index bc0f66aa38..0000000000
--- a/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ nixpkgs ? import {} }:
-let
- inherit (nixpkgs) pkgs;
-
- nixPackages = with pkgs; [
- yarn
- docker-compose
- dnsutils
- bun
- ];
-in
-pkgs.stdenv.mkDerivation {
- name = "env";
- buildInputs = nixPackages;
-}
diff --git a/dnsconfig.js b/dnsconfig.js
new file mode 100644
index 0000000000..b838f4ce14
--- /dev/null
+++ b/dnsconfig.js
@@ -0,0 +1,120 @@
+function getDomainsList(filesPath) {
+ var result = [];
+ var files = glob.apply(null, [filesPath, true, ".json"]);
+
+ for (var i = 0; i < files.length; i++) {
+ var name = files[i].split("/").pop().replace(/\.json$/, "");
+
+ result.push({ name: name, data: require(files[i]) });
+ }
+
+ return result;
+}
+
+var domains = getDomainsList("./domains");
+var commit = [];
+
+for (var idx in domains) {
+ var subdomainName = domains[idx].name;
+ var domainData = domains[idx].data;
+ var proxyState = domainData.proxied ? { cloudflare_proxy: "on" } : { cloudflare_proxy: "off" };
+
+ // Handle A records
+ if (domainData.record.A) {
+ for (var a in domainData.record.A) {
+ commit.push(A(subdomainName, IP(domainData.record.A[a]), proxyState));
+ }
+ }
+
+ // Handle AAAA records
+ if (domainData.record.AAAA) {
+ for (var aaaa in domainData.record.AAAA) {
+ commit.push(AAAA(subdomainName, domainData.record.AAAA[aaaa], proxyState));
+ }
+ }
+
+ // Handle CAA records
+ if (domainData.record.CAA) {
+ for (var caa in domainData.record.CAA) {
+ var caaRecord = domainData.record.CAA[caa];
+ commit.push(CAA(subdomainName, caaRecord.flags, caaRecord.tag, caaRecord.value));
+ }
+ }
+
+ // Handle CNAME records
+ if (domainData.record.CNAME) {
+ // Allow CNAME record on root
+ if (subdomainName === "@") {
+ commit.push(ALIAS(subdomainName, domainData.record.CNAME + ".", proxyState));
+ } else {
+ commit.push(CNAME(subdomainName, domainData.record.CNAME + ".", proxyState));
+ }
+ }
+
+ // Handle MX records
+ if (domainData.record.MX) {
+ for (var mx in domainData.record.MX) {
+ commit.push(MX(subdomainName, 10, domainData.record.MX[mx] + "."));
+ }
+ }
+
+ // Handle NS records
+ if (domainData.record.NS) {
+ for (var ns in domainData.record.NS) {
+ commit.push(NS(subdomainName, domainData.record.NS[ns] + "."));
+ }
+ }
+
+ // Handle SRV records
+ if (domainData.record.SRV) {
+ for (var srv in domainData.record.SRV) {
+ var srvRecord = domainData.record.SRV[srv];
+ commit.push(SRV(subdomainName, srvRecord.priority, srvRecord.weight, srvRecord.port, srvRecord.target + "."));
+ }
+ }
+
+ // Handle TXT records
+ if (domainData.record.TXT) {
+ if (Array.isArray(domainData.record.TXT)) {
+ for (var txt in domainData.record.TXT) {
+ commit.push(TXT(subdomainName, domainData.record.TXT[txt]));
+ }
+ } else {
+ commit.push(TXT(subdomainName, domainData.record.TXT));
+ }
+ }
+
+ // Handle URL records
+ if (domainData.record.URL) {
+ commit.push(
+ A(subdomainName, "45.85.238.5", { cloudflare_proxy: "on" }),
+ TXT("_redirect." + subdomainName, "v=txtv0;type=host;to=" + domainData.record.URL)
+ );
+ }
+
+ // Exceptions
+ // is-a.dev
+ commit.push(IGNORE("@", "MX"));
+ commit.push(IGNORE("@", "TXT"));
+ // *.is-a.dev
+ commit.push(IGNORE("\\*"));
+ // _acme-challenge.is-a.dev
+ commit.push(IGNORE("_acme-challenge", "TXT"));
+ // _dmarc.is-a.dev
+ commit.push(IGNORE("_dmarc", "TXT"));
+ // ns1.is-a.dev
+ commit.push(IGNORE("ns1", "A"));
+ commit.push(IGNORE("ns1", "AAAA"));
+ // ns2.is-a.dev
+ commit.push(IGNORE("ns2", "A"));
+ commit.push(IGNORE("ns2", "AAAA"));
+ // ns3.is-a.dev
+ commit.push(IGNORE("ns3", "A"));
+ commit.push(IGNORE("ns3", "AAAA"));
+ // ns4.is-a.dev
+ commit.push(IGNORE("ns4", "A"));
+ commit.push(IGNORE("ns4", "AAAA"));
+}
+
+// Commit all DNS records
+D("is-a.dev", NewRegistrar("none"), DnsProvider(NewDnsProvider("cloudflare")), commit);
diff --git a/docker-compose.yml b/docker-compose.yml
deleted file mode 100644
index 5b161f9298..0000000000
--- a/docker-compose.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-version: '3'
-services:
- dev:
- build:
- context: .
- dockerfile: ./Dockerfile
- volumes:
- - ./:/opt/app/code
diff --git a/domains/0v90.json b/domains/0v90.json
index 98925033ee..de32e280b7 100644
--- a/domains/0v90.json
+++ b/domains/0v90.json
@@ -13,7 +13,7 @@
"185.199.108.153",
"185.199.109.153",
"185.199.110.153",
- "185.199.110.153"
+ "185.199.111.153"
]
}
}
diff --git a/domains/6.json b/domains/6.json
index d7c943095c..e603767b73 100644
--- a/domains/6.json
+++ b/domains/6.json
@@ -1,9 +1,10 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"URL": "https://shockbs.is-a.dev/"
- }
+ },
+ "proxied": true
}
diff --git a/domains/@.json b/domains/@.json
index 4fe4c11334..07d40b02ee 100644
--- a/domains/@.json
+++ b/domains/@.json
@@ -1,11 +1,9 @@
{
- "description": "The root domain for is-a.dev website",
- "repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
"username": "is-a-dev",
"email": ""
},
"record": {
- "URL": "http://www.is-a.dev"
+ "CNAME": "is-a-dev.github.io"
}
}
diff --git a/domains/_acme-challenge.juqwtf.json b/domains/_acme-challenge.juqwtf.json
deleted file mode 100644
index e8fc66accf..0000000000
--- a/domains/_acme-challenge.juqwtf.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "denboy0123",
- "email": "pochtaproverka01@gmail.com"
- },
- "record": {
- "TXT": [
- "FZo9g0GqRYR-fhmWc1QzbycfV5UZIE4bwh42BI81NDQ",
- "V1N8tuJvEcUtltxMXLRvP0U1_jaAgsSJJ89MgyxpWUk"
- ]
- }
-}
diff --git a/domains/_discord.alvin.json b/domains/_discord.alvin.json
new file mode 100644
index 0000000000..00b85ce437
--- /dev/null
+++ b/domains/_discord.alvin.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "alvinsjoy",
+ "email": "",
+ "discord": "825382504353234954"
+ },
+ "record": {
+ "TXT": "dh=2e0d11ef77e37336649b42cd76be7681008ac30a"
+ }
+}
diff --git a/domains/_discord.api.stefdp.json b/domains/_discord.api.stefdp.json
deleted file mode 100644
index b6e9ec775b..0000000000
--- a/domains/_discord.api.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "TXT": "dh=e71ddcd3beca6bbd44125eb4d861d4cf28eed0c8"
- }
-}
diff --git a/domains/_discord.c.json b/domains/_discord.c.json
deleted file mode 100644
index e0d3ad1991..0000000000
--- a/domains/_discord.c.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "orxngc",
- "discord": "orangc",
- "email": "orangc@proton.me"
- },
- "record": {
- "TXT": "dh=dff53e3c9534a4606fe07fef0142ab53acf4a0e4"
- }
-}
diff --git a/domains/_discord.hafi.json b/domains/_discord.hafi.json
new file mode 100644
index 0000000000..6d62018a53
--- /dev/null
+++ b/domains/_discord.hafi.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "HafiTheCat",
+ "email": "",
+ "discord": "hafi_the_cat"
+ },
+ "record": {
+ "TXT": "dh=1ae8d3b3460ce837d26bf5cfaa473a1bdc13460f"
+ }
+}
diff --git a/domains/_discord.lingle.json b/domains/_discord.lingle.json
new file mode 100644
index 0000000000..29bb34749d
--- /dev/null
+++ b/domains/_discord.lingle.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "lingledev",
+ "email": "gideon.lingle2023@gmail.com"
+ },
+ "record": {
+ "TXT": [
+ "dh=21d66ba4bca0c546fa80a877a6d3df57216bd5f5"
+ ]
+ }
+}
diff --git a/domains/_discord.orangc.json b/domains/_discord.orangc.json
deleted file mode 100644
index dcdfb506ac..0000000000
--- a/domains/_discord.orangc.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "orxngc",
- "discord": "orangc",
- "email": "orangc@proton.me"
- },
- "record": {
- "TXT": "dh=d27c8c015aa5f1be96c0c468e091a0958dd1c1dc"
- }
-}
diff --git a/domains/_discord.stefdp.json b/domains/_discord.stefdp.json
deleted file mode 100644
index e0d13c96d5..0000000000
--- a/domains/_discord.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "TXT": "dh=f6d71b43aecaa5a4ea3534d21f11f6b0e4559d8a"
- }
-}
diff --git a/domains/_dmarc.om.json b/domains/_dmarc.om.json
deleted file mode 100644
index f3a7cf1199..0000000000
--- a/domains/_dmarc.om.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "omsenjalia",
- "email": "",
- "OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
- },
- "record": {
- "TXT": "v=DMARC1; p=quarantine; rua=mailto:omsenjalia@gmail.com; ruf=mailto:omsenjalia@gmail.com; sp=quarantine; adkim=r; aspf=r"
- }
-}
diff --git a/domains/_gh-is-a-dev-o.www.json b/domains/_gh-is-a-dev-o.json
similarity index 77%
rename from domains/_gh-is-a-dev-o.www.json
rename to domains/_gh-is-a-dev-o.json
index a93e75f335..804fb9f736 100644
--- a/domains/_gh-is-a-dev-o.www.json
+++ b/domains/_gh-is-a-dev-o.json
@@ -5,6 +5,6 @@
},
"record": {
- "TXT": "1259c184c5"
+ "TXT": "9ac06a2c1c"
}
}
diff --git a/domains/_gh-is-a-dev-o.m.json b/domains/_gh-is-a-dev-o.m.json
deleted file mode 100644
index e7af9390b6..0000000000
--- a/domains/_gh-is-a-dev-o.m.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "e0ffcded3e"
- }
-}
diff --git a/domains/_gh-is-a-dev-o.maintainers.json b/domains/_gh-is-a-dev-o.maintainers.json
deleted file mode 100644
index e381c3c8cc..0000000000
--- a/domains/_gh-is-a-dev-o.maintainers.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "7b45eb688b"
- }
-}
diff --git a/domains/_github-challenge-is-a-dev-org.json b/domains/_github-challenge-is-a-dev-org.json
deleted file mode 100644
index d9ade36b1a..0000000000
--- a/domains/_github-challenge-is-a-dev-org.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "TXT": "2c9dfbe7c8"
- }
-}
diff --git a/domains/_github-pages-challenge-Fluffythebunny.json b/domains/_github-pages-challenge-Fluffythebunny.json
new file mode 100644
index 0000000000..5519e8ef1e
--- /dev/null
+++ b/domains/_github-pages-challenge-Fluffythebunny.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Fluffythebunny",
+ "email": "puglsytt@gmail.com"
+ },
+ "record": {
+ "TXT": "beb68ebc988463b8b1753c41c14f9e"
+ }
+}
diff --git a/domains/_github-pages-challenge-JVDesignBavaria.jvdesign.json b/domains/_github-pages-challenge-JVDesignBavaria.jvdesign.json
new file mode 100644
index 0000000000..c74ef73683
--- /dev/null
+++ b/domains/_github-pages-challenge-JVDesignBavaria.jvdesign.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "JVDesignBavaria",
+ "email": "",
+ "twitter": "JVDesignBavaria"
+ },
+ "record": {
+ "TXT": "f4729fd3c0ae53d5150331f5f741a2"
+ }
+}
diff --git a/domains/_github-pages-challenge-abiapp789.json b/domains/_github-pages-challenge-abiapp789.json
new file mode 100644
index 0000000000..bb24b82121
--- /dev/null
+++ b/domains/_github-pages-challenge-abiapp789.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "abiapp789",
+ "email": "abiapp2024@gmail.com"
+ },
+ "record": {
+ "TXT": "5bcd2d69c4cca15abd91d504a5b72a"
+ }
+}
diff --git a/domains/mithilesh.json b/domains/_github-pages-challenge-kingsmen732.mithilesh.json
similarity index 82%
rename from domains/mithilesh.json
rename to domains/_github-pages-challenge-kingsmen732.mithilesh.json
index ca9f675052..3604cc9a56 100644
--- a/domains/mithilesh.json
+++ b/domains/_github-pages-challenge-kingsmen732.mithilesh.json
@@ -6,6 +6,6 @@
"email": "kingsmen732@gmail.com"
},
"record": {
- "URL": "https://nextgen-resume-ota.vercel.app"
+ "TXT": "796acaf6e18fb8e734811097f93a0a"
}
}
diff --git a/domains/_github-pages-challenge-stef-00012.stefdp.json b/domains/_github-pages-challenge-stef-00012.stefdp.json
deleted file mode 100644
index 372ad0c6d9..0000000000
--- a/domains/_github-pages-challenge-stef-00012.stefdp.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "TXT": [
- "27c2dc9cd3e8a0a37947e82ab6f637"
- ]
- }
-}
diff --git a/domains/_github-pages-challenge-wdhdev.william.json b/domains/_github-pages-challenge-wdhdev.william.json
deleted file mode 100644
index f9c6ef5ea6..0000000000
--- a/domains/_github-pages-challenge-wdhdev.william.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@m.is-a.dev"
- },
-
- "record": {
- "TXT": "6b3a5de4756e5840afc94698b74712"
- }
-}
diff --git a/domains/_psl.json b/domains/_psl.json
index fd8db17bb1..79f23886c2 100644
--- a/domains/_psl.json
+++ b/domains/_psl.json
@@ -1,10 +1,10 @@
{
- "description": "PSL validation record for is-a.dev",
+ "description": "PSL validation record",
"owner": {
"username": "is-a-dev",
- "email": "phenax5@gmail.com"
+ "email": ""
},
"record": {
- "TXT": "https://github.com/publicsuffix/list/pull/1949"
+ "TXT": "https://github.com/publicsuffix/list/pull/2225"
}
}
diff --git a/domains/_vercel.alvin.json b/domains/_vercel.alvin.json
new file mode 100644
index 0000000000..b133bd341f
--- /dev/null
+++ b/domains/_vercel.alvin.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "alvinsjoy",
+ "email": "",
+ "discord": "825382504353234954"
+ },
+ "record": {
+ "TXT": "vc-domain-verify=www.alvin.is-a.dev,8cfb8dfac816eacccf2d"
+ }
+}
diff --git a/domains/_vercel.cesarmr.json b/domains/_vercel.cesarmr.json
new file mode 100644
index 0000000000..2a0026efe8
--- /dev/null
+++ b/domains/_vercel.cesarmr.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "cesarmr-github",
+ "email": "c3s1r@proton.me",
+ "discord": "740861702215565333"
+ },
+ "record": {
+ "TXT": "vc-domain-verify=cesarmr.is-a.dev,f90aad152beffe874989"
+ }
+}
diff --git a/domains/_vercel.crazo7924.json b/domains/_vercel.crazo7924.json
new file mode 100644
index 0000000000..62b6bd6035
--- /dev/null
+++ b/domains/_vercel.crazo7924.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "crazo7924",
+ "email": "",
+ "discord": "466605393309859840",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.lK0DenxkbchUi8yOUyDH6gdvlQs6bXJRyaYAYCBgVjJUUoQ61fUcOHtdb2fltgObjiNYVqGywMpRFLuUOjQN3Uxb8Uv-NTND52eAkakL1xh4Vj5sbsVr05ehnAlCXDO1ykZpkn4kwldQBOQcYUFkNVhxFblPQO7jAybjc9QNpqsgW113BrPsY7aN0TWhARO8JTiWtOQT8oKfCqfYZH3F7qiU1wk-pvwaQBWy8Jiu0CiKQmTzIT4lN3lCCZpNL0PiyLXcSZEuEGzmt_LFuHcGtYrwavaN2ZbrC6gb_U4L6sBRAx5NNPDuEBMtX9ncP5WCDikgMVXsftbXW_KU8yHhVQ.wUUcKotRy8LSzAU6amSQ9A.on4Jq5kL1mB9zWF3OlqN2ckyZjOYboXbE_RzWE2UHOADNEDogYLvEl9rU3J6JNlw6fXyRFyDjNnosUvNBC2tBl7tSyrMaWkDXoWW8q3OoKhv1r0fUuNl93epFeYMg3yr.pUMvwVEA92EQgEXTwm2_PQ"
+ },
+ "record": {
+ "TXT": "vc-domain-verify=blog.crazo7924.is-a.dev,08987fe260da74fe448e"
+ }
+}
diff --git a/domains/_vercel.luisalejandrobf.json b/domains/_vercel.luisalejandrobf.json
new file mode 100644
index 0000000000..19875fe751
--- /dev/null
+++ b/domains/_vercel.luisalejandrobf.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "luisalejandrobf",
+ "email": "luisalejandrobravoferreira@gmail.com"
+ },
+ "record": {
+ "TXT": "vc-domain-verify=luisalejandrobf.is-a.dev,c49494ec4242b7e00e01"
+ }
+}
\ No newline at end of file
diff --git a/domains/_vercel.mantou.json b/domains/_vercel.mantou.json
new file mode 100644
index 0000000000..555b983b14
--- /dev/null
+++ b/domains/_vercel.mantou.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "Mantouisyummy",
+ "email": "",
+ "discord": "549056425943629825"
+ },
+ "record": {
+ "TXT": "vc-domain-verify=mantou.is-a.dev,c8a46ea52ff24c67a0a6"
+ }
+}
diff --git a/domains/_vercel.redaassemghor.json b/domains/_vercel.redaassemghor.json
new file mode 100644
index 0000000000..ca6c7a7a97
--- /dev/null
+++ b/domains/_vercel.redaassemghor.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "redaassemghor",
+ "email": "",
+ "discord": "r3dapt"
+ },
+ "record": {
+ "TXT": "vc-domain-verify=reda.is-a.dev,6d8fb75a7046531955bf"
+ }
+}
diff --git a/domains/alvin.json b/domains/alvin.json
new file mode 100644
index 0000000000..337cc9f338
--- /dev/null
+++ b/domains/alvin.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "alvinsjoy",
+ "email": "",
+ "discord": "825382504353234954"
+ },
+ "record": {
+ "A": ["76.76.21.21"],
+ "TXT": ["google-site-verification=OFAPUslqNNZEkB5-UDAC1K1QjXCwDW_e3flhEchoobM"]
+ }
+}
diff --git a/domains/api.shockbs.json b/domains/api.shockbs.json
index a4be3930b4..d7029f5334 100644
--- a/domains/api.shockbs.json
+++ b/domains/api.shockbs.json
@@ -1,7 +1,7 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"A": ["69.30.249.53"]
diff --git a/domains/api.spotify.stefdp.json b/domains/api.spotify.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/api.spotify.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/api.stefdp.json b/domains/api.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/api.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/ashishagr.json b/domains/ashishagr.json
index 1816180464..78946238d8 100644
--- a/domains/ashishagr.json
+++ b/domains/ashishagr.json
@@ -5,8 +5,8 @@
},
"record": {
"A": [
+ "185.199.108.153",
"185.199.109.153",
- "185.199.111.153",
"185.199.110.153",
"185.199.111.153"
],
diff --git a/domains/asnct.json b/domains/asnct.json
index c5d53fcedd..b950236070 100644
--- a/domains/asnct.json
+++ b/domains/asnct.json
@@ -7,6 +7,6 @@
"record": {
"URL": "https://asnct_bio.t.me",
"TXT": ["mailru-domain: wDSaV835X4LZyKsP", "v=spf1 redirect=_spf.mail.ru"],
- "MX": "emx.mail.ru"
+ "MX": ["emx.mail.ru"]
}
}
diff --git a/domains/aswinmahesh.json b/domains/aswinmahesh.json
index 078e70036f..de84249687 100644
--- a/domains/aswinmahesh.json
+++ b/domains/aswinmahesh.json
@@ -2,10 +2,19 @@
"description": "Aswin Mahesh Website",
"repo": "https://github.com/aswinmahesh",
"owner": {
- "username": "aswinmahesh",
- "email": "aswinmahesh.com+dns@gmail.com"
+ "username": "aswinmahesh",
+ "email": "aswinmahesh.com+dns@gmail.com"
},
"record": {
- "CNAME": "aswinmahesh.netlify.app"
+ "A": [
+ "75.2.60.5"
+ ],
+
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
}
-}
+}
\ No newline at end of file
diff --git a/domains/aswinmaheshc.json b/domains/aswinmaheshc.json
new file mode 100644
index 0000000000..bcd1f64521
--- /dev/null
+++ b/domains/aswinmaheshc.json
@@ -0,0 +1,20 @@
+{
+ "description": "Aswin Mahesh C Website",
+ "repo": "https://github.com/aswinmahesh",
+ "owner": {
+ "username": "aswinmahesh",
+ "email": "aswinmahesh.com+dns@gmail.com"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ],
+
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
\ No newline at end of file
diff --git a/domains/blog.hafi.json b/domains/blog.hafi.json
new file mode 100644
index 0000000000..e1e6cf8eaf
--- /dev/null
+++ b/domains/blog.hafi.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "HafiTheCat",
+ "email": "",
+ "discord": "hafi_the_cat"
+ },
+ "description": "A personal Blog",
+ "repo": "https://github.com/HafiTheCat/hafis_code_continuum",
+ "record": {
+ "CNAME": "hafis-code-continuum.netlify.app"
+ }
+}
diff --git a/domains/c.json b/domains/c.json
index da3053a49a..8fdc0ccc67 100644
--- a/domains/c.json
+++ b/domains/c.json
@@ -5,6 +5,6 @@
"email": "orangc@proton.me"
},
"record": {
- "CNAME": "edge.redirect.pizza"
+ "NS": ["nucum.ns.cloudflare.com", "tate.ns.cloudflare.com"]
}
}
diff --git a/domains/caenjones.json b/domains/caenjones.json
new file mode 100644
index 0000000000..50d6b79a3d
--- /dev/null
+++ b/domains/caenjones.json
@@ -0,0 +1,12 @@
+{
+ "description": "My personal website and blog",
+ "repo": "https://github.com/CaenJones/caenjones.github.io",
+ "owner": {
+ "username": "CaenJones",
+ "email": "cj@caenjones.com",
+ "twitter": ""
+ },
+ "record": {
+ "CNAME": "caenjones.github.io"
+ }
+}
diff --git a/domains/cam.json b/domains/cam.json
new file mode 100644
index 0000000000..22418c5ba5
--- /dev/null
+++ b/domains/cam.json
@@ -0,0 +1,20 @@
+{
+ "description": "CAM Website",
+ "repo": "https://github.com/aswinmahesh",
+ "owner": {
+ "username": "aswinmahesh",
+ "email": "aswinmahesh.com+dns@gmail.com"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ],
+
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
\ No newline at end of file
diff --git a/domains/cesarmr.json b/domains/cesarmr.json
new file mode 100644
index 0000000000..8448a6cce2
--- /dev/null
+++ b/domains/cesarmr.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "cesarmr-github",
+ "email": "c3s1r@proton.me",
+ "discord": "740861702215565333"
+ },
+ "record": {
+ "A": ["76.76.21.21"]
+ }
+}
diff --git a/domains/chess.json b/domains/chess.json
new file mode 100644
index 0000000000..a5a247f9d1
--- /dev/null
+++ b/domains/chess.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "",
+ "discord": "1167825360151380032",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.KrnZmq6AQ1Fb-hWJ1KW25-1f9hLJOGfJHwhuv6fDfLIV6k8gkNUmsv64B5tOdmFLJVN2zzzur6tAqjG7zcYLRGBHGi0-UDOe5V2UBWx7D4k4kjFvX8DrIRSGEKhqwM_vkPKlorR-xgACJ9LMj4ksJIVO8og4KQjiS6jIG6_6C6L5d9ny23xWh8E2jdZKSNpD3dRwUxe58obflq6OX2s8M9q7aWoHDQ0R7Bj6eSkCyastfV6W1L3cPyGB98Ve8Gw9pf9yjUhJGqo2IzMJP5Kov7LZ4mlnb92NjftFDAF9Yl02ufN-k6WvM93bUIJI0kC3Nydo8P1snyEJQthc7aUBOA.bFv4ltUis5UM4V3W1f6FTg.2BMvIE8X5_E63_Z_HvPLvF0DOMH0DbVn3_OnxcQCdTCW93cmSbvF4o_BcRU1eMZNCpwvVV-_XYW7BBnOOL3Ygj2i-gbW6F_IpqFOq_5D1dbWY4ZxLYrgZd2oeH1X5ec8.okGeeD7rEQvR-ZUbaBaBeA"
+ },
+ "record": {
+ "A": [
+ "216.24.57.1"
+ ]
+ }
+}
diff --git a/domains/chirayusahu.json b/domains/chirayusahu.json
new file mode 100644
index 0000000000..96d8a64fc3
--- /dev/null
+++ b/domains/chirayusahu.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "ChirayuSahu",
+ "email": "",
+ "discord": "711526476704382979",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.s4iQE3i8vgf-LeRAC1vfr6khK-U9zKiobIBW-dRV1qFhuTR4QsZvvGO2qt5Ihg938qAS934UvgF0uruo0RBSNjpfV8aywmZee65Z8hUZbWlaM7gFyqSkrKuMUxRr0gH4ckeaumeL5pJqO7cR3OY5qH_nRhcYQTzunH35cI2onTH6rQoUq179ShgCg2ATb5Mz8M2XmVEikcTWhLl5XDz1Bf04_bGsTmcXaSs7lvehDkFZrx2L4V3a-jEkN77UUBYW-InnOidSi7uz8ZLmQG-2SquTKXpyeMPP9CIOHGcWIhqoe7okS507sqZxHdUpsRCTbB28Elw8vO_NAa4dnpwIxg.NpK2mdZu15IgnmzjzHa_KQ.huIUnyAoYbMBAUB0ary5kvKzb1i0z-M20Dvqoo3Xx1cXfISzxHLdrCJbdfbmJvnso5OvGkj0kbR5UPD1JywGGm6nCxdJ-dS5Ehr8d2GH3Ew.-lS9paJMoym4DCSRG5m1MA"
+ },
+
+ "record": {
+ "A": ["5.9.123.217"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/choudery.json b/domains/choudery.json
deleted file mode 100644
index e071797f1d..0000000000
--- a/domains/choudery.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "owner": {
- "username": "Choudery",
- "email": "blreaderdammy@gmail.com"
- },
- "record": {
- "MX": [
- "john.ns.cloudflare.com",
- "sharon.ns.cloudflare.com"
- ]
- },
- "description": "Choudery coding"
-}
\ No newline at end of file
diff --git a/domains/crazo7924.json b/domains/crazo7924.json
index f3fac2e6e5..59b251d264 100644
--- a/domains/crazo7924.json
+++ b/domains/crazo7924.json
@@ -1,20 +1,19 @@
{
- "owner": {
- "username": "crazo7924",
- "email": "",
- "discord": "466605393309859840",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.EPAp20sGUcuM20K26KYZsDVnufUJ9I-108TJUJVjIM9mb1vi18AHrnxsqlSf9APzx4aJEdPGfnWK2dkBQaS3wBM9FgnBKnVeGQaC-FAjLIWI8eOObReFw8bJIRcOtU10KaftXgSPTHv_6ezYJ61R2BM3DWQc-tOqYlxii7O52UmIgVGg-VFYu-qGtPzPY1KLAfrG3JTfLcP6o-vWcbHe_RAkZpCMS2y2t_qX3B_CpXmxombN81CxtbjNAlHCJI9kurjkH1v03XoAjsG0VhudV1aJcXCnL_jnDZz9J_kHmilivCUGnhi6La46ZEo6RCMD9KGu9jqE60lZYPMWQf3-Xw.R8aRGWxp4ChOZXQ0ZKAqwQ.piH7uRCdmslqxerUYiQjs-k9R9P1lLMeAwLkBfeJh-iCMvHT97basT5Ob6PVrxPaeV-OmnMd4FEvceS3SicofL0LsBOpRfbElmWokDJL6MmfAr-Y3ePhoLImZXKLYaWV.-v_ZfnbqCKYCs5m_EGcHjw"
- },
-
- "record": {
- "TXT": [
- "zoho-verification=zb09491787.zmverify.zoho.in"
- ],
- "MX": [
- "mx.zoho.in",
- "mx2.zoho.in",
- "mx3.zoho.in"
- ]
- }
+ "owner": {
+ "username": "crazo7924",
+ "email": "",
+ "discord": "466605393309859840",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.EPAp20sGUcuM20K26KYZsDVnufUJ9I-108TJUJVjIM9mb1vi18AHrnxsqlSf9APzx4aJEdPGfnWK2dkBQaS3wBM9FgnBKnVeGQaC-FAjLIWI8eOObReFw8bJIRcOtU10KaftXgSPTHv_6ezYJ61R2BM3DWQc-tOqYlxii7O52UmIgVGg-VFYu-qGtPzPY1KLAfrG3JTfLcP6o-vWcbHe_RAkZpCMS2y2t_qX3B_CpXmxombN81CxtbjNAlHCJI9kurjkH1v03XoAjsG0VhudV1aJcXCnL_jnDZz9J_kHmilivCUGnhi6La46ZEo6RCMD9KGu9jqE60lZYPMWQf3-Xw.R8aRGWxp4ChOZXQ0ZKAqwQ.piH7uRCdmslqxerUYiQjs-k9R9P1lLMeAwLkBfeJh-iCMvHT97basT5Ob6PVrxPaeV-OmnMd4FEvceS3SicofL0LsBOpRfbElmWokDJL6MmfAr-Y3ePhoLImZXKLYaWV.-v_ZfnbqCKYCs5m_EGcHjw"
+ },
+ "record": {
+ "TXT": [
+ "zoho-verification=zb09491787.zmverify.zoho.in",
+ "v=spf1 include:zoho.in ~all"
+ ],
+ "MX": [
+ "mx.zoho.in",
+ "mx2.zoho.in",
+ "mx3.zoho.in"
+ ]
}
-
+}
diff --git a/domains/cupglass.json b/domains/cupglass.json
index 43841c6401..b42eca1160 100644
--- a/domains/cupglass.json
+++ b/domains/cupglass.json
@@ -9,6 +9,6 @@
"note":"i dont have much time to see my discord app (because its almost 12 am) to take my user id, but since discord has changed their username to pomelo, that is my discord account"
},
"record": {
- "CNAME": "cupglassdev.github.io"
+ "NS": ["christina.ns.cloudflare.com", "mustafa.ns.cloudflare.com"]
}
-}
\ No newline at end of file
+}
diff --git a/domains/dash.stefdp.json b/domains/dash.stefdp.json
deleted file mode 100644
index 13881f84fc..0000000000
--- a/domains/dash.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/data.json b/domains/data.json
index 888b761d42..0bb0ffbfbb 100644
--- a/domains/data.json
+++ b/domains/data.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "is-a-dev.github.io"
+ "CNAME": "is-a.dev"
}
}
diff --git a/domains/data.om.json b/domains/data.om.json
deleted file mode 100644
index a55f3e7e83..0000000000
--- a/domains/data.om.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "TerraPlayz",
- "email": "omsenjalia+github@gmail.com"
- },
- "record": {
- "A": ["69.30.249.53"]
- }
-}
diff --git a/domains/dawngs.json b/domains/dawngs.json
new file mode 100644
index 0000000000..2a9b83e53f
--- /dev/null
+++ b/domains/dawngs.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "victorydawn",
+ "email": "",
+ "discord": "857502876108193812",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.S_DCHAmFXmGL-zHL3zCs_81ah4-EB7x8_fwBZDVftkekBmevyTldQ6Dw3rhFKcpduHDyMa6Q44sfAd6g4SVY3T0FD4p6fPvmgy1POx6rZ7AcprYZiVr9eotOnZTEedDfVzuTeLi-U0w-_MqeAfleG0p64lYJUYjvJh_4Y8rFvn53UI1k2qV5V4TI7e_1JVv67QusofXJjzOu55AMXhktWh90ZDXzXzJ-qA-nuCR6hQD4tE5ThtDYw_mGyN-ZF6vIVSfd7AUlzhsUGYwvxCQvKs_Rbmsf8yvq1MVW-7SWQq8RRzt1dvxW4aUTwgwKPLMim8XcSEKebzsmQB8ata4DhA.AZSfgy_SB9lX8TZcILDNVQ.3JcUQKM0gLy5ls6IeYSHcQxzUuynIfdrq64S4hT8xyGsjZFl9cHQajlx0gaNV3xzEhn_ZJSTCFqVnwBxCHHOaOgDHLC1rfWl9_Jhk8X8-HI.Hj4SUpt1LqpeN7Xo5clt5A"
+ },
+
+ "record": {
+ "CNAME": "dgsbot.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/deko.json b/domains/deko.json
index af1b4f1d49..ee86dab3e9 100644
--- a/domains/deko.json
+++ b/domains/deko.json
@@ -4,6 +4,6 @@
"email": "isadev@ukriu.com"
},
"record": {
- "URL": "https://ukriu.github.io"
+ "URL": "https://ukriu.com"
}
}
diff --git a/domains/dgs.json b/domains/dgs.json
new file mode 100644
index 0000000000..33e2d50407
--- /dev/null
+++ b/domains/dgs.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "victorydawn",
+ "email": "",
+ "discord": "857502876108193812",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Mk7Ovfy1v5O45rik2XcBeQI94jklBWGmiCn27B2tMUKnwVKAQH5_fUE_DexQoYK6KgU9OgyBdzPtyTCGgYiFsAx-uRvdkt-EbMTF6rV1xNdEzmOKnCAUMdWAqb8pzGB32zQlJLNev7rhhqPgaLNd0GxuAMAsr9e1yuqjiabYtTHFiqRx_CITf1cr38q2Idgsb4QFkbaJCRuJ1WV5nuDGGftkI5FIrENB3BiauJ0kTA1cn_zxLS-kDCMwJ1vkmE2mW_2NBIEFfn-Eq9troZE2YICPBvKx9HcTnOQlP61mq3R8_ut7FoZeg8Ts44-1affR3OnbgAz_1Y_qT7ty9jnASg.Borc5KEWmWoWP6Af2GjWXw.OVNPGtv9qRGhSGqU39vXowD22fqLppnAHIlvDh24AAuHFYAmU0PpE3GuzbNo_RmuTlkx7TcEohJ3M_2sXtSshh6TkCYwZ2Edik5dh6ZFY50.6iMDFicGcVAP6sxWx_K1jQ"
+ },
+
+ "record": {
+ "CNAME": "mydgs.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/dib.json b/domains/dib.json
new file mode 100644
index 0000000000..a10343f91b
--- /dev/null
+++ b/domains/dib.json
@@ -0,0 +1,13 @@
+{
+ "description": "[MAINTANER] DEV-DIBSTER Site",
+ "owner": {
+ "username": "DEV-DIBSTER",
+ "email": "dibster+is-a-dev@danbot.host"
+ },
+ "record": {
+ "NS": [
+ "scott.ns.cloudflare.com",
+ "tessa.ns.cloudflare.com"
+ ]
+ }
+}
diff --git a/domains/discord.json b/domains/discord.json
index 656c64a522..8020b2f1bd 100644
--- a/domains/discord.json
+++ b/domains/discord.json
@@ -1,9 +1,9 @@
{
"owner": {
"username": "is-a-dev",
- "email": "m@is-a.dev"
+ "email": ""
},
"record": {
- "CNAME": "edge.redirect.pizza"
+ "URL": "https://discord.gg/is-a-dev-830872854677422150"
}
}
diff --git a/domains/dkim._domainkey.om.json b/domains/dkim._domainkey.om.json
deleted file mode 100644
index 110d3d905a..0000000000
--- a/domains/dkim._domainkey.om.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "omsenjalia",
- "email": "",
- "OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
- },
- "record": {
- "TXT": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApUFgIkG/8KdnGqL3WcvLCQFh/9q6DZ/PNTXErJOvEBbI1wjYLUeR/44tApOzj0pVqCG9sZ9zLariA6858kxKx0nW0YxRZDAbiUy90G5zP6xT7sHX1MyDiQdsc/1KTGnFsQKb7scdpmFWrRgRaU9V3+Apr3n6j9eX6ZytUsoWMCVAgUwCxNHXujy6xCTendN9yJGOPvHsedvnD0PNcYbbsstWKJ1/5mS+33Bqpb8m5x0r+i4cwUmsGkuNHcuvYzTaYXWz+ohdi369zvGkd22ZTcM0x6ygqUzmeO40OMxMa35bO5XWmc1vQDSV+zR71BzdxF38E+/nHEB/VJmNKKtt0QIDAQAB"
- }
-}
diff --git a/domains/dockge.stefdp.json b/domains/dockge.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/dockge.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/docs.json b/domains/docs.json
index 9467731508..e29fc733ac 100644
--- a/domains/docs.json
+++ b/domains/docs.json
@@ -6,6 +6,6 @@
"email": ""
},
"record": {
- "URL": "https://www.is-a.dev/docs"
+ "URL": "https://is-a.dev/docs"
}
}
diff --git a/domains/docs.shockbs.json b/domains/docs.shockbs.json
index 874b42c4ae..2613ca4291 100644
--- a/domains/docs.shockbs.json
+++ b/domains/docs.shockbs.json
@@ -1,8 +1,9 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
- "CNAME": "documentationggffddjussdddgghhirrdssh6dd.onrender.com" }
+ "CNAME": "documentationggffddjussdddgghhirrdssh6dd.onrender.com" },
+ "proxied": true
}
diff --git a/domains/docs.stefdp.json b/domains/docs.stefdp.json
deleted file mode 100644
index 13881f84fc..0000000000
--- a/domains/docs.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/earth.json b/domains/earth.json
new file mode 100644
index 0000000000..2a75b457a5
--- /dev/null
+++ b/domains/earth.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "imdakiki",
+ "email": "",
+ "discord": "898255050592366642",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IaEjpjC1tqI3LaIBPKNHiotfKngSRpLBMGFsV3dg18jGSzG2RoF4lLTrY3f0ZUXcTE-ih1NxoiFAXqlw4BXHVnJ2SVHD12U3LqBd5OWjcEm5LqljME2JnXhsu0bHIf2iwSDiR61D6IH4w1_PDoNYwbLc8qCDqp4vayZJMyTrN_TXH2dodU-phuUR0yp91-NdM6NfaStMXm8enJv2sKte6_HmCvstiy5a_RuXn52-EafKgGYO9KtyNKlnfk3LLl_IjIRRJY6ghy_6hzYszwAP1mDyw5Sn7q2ZDfnH8hQZBZXW-znFAxhXr-T4nbsus7PEEdEEYJk10aIX-HOoxxXAlA.Wo3JN-takALA-_h-Vw4dXA.3JRBTuabx2N5hfwU42QS3nk83xO_bnFqx3-x2ik2eW_GzTwQBb-2CZ2LTyKOHg-z_Hmr8ceVnPWexb56unfuJthoKCxwmwLrh2EPEBEMjpU.rt3Y5jkzKuFFwsF2OsiZDQ"
+ },
+
+ "record": {
+ "CNAME": "imdakiki.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/ehab.json b/domains/ehab.json
index 64c1a47643..50e6321b3e 100644
--- a/domains/ehab.json
+++ b/domains/ehab.json
@@ -6,6 +6,6 @@
"record": {
"A": ["128.204.223.115"],
"TXT": "v=spf1 mx a include:mail9.serv00.com -all",
- "MX": "mail9.serv00.com"
+ "MX": ["mail9.serv00.com"]
}
}
diff --git a/domains/esb.json b/domains/esb.json
index 0eb39b0e6f..634ac3e486 100644
--- a/domains/esb.json
+++ b/domains/esb.json
@@ -4,17 +4,9 @@
"email": "educatedsuddenbucket@gmail.com"
},
"record": {
- "A": [
- "89.106.200.1"
- ],
- "TXT": [
- "zoho-verification=zb54408053.zmverify.zoho.in",
- "v=spf1 include:zohomail.in ~all"
- ],
- "MX": [
- "mx.zoho.in",
- "mx2.zoho.in",
- "mx3.zoho.in"
+ "NS": [
+ "dahlia.ns.cloudflare.com",
+ "will.ns.cloudflare.com"
]
}
}
diff --git a/domains/fatlum.json b/domains/fatlum.json
new file mode 100644
index 0000000000..5ae89600a3
--- /dev/null
+++ b/domains/fatlum.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "itsFatlum",
+ "email": "",
+ "discord": "563697359423406082",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.eMf4IlWexPe6hFp4hgcIjsQF7LlJVjZCor8HknXn87-_2J7ttauRifc5MzAdue3I7V8PgfBjusMWI63By5ZVL_QhWMwXdFpw8vOR3KB46SIwJ1VBZ_0fzme4_yK9Rn0WHYMkPgFTdQm7bKhiM_euYvD7xkVDCGcO46mghx69NYYMlz6WsuYV5gfDih0LKl_mxkQtpgL0NnBoTuy0_cGmLn2atwZmagQRrduf91LmkA0SMOc9OXlKJG6-aIAxz0J2jn3BsG9fV-fuBhn_ToMTzNkuqRB8Ikxwn4HbtrCLHbBt2XcSBLGXzvPwmCO_RBhghvT9jGF7D8RCJQvLrtfIWg.VZI0dxxVJpzoA988Se1djw.2plxMGn9juRIF9E9wn235jyEw7ykma_ifBnpiiWJLOTp36IIr0lYcb70zBc4kFEORDI5Phedd94c2XIXCnlnM-Z86Xa-pB-kV8iXv4oGMuJkXSNDwZlpCFnSKxZZnPYK.41WLVG_yeCWpPBlaSV_DIw"
+ },
+ "record": {
+ "CNAME": "itsfatlum.github.io"
+ }
+}
diff --git a/domains/fluffythebunny.json b/domains/fluffythebunny.json
new file mode 100644
index 0000000000..091f3cee83
--- /dev/null
+++ b/domains/fluffythebunny.json
@@ -0,0 +1,12 @@
+{
+ "description": "using it for my developer portfolio",
+ "repo": "https://github.com/Fluffythebunny/fluffythebunny.is-a.dev",
+ "owner": {
+ "username": "Fluffythebunny",
+ "email": "puglsytt@gmail.com",
+ "twitter": "pugls"
+ },
+ "record": {
+ "CNAME": "fluffythebunny.github.io"
+ }
+}
diff --git a/domains/forum.cupglass.json b/domains/forum.cupglass.json
deleted file mode 100644
index cf5459ea55..0000000000
--- a/domains/forum.cupglass.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "description": "Forummmm for my mini-projectss💥💥",
- "repo": "https://github.com/cupglassdev/cupglassdev.github.io",
- "owner": {
- "username": "cupglassdev",
- "email": "",
- "twitter": "https://x.com/cupglassdev",
- "lahelu": "https://lahelu.com/user/cupglassdev",
- "discord": "cupglassdev"
- },
- "record": {
- "CNAME": "cname.freeflarum.com"
- }
-}
diff --git a/domains/g.shockbs.json b/domains/g.shockbs.json
index 6d2da5cca5..42008293fb 100644
--- a/domains/g.shockbs.json
+++ b/domains/g.shockbs.json
@@ -1,9 +1,10 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"CNAME": "ziplineshockbs.onrender.com"
- }
+ },
+ "proxied": true
}
diff --git a/domains/gauravgupta.json b/domains/gauravgupta.json
deleted file mode 100644
index 571c2edf5b..0000000000
--- a/domains/gauravgupta.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "gauravgupta256",
- "email": "gauravgupta8652@gmail.com"
- },
- "record": {
- "CNAME": "gauravgupta.is-a.dev"
- }
-}
diff --git a/domains/gg.shockbs.json b/domains/gg.shockbs.json
index 6d2da5cca5..42008293fb 100644
--- a/domains/gg.shockbs.json
+++ b/domains/gg.shockbs.json
@@ -1,9 +1,10 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"CNAME": "ziplineshockbs.onrender.com"
- }
+ },
+ "proxied": true
}
diff --git a/domains/glitchblog.mrdev88.json b/domains/glitchblog.mrdev88.json
deleted file mode 100644
index e5e88e486b..0000000000
--- a/domains/glitchblog.mrdev88.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "Mrdev88",
- "email": "RuizMahdi@gmx.com"
- },
- "record": {
- "CNAME": "1nw25jjg5f4id14j87.fastly-validations.com"
- }
-}
diff --git a/domains/gs.json b/domains/gs.json
new file mode 100644
index 0000000000..0fbf2da2f9
--- /dev/null
+++ b/domains/gs.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "Newfies",
+ "email": "",
+ "twitter": "YeahItsGav",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.fraa7gfMOqQqWmbk-4fE5_pNd2zEvQ1K5w53QIHDTtr1C_Wu2Pzw-GfOlhxAtr7Af5ZIj_p7F5OOp6PwDxlKBXGt13e5l3Z9CQlYRclhfnaeYQm_xetYFlf9ucsYXVTfjFAeXxybT-RxbBjRl3Z48tSQaAto3E3Y-SbqwHPhjqh7-4tCpRZu5yc38Bx0_RHt95Ib2Mcg4cWShE-2ggvygSsonBuYBRGFqMIhM60tMA-cbJdQpvfVdZTJv0vHOtUJltv3eVzPpi4q5S5lWz3EKizGXuwAq3HLFycrBVrt5pegWLi1gId-urV9HGV1L3myGfQQSGwDVCEew9YKQFj71A.bxACuA7jrws9Z7z0oTx4wQ.fzzUvSGM_6ODHxUwg6vQvfJeI2kmUx5DW_4tIGVjPOymDplL8iBjzb5HIHhLqo_PlkcmGxeNr5DH4glPZdn1Dq2ywNTV90hWqpjfoHSOsYk.O8IBPKTRGwaH43VBg1rK3A",
+ "notes": "I never look at my emails, but I check on twitter alot, so if you need to contact, lmk your from is-a.dev"
+ },
+ "record": {
+ "URL": "https://href.li/https://github.com/GsLibrary"
+ }
+}
diff --git a/domains/h3lios.json b/domains/h3lios.json
new file mode 100644
index 0000000000..fbce1b0538
--- /dev/null
+++ b/domains/h3lios.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "NinjaXility",
+ "email": "",
+ "discord": "511106356267319296",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IBR3ZrvHG0dyQ1OU_ThEq2VbB_gvPhqPJkyPtwwbODCQENB-T2fstb7JrqYXG9lNaBWBrkeUzrheB5HY5tgEmPDAe6eDnN1D0dk0HKwxySEO7I1wbJsoJUnrWXigmuIYYkCPqHO9bBBD3seh4Y-REvCFI_xjNxBOIkqYiISDG4SJZW_AMoM-4ZwWJOS30ASQA3IM1DrvS3cNeamN0vmy2W16z7PUQxfn3UpwhdalfbzZKgiPowTVnbMT8OZ0IL45VZCmqeikraFf7fUv0PPCk54c07A8mIpYepzyy4hUftsF-ILHDLU_iOMZDHPrMDpPeyFXgYjA1iv1AfgFj6lshA.CFjZ-C3qr_js2SqYJQruNQ.j12mMFCkJhwZpCJXE_JDaY1XgeCUkSwhowfAvMEFrxvTdeqGbeEaHiXN4-oXfM0FuPLNgfsJDTwmva-ekWTAeOtX4a3IBlJ0uuj65_tdMOw.NDTU5ISRijrUIUoDvdYXJw"
+ },
+
+ "record": {
+ "CNAME": "ninjaxility.github.io"
+ }
+ }
+
diff --git a/domains/harvey.json b/domains/harvey.json
new file mode 100644
index 0000000000..dcada943be
--- /dev/null
+++ b/domains/harvey.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "hrv3y",
+ "email": "",
+ "discord": "969129892614660096",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.N_k2nKXX-b53o9aozW1ziDfVlbQt-Ja7nDBHnvFk-tNX-yaVmtnzLQOc540D_NWVEj9eac6rZ52VZUp3hQ3I8A9rnsp-zku18sZn1CRgnbIHty4yfWJxen4hHaS3vz0rLsXX_v73kYlG246cBUyvTc-Ps8TRVS-RzLUmQ-M1fT1Gf0lEDeqTHX8z7tsm_mbfCvyOcUrnp5nNLNchkdnflj5FHy_aZWvk_KETNAvfgCkTyl1EQ6u0jQ2UMsokEZ5tS6ze9fUk2X6Tc_ALE_tGEM_zBXLNS3YNngitA8NoNVcs2JZwXzZaf-zNTlN2JLYbYxEgxDbMpbkj7Y8vNmNC3Q.UcFQvuGHFScC6MVnGil7WQ.BOlRX-2b7-aiPOrh7VB8FvydjIlw9KwOiEd4NAuD_xo1GYU4fLcpTWQ3df2MkNa2vt0l85m-va9FgVVjuLQloQ.hvVVPUmPcKh_H4GRlVMO0g"
+ },
+
+ "record": {
+ "CNAME": "hosted.omg.lol"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/juniper.orangc.json b/domains/juniper.orangc.json
deleted file mode 100644
index 0c3b75689e..0000000000
--- a/domains/juniper.orangc.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "orxngc",
- "discord": "orangc",
- "email": "orangc@proton.me"
- },
- "record": {
- "A": ["66.59.209.229"]
- }
-}
diff --git a/domains/khushpatil.json b/domains/khushpatil.json
new file mode 100644
index 0000000000..11680a19de
--- /dev/null
+++ b/domains/khushpatil.json
@@ -0,0 +1,11 @@
+{
+ "description": "my personal homepage",
+ "repo": "https://github.com/AssassinK786",
+ "owner": {
+ "username": "AssassinK786",
+ "email": "khushpatil01@gmail.com"
+ },
+ "record": {
+ "CNAME": "assassink786.github.io"
+ }
+}
diff --git a/domains/kml.json b/domains/kml.json
new file mode 100644
index 0000000000..b960df2111
--- /dev/null
+++ b/domains/kml.json
@@ -0,0 +1,11 @@
+{
+ "description": "Personal website kmlupreti",
+ "repo": "https://github.com/kmlupreti/register",
+ "owner": {
+ "username": "kmlupreti",
+ "email": "kmlupreti@protonmail.com"
+ },
+ "record": {
+ "CNAME": "kmlupreti.github.io"
+ }
+}
diff --git a/domains/kuldeep.json b/domains/kuldeep.json
index a772ebcaf8..06fccac984 100644
--- a/domains/kuldeep.json
+++ b/domains/kuldeep.json
@@ -7,7 +7,7 @@
},
"record": {
- "A": ["185.199.108.153","185.199.109.153","185.199.110.153","185.199.110.153"]
+ "A": ["185.199.108.153","185.199.109.153","185.199.110.153","185.199.111.153"]
}
}
diff --git a/domains/kushdhingra.json b/domains/kushdhingra.json
index e82c0ac9fc..2754de6ca3 100644
--- a/domains/kushdhingra.json
+++ b/domains/kushdhingra.json
@@ -1,13 +1,13 @@
{
"owner": {
"username": "Kush-Dhingra",
- "email": "",
+ "email": "kushdhingra3112@gmail.com",
"discord": "1035869217796403220",
"OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.gJTReSXxF-8BxDH8rn6i_DIx0XuVrc4yYnOEN1Awfp7mZcYPIgcPt4mvsScPbJYhZLN5XtDlxl0DcdU8Za12GCk-aIWegJ9-_32bdjw3agBzaJ-ltaslRoVpNJ3zfLaQ9V-BrhwVMEJhpz5-0eYeEiikL4tHAoPzzKMlYIf8f5l7IL6aMfhBZvIFf0B3upGg2FeOpFCXAsttU5QiKkjUt4BjetuYb29UJoNzDco1ZExLdudlKd_fz6IcaAsw2K1u6MMDDs2khsic9M42AE3pRFCP_hacdllY5Z66ATlmKhYAxFryJYWrgbfpGX2PxSrQalAao_IP1TIGgiq7ugiBDw.Lg-WIZSH_nzEfnLZct78Cg.soPtqjy32EA2Ew63dHQ8P8-dt4ZihvZpipBVkHyX_rlnv-y5YpS5v2-2d3O5hGHRfCKnfxQsvewDfcPSGa4_Oq8BN01Kzhbet8AXRCK6uOM.ouoa2YqHKAeX9lKWZoFaog"
},
"record": {
- "CNAME": "kush-dhingra.github.io"
+ "CNAME": "kushdhingra.netlify.app"
}
}
diff --git a/domains/lackingcats.json b/domains/lackingcats.json
new file mode 100644
index 0000000000..c24c637443
--- /dev/null
+++ b/domains/lackingcats.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "LackingCats",
+ "email": "",
+ "discord": "779872274744082442",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.fZCqZADYaD6DmkBnWFX5BBymOqmUfupbNuBRVYrbeuRO4palBeX_kv0Mqpb0LPQD3yEU1d9YseIEo6eC4cTo_KUsDR6JPYaJz7t9URslQixyQaWjZblSwG_LYCXXoNfiApkH56rb9qDUkIBf1WWBK3jE2J_9FwMBg1BZk1W5RQbuMNe-QjjY3Hn7BSDJaqDOeNMIWz95KsrRnLEAcgjW9ocoyfLO6UGMT-Yvr18jlYN9g5lo8gVexPnMS95xpzBf2MtJmjra6UJdY8g4v9y6S6qTHnF2gVpSShnkBjZCtCACyZ-m7NnWB--9hOkb3_ZK74JN6077VE0NZjXbPMJu5A.PSNruSL2dxexpB-Li38TYg.bFEi6ytIOLsqkWTOj1BO8JDs77s7jwOultNAwkKSNuP2HI3L7h3ffsFYlwUtOCGWTnaXKoSJZni-1OBESUhsuGonJ7b_qGhrjgevMjjHuBw.nPHqlyhm4Q7T525SBnhxpw"
+ },
+ "record": {
+ "CNAME": "lackingcats.com.de"
+ }
+}
diff --git a/domains/luisalejandrobf.json b/domains/luisalejandrobf.json
new file mode 100644
index 0000000000..916c4abefd
--- /dev/null
+++ b/domains/luisalejandrobf.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "luisalejandrobf",
+ "email": "luisalejandrobravoferreira@gmail.com"
+ },
+ "record": {
+ "A": ["76.76.21.21"],
+ "TXT": "google-site-verification=sGmOAXQM9W1XepIo-CgWM_GlqEMW7z96P10kOC2p6fs"
+ }
+}
\ No newline at end of file
diff --git a/domains/lumi.json b/domains/lumi.json
new file mode 100644
index 0000000000..5f5496a5bc
--- /dev/null
+++ b/domains/lumi.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "itsFatlum",
+ "email": "",
+ "discord": "563697359423406082",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.rYJfVY9ddcNfUcpiA_o2o6afOGU-_sax-Oa1vg0zHVqWukEa9JJAEa-CF6Z6zpQTsrzS1fHeu17ddrDN2fvYf9d4K6-JpqrPBKX8RuPRhusLm4sdrrsDgyBcPQINzvVBdYya68DmkLQxf6lKAncjmRbLKkvkku32sakJlnSUbYJgstWMEBLtXe0hyroNt6_TkuNv9QiRECuhnmlo2_lC2P2EIh5ZtfvdNjfuS1N3uZc2nZpTmWclSQd3NVVe7IrZ7XfRocJFBKP19MIV9_qPxL6IKUH3gacnEqiFeTK2jirFv9dqvw6U_svwWqLeIv4Wc-p_I_GgIPUetDbOP4x0dQ.JRHm9e3Qt7KlgJhhL2pcng.s69nUmVqp_xNW7Bqr8g8ok3LPknauV7vy60oagYQgOEdZIdySA8znFtCp9YH7U7z2Bqr6n_suwYNkbgfgnniCPOo3b5P63Hxh9UQJe5wwkJpqqn2bAmS1rR1yAj4jnkv.89_IC0fL8YWZck7DqeF6zA"
+ },
+ "record": {
+ "CNAME": "lumidevelopment.github.io"
+ }
+}
diff --git a/domains/m.json b/domains/m.json
deleted file mode 100644
index ce1ab1851e..0000000000
--- a/domains/m.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "MX": ["mail.hrsn.net"],
- "TXT": "v=spf1 include:_spf.hrsn.net ~all"
- }
-}
diff --git a/domains/mail.lumix.json b/domains/mail.lumix.json
new file mode 100644
index 0000000000..68fb63a057
--- /dev/null
+++ b/domains/mail.lumix.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "o-lumix",
+ "email": "lumix@duck.com"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ]
+ }
+}
diff --git a/domains/maintainers.json b/domains/maintainers.json
deleted file mode 100644
index ce1ab1851e..0000000000
--- a/domains/maintainers.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "MX": ["mail.hrsn.net"],
- "TXT": "v=spf1 include:_spf.hrsn.net ~all"
- }
-}
diff --git a/domains/manage.json b/domains/manage.json
deleted file mode 100644
index f27db0ab3d..0000000000
--- a/domains/manage.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "URL": "https://github.com/is-a-dev/register"
- }
-}
diff --git a/domains/mantou.json b/domains/mantou.json
new file mode 100644
index 0000000000..aa797e3d03
--- /dev/null
+++ b/domains/mantou.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Mantouisyummy",
+ "email": "",
+ "discord": "549056425943629825",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.aY6RLu6wtMjujwma0w1H5llw7yK9XYV91lqW6dNENxxMQAM3gOGYdq4qzDEkqtJgnRPk-3AS2aKNdvYKvhbiEwQZJjfMiI6mph1mJOiDzytTY0ddjVxUbpqCOzYfnH4eelbV_OLpkG-Xhmjq9oTIv26OIAdb5fNAb8KQ5mijE7R0hNW1gGOkwVgkdrAPdOI3CzzDWqAl7CBrXwhlIGNNlayd82F8KyZ7W3zqgQ2mmH8LlgIfPq0LWizcv4pkPULosHuAbY_JZWqlxEUVM0nGOZj2XmzQaqvslkCk2rpDf4sMs6lB2i1PX_LSwPMxzhyMpJ_GYTbJzTbWlX7LvDrCjA.wK3xmiKr05WNTB93lhQTCg.Kda6iR0wzdHXtytoJJyX8mPKl644gOimwKl3TUOK_qT6HxMP3nbu5YWSRuKT4BH1orCeYKgwh5qfo9jhauznKBJKgq9_thQPO7fHG6mOleI.iesJ_iq1hFXiiynvLhjZgg"
+ },
+
+ "record": {
+ "A": ["76.76.21.21"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/maskduck.json b/domains/maskduck.json
index 81573292a4..58bb8fc8da 100644
--- a/domains/maskduck.json
+++ b/domains/maskduck.json
@@ -5,6 +5,6 @@
"discord": "_ngiu.a_"
},
"record": {
- "CNAME": "maskduck.github.io"
+ "NS":["ada.ns.cloudflare.com", "albert.ns.cloudflare.com"]
}
}
diff --git a/domains/meywy.json b/domains/meywy.json
index 87a6c494e7..4abdd5c121 100644
--- a/domains/meywy.json
+++ b/domains/meywy.json
@@ -8,8 +8,8 @@
},
"record": {
"MX": [
- "mx1.improvmx.com.",
- "mx2.improvmx.com."
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
],
"TXT": "v=spf1 include:spf.improvmx.com ~all",
"A": [
diff --git a/domains/mrdev88.json b/domains/mrdev88.json
deleted file mode 100644
index 069abeb77e..0000000000
--- a/domains/mrdev88.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "Mrdev88",
- "email": "RuizMahdi@gmx.com"
- },
- "record": {
- "CNAME": "mrdev88.github.io"
- }
-}
diff --git a/domains/node.stefdp.json b/domains/node.stefdp.json
deleted file mode 100644
index 13881f84fc..0000000000
--- a/domains/node.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/noise.json b/domains/noise.json
new file mode 100644
index 0000000000..223fa721c6
--- /dev/null
+++ b/domains/noise.json
@@ -0,0 +1,11 @@
+{
+ "description": "This is a domain for my personal website!",
+ "repo": "https://github.com/iamthen0ise/iamthen0ise.github.io",
+ "owner": {
+ "username": "iamthen0ise",
+ "email": "evgenii.uvarov.post@gmail.com"
+ },
+ "record": {
+ "CNAME": "iamthen0ise.github.io"
+ }
+}
diff --git a/domains/ntfy.stefdp.json b/domains/ntfy.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/ntfy.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/o.json b/domains/o.json
index b08792abe0..a31fc31ffc 100644
--- a/domains/o.json
+++ b/domains/o.json
@@ -1,13 +1,10 @@
{
"owner": {
"username": "omsenjalia",
- "email": "om@maintainers.is-a.dev"
+ "email": "",
+ "OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
},
"record": {
- "MX": [
- "mx1.improvmx.com",
- "mx2.improvmx.com"
- ],
- "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ "NS": ["raina.ns.cloudflare.com","sergi.ns.cloudflare.com"]
}
}
diff --git a/domains/om.json b/domains/om.json
index 9eef67dec7..a31fc31ffc 100644
--- a/domains/om.json
+++ b/domains/om.json
@@ -5,7 +5,6 @@
"OWL":"eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.RROLuTVz1Yiu7gYQ78NhdEWblxDBcdAtgXSrSKBX4s-6C15Gbg1gvdalVJRUFfhvt7FQ1HEtB7Wwz0Rdn1Jxk7Eqxp2s116sCmWwviCoh8RfWUEkWt9k4csRDjBtnwijFrfSv5gjf67gAe1dyoryQjg1ZFf9dlmwmaQtiJNKVkjlBsNAYNph9-CsYK8a0-TI-GVXung0rFjd-222TQij66CYBd7qitAvTPEypCBarB2SyBrN30wLTS9NjB-bSpmJZwcZO8CQ2obcYdMfVQ0nZgXBJhkbwjtGWfWTS-3AnCeLF48mT-9DCsVoraLb6DLoJoPB-9g4dim-tSZwC5pQ.OsIglUJ8OXge3R5CTVoEEw.YS-YtdmeJZKK1TEkERBJlH9RKdKcMynvcB5PrUsKXY4FJhgfrPoqF_JOAXO4tyYqwJzWnNM0hfd4WxqLi3KmjXToHxRAzdiFu1f4iiBfX68ABHoycHXkose4AHWe54a8.UazMc8kLEVvxHs2YN0DC3Q"
},
"record": {
- "MX": ["mx.zoho.in", "mx2.zoho.in", "mx3.zoho.in"],
- "TXT": "v=spf1 include:zoho.in ~all"
+ "NS": ["raina.ns.cloudflare.com","sergi.ns.cloudflare.com"]
}
}
diff --git a/domains/onvy.json b/domains/onvy.json
index 42e0a84bf3..9c63ed74ce 100644
--- a/domains/onvy.json
+++ b/domains/onvy.json
@@ -6,7 +6,7 @@
"record": {
"MX": [
"mx1.improvmx.com",
- "mx1.improvmx.com"
+ "mx2.improvmx.com"
],
"TXT": "v=spf1 include:spf.improvmx.com ~all"
}
diff --git a/domains/orangc.json b/domains/orangc.json
index da3053a49a..8fdc0ccc67 100644
--- a/domains/orangc.json
+++ b/domains/orangc.json
@@ -5,6 +5,6 @@
"email": "orangc@proton.me"
},
"record": {
- "CNAME": "edge.redirect.pizza"
+ "NS": ["nucum.ns.cloudflare.com", "tate.ns.cloudflare.com"]
}
}
diff --git a/domains/panel.stefdp.json b/domains/panel.stefdp.json
deleted file mode 100644
index 884b42e7a2..0000000000
--- a/domains/panel.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "A": ["194.60.201.37"]
- }
-}
diff --git a/domains/pi.cupglass.json b/domains/pi.cupglass.json
deleted file mode 100644
index fede3d8166..0000000000
--- a/domains/pi.cupglass.json
+++ /dev/null
@@ -1,15 +0,0 @@
-{
- "description": "My base website. Very epik tbh 💥💥",
- "repo": "https://github.com/cupglassdev/",
- "note": "no repo, this is just my actual nginx server",
- "owner": {
- "username": "cupglassdev",
- "email": "",
- "twitter": "https://x.com/cupglassdev",
- "lahelu": "https://lahelu.com/user/cupglassdev",
- "discord": "cupglassdev"
- },
- "record": {
- "URL": "https://cupglasspi.is-a.dev"
- }
-}
diff --git a/domains/fent.json b/domains/plug.json
similarity index 55%
rename from domains/fent.json
rename to domains/plug.json
index ede20a2254..651490985b 100644
--- a/domains/fent.json
+++ b/domains/plug.json
@@ -1,9 +1,9 @@
{
"owner": {
- "username": "fentbomb",
+ "username": "0n4u",
"email": "musicbotqn@gmail.com"
},
"record": {
- "CNAME": "fentbomb.github.io"
+ "CNAME": "0n4u.github.io"
}
}
diff --git a/domains/portainer.stefdp.json b/domains/portainer.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/portainer.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/potatoenergy.json b/domains/potatoenergy.json
new file mode 100644
index 0000000000..38f1af6712
--- /dev/null
+++ b/domains/potatoenergy.json
@@ -0,0 +1,11 @@
+{
+ "description": "Potato Energy Team Website Proxy",
+ "owner": {
+ "username": "ponfertato",
+ "email": "ponfertato@potatoenergy.ru",
+ "discord": "ponfertato"
+ },
+ "record": {
+ "CNAME": "potatoenergy.ru"
+ }
+}
diff --git a/domains/privacy.json b/domains/privacy.json
deleted file mode 100644
index 6f3b6f9c69..0000000000
--- a/domains/privacy.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
- "record": {
- "URL": "https://owl.is-a.dev"
- }
-}
diff --git a/domains/private.shockbs.json b/domains/private.shockbs.json
index 17225014f1..3f6947a7be 100644
--- a/domains/private.shockbs.json
+++ b/domains/private.shockbs.json
@@ -1,7 +1,7 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"CNAME": "shockbs-private.netlify.app"
diff --git a/domains/proxy.stefdp.json b/domains/proxy.stefdp.json
deleted file mode 100644
index 884b42e7a2..0000000000
--- a/domains/proxy.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "A": ["194.60.201.37"]
- }
-}
diff --git a/domains/raw-api.json b/domains/raw-api.json
index 888b761d42..0bb0ffbfbb 100644
--- a/domains/raw-api.json
+++ b/domains/raw-api.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "is-a-dev.github.io"
+ "CNAME": "is-a.dev"
}
}
diff --git a/domains/reda.json b/domains/reda.json
new file mode 100644
index 0000000000..cf97073942
--- /dev/null
+++ b/domains/reda.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "redaAssemghor",
+ "email": "",
+ "discord": "r3dapt"
+ },
+ "record": {
+ "CNAME": "portfolio-mocha-eta-22.vercel.app"
+ }
+}
diff --git a/domains/redaassemghor.json b/domains/redaassemghor.json
new file mode 100644
index 0000000000..aefd8cee7b
--- /dev/null
+++ b/domains/redaassemghor.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "redaassemghor",
+ "email": "",
+ "discord": "r3dapt"
+ },
+ "record": {
+ "CNAME": "portfolio-redas-projects-96854a06.vercel.app"
+ }
+}
diff --git a/domains/register.json b/domains/register.json
deleted file mode 100644
index f27db0ab3d..0000000000
--- a/domains/register.json
+++ /dev/null
@@ -1,10 +0,0 @@
-{
- "owner": {
- "username": "is-a-dev",
- "email": ""
- },
-
- "record": {
- "URL": "https://github.com/is-a-dev/register"
- }
-}
diff --git a/domains/renzyx.json b/domains/renzyx.json
index e5fda8c716..a3e01087f9 100644
--- a/domains/renzyx.json
+++ b/domains/renzyx.json
@@ -7,7 +7,7 @@
},
"record": {
"A": ["75.2.60.5"],
- "MX": "feedback-smtp.us-east-1.amazonses.com",
+ "MX": ["feedback-smtp.us-east-1.amazonses.com"],
"TXT": [
"v=spf1 include:amazonses.com ~all",
"p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDl3uimKrfDsLkGKkuwIhxEi23dmRf1GTyrcfpzF/iSfGrMp5xbDo3+lqN4R3Dx48orvlGbtNxQevx4NPIHU+BAIfRyRkMDzP9X+elTMFkHqHtly5OswQJd0Jciax8WqPoTfLo7+cjDyY0lejoqadUK0gxRe5b5HOLGNUBOCgmCNQIDAQAB"
diff --git a/domains/rpinix.cupglass.json b/domains/rpinix.cupglass.json
deleted file mode 100644
index 7027d7834b..0000000000
--- a/domains/rpinix.cupglass.json
+++ /dev/null
@@ -1,13 +0,0 @@
-{
- "description": "just a simple website for my rpi",
- "repo": "https://github.com/cupglassdev/rpi-nix-web",
- "owner": {
- "username": "cupglassdev",
- "email": "", "twitter":"https://x.com/cupglassdev",
-"lahelu":"https://lahelu.com/user/cupglassdev",
- "discord": "cupglassdev"
- },
- "record": {
- "A": ["76.76.21.21"]
- }
-}
diff --git a/domains/ryan.json b/domains/ryan.json
new file mode 100644
index 0000000000..8eef7edd50
--- /dev/null
+++ b/domains/ryan.json
@@ -0,0 +1,11 @@
+{
+ "description": "Dev Portfolio",
+ "owner": {
+ "email": "edev9022@gmail.com",
+ "username": "epic-person-on",
+ "discord": "epic.person"
+ },
+ "record": {
+ "CNAME": "ec2-3-12-165-61.us-east-2.compute.amazonaws.com"
+ }
+}
diff --git a/domains/sanjay123.json b/domains/sanjay123.json
new file mode 100644
index 0000000000..1d643d449e
--- /dev/null
+++ b/domains/sanjay123.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "sanjay7178",
+ "email": "",
+ "discord": "783593841529585665",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.ZBJQypIAJWa4IlL4QvRyoy0qLCRirh8jErK3tND1SPDtz1YOeiK7R8X2ibAHvEBwzQKDw7oJrD6U2y7YjfRkmS0UtOjauJ0-3qs_AUv4w6zDWpR7oHyTdxtmeO4WC98ff58b3BxcMA7jvIVCH7mSKpnYaQMdfYY9WlbOoMnipMiRZOqxRPp2nswW3M4AGOJgbzKyMPs-X8w78PSpD1eozCKkDpL0iWR6y-eYSQb1PtxEe0SifI3RwxSNGecBCRvikwt2WKe6b1EuPNucHgeTxMDzjGAcTAtaMTZ1q69EbTKZzOBL3miCtpq-dbsuSqqAfkQrxxnrM-6E2Xo6o93SCw.VNkxpGV8lOJq5_oWRa9Vcg.wcrYJnaSccXjrwRFLnakmE7O77GbEpnAWVL9uIJUKxUBMdTScxWHDQ5zC9-hGZrkEVD6KAtPTBdB2NtV9GgdFa2CpxNDgaxdBO3N8GKRlDp5NEKlNITQDgQbZnM0ckf_.9kha8tMGZqgQJaUx0MA3WQ"
+ },
+ "record": {
+ "CNAME": "sanjay7178.github.io"
+ }
+}
diff --git a/domains/sewt.json b/domains/sewt.json
index c68b0289b2..2b9df5a9ff 100644
--- a/domains/sewt.json
+++ b/domains/sewt.json
@@ -1,25 +1,25 @@
{
- "owner": {
- "username": "SkyExploreWasTaken",
- "email": "",
- "discord": "1049263707177353247",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.JjnXMeB-5yChFwqeTjRtzK3S_0JshRprm7Ix_Yl-zlvBzrR4ZlVNljlNwz5hHd6RwuBC_y5QFA1wpuLY7J9tuvaW_ttJpnbU58UGV2JNs6yR0C6ZBp5S0XR7J0zKoloVPgoN9i4q8SOzJeBQCanVOFzX3d9haVlZxrZFInLbMybS8FegbUdzDuV6s6TB0gA8fpBWx29ftzsLfwVj96tO9gmB0cJAU-URofHxmMBDUCIXDELQdrlRl_sj4kjW3uIKus_lgN7GU55xIvErfpV2_NVZTiuPzOh5HcP7rwWHhDaeKvQL4HeKWxIlrqQhPtQHQTFTgJuh7MmJimD95ixgVg.fhYccie9reT4Mi7XAmEtZA.lNh66dK74iYl7grB--wq1yi-AEKzvkuN7TLOS75XwYxJskb4dSr8TUcM0Y5ZVfR27oMahE1_kerqZOZOtZW58ZFwqoFD0oCFaEm68nwTd3or3uBWcYbZk5ilghu8TpPN.zKRzlPiGTBfNQTbJkCbrGg"
- },
-
- "record": {
- "MX": [
- "mx.zoho.eu",
- "mx2.zoho.eu",
- "mx3.zoho.eu"
- ],
- "TXT": [
- "v=spf1 include:zohomail.eu ~all"
- ],
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
- }
+ "owner": {
+ "username": "SkyExploreWasTaken",
+ "email": "",
+ "discord": "1049263707177353247",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.JjnXMeB-5yChFwqeTjRtzK3S_0JshRprm7Ix_Yl-zlvBzrR4ZlVNljlNwz5hHd6RwuBC_y5QFA1wpuLY7J9tuvaW_ttJpnbU58UGV2JNs6yR0C6ZBp5S0XR7J0zKoloVPgoN9i4q8SOzJeBQCanVOFzX3d9haVlZxrZFInLbMybS8FegbUdzDuV6s6TB0gA8fpBWx29ftzsLfwVj96tO9gmB0cJAU-URofHxmMBDUCIXDELQdrlRl_sj4kjW3uIKus_lgN7GU55xIvErfpV2_NVZTiuPzOh5HcP7rwWHhDaeKvQL4HeKWxIlrqQhPtQHQTFTgJuh7MmJimD95ixgVg.fhYccie9reT4Mi7XAmEtZA.lNh66dK74iYl7grB--wq1yi-AEKzvkuN7TLOS75XwYxJskb4dSr8TUcM0Y5ZVfR27oMahE1_kerqZOZOtZW58ZFwqoFD0oCFaEm68nwTd3or3uBWcYbZk5ilghu8TpPN.zKRzlPiGTBfNQTbJkCbrGg"
+ },
+ "record": {
+ "MX": [
+ "mx.zoho.eu",
+ "mx2.zoho.eu",
+ "mx3.zoho.eu"
+ ],
+ "TXT": [
+ "v=spf1 include:zohomail.eu ~all"
+ ],
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ]
+ },
+ "proxied": true
+}
diff --git a/domains/shock.json b/domains/shock.json
index a1f2c7535f..ed67791e53 100644
--- a/domains/shock.json
+++ b/domains/shock.json
@@ -1,9 +1,10 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"CNAME": "shockbs.github.io"
- }
+ },
+ "proxied": true
}
diff --git a/domains/shockbs.json b/domains/shockbs.json
index 6174d5fcee..36c5ea7812 100644
--- a/domains/shockbs.json
+++ b/domains/shockbs.json
@@ -1,11 +1,12 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
"A": ["76.76.21.21"],
- "MX": ["mx1.improvmx.com","mx2.improvmx.com."],
+ "MX": ["mx1.improvmx.com","mx2.improvmx.com"],
"TXT": "v=spf1 include:spf.improvmx.com ~all"
- }
+ },
+ "proxied": true
}
diff --git a/domains/smart.json b/domains/smart.json
new file mode 100644
index 0000000000..75e5d0b8d9
--- /dev/null
+++ b/domains/smart.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Smartlinuxcoder",
+ "email": "smartcoder@linuxmail.org",
+ "discord": "694986201739952229"
+ },
+ "record": {
+ "NS": [
+ "ignacio.ns.cloudflare.com",
+ "nicole.ns.cloudflare.com"
+ ]
+ }
+}
diff --git a/domains/sono.json b/domains/sono.json
index 6267949924..246b44bcdf 100644
--- a/domains/sono.json
+++ b/domains/sono.json
@@ -12,7 +12,7 @@
],
"MX": [
"mx1.improvmx.com",
- "mx2.improvmx.com."
+ "mx2.improvmx.com"
],
"TXT": [
"v=spf1 include:spf.improvmx.com ~all",
diff --git a/domains/spotify.stefdp.json b/domains/spotify.stefdp.json
deleted file mode 100644
index 13881f84fc..0000000000
--- a/domains/spotify.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/ss.stefdp.json b/domains/ss.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/ss.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/status.shockbs.json b/domains/status.shockbs.json
index e1aecf8ea6..7513244d13 100644
--- a/domains/status.shockbs.json
+++ b/domains/status.shockbs.json
@@ -1,8 +1,9 @@
{
"owner": {
"username": "shockbs",
- "email": "apipherng@gmail.com"
+ "discord": "880084860327313459"
},
"record": {
- "CNAME": "bbbsjsijb8hsbsnakkshdbfdnds.onrender.com" }
+ "CNAME": "bbbsjsijb8hsbsnakkshdbfdnds.onrender.com" },
+ "proxied": true
}
diff --git a/domains/status.stefdp.json b/domains/status.stefdp.json
deleted file mode 100644
index 13881f84fc..0000000000
--- a/domains/status.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/stefdp.json b/domains/stefdp.json
index d301d97a56..9fe3d2b01a 100644
--- a/domains/stefdp.json
+++ b/domains/stefdp.json
@@ -6,10 +6,9 @@
"OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
},
"record": {
- "A": [
- "194.60.201.37"
- ],
- "MX": ["mail.stefdp.lol"],
- "TXT": ["v=spf1 mx ~all"]
+ "NS": [
+ "jonah.ns.cloudflare.com",
+ "mary.ns.cloudflare.com"
+ ]
}
}
diff --git a/domains/team.json b/domains/team.json
index cafc4ed88c..8bb605134e 100644
--- a/domains/team.json
+++ b/domains/team.json
@@ -6,6 +6,6 @@
"email": ""
},
"record": {
- "CNAME": "is-a-dev.github.io"
+ "CNAME": "is-a.dev"
}
}
diff --git a/domains/test.json b/domains/test.json
deleted file mode 100644
index b62378c74a..0000000000
--- a/domains/test.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "TerraPlayz",
- "email": "omsenjalia@gmail.com",
- "discord": "248470317540966443"
- },
-
- "record": {
- "A": ["11.11.11.11"]
- }
-}
diff --git a/domains/tianji.stefdp.json b/domains/tianji.stefdp.json
deleted file mode 100644
index 13881f84fc..0000000000
--- a/domains/tianji.stefdp.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/toadvillebay.json b/domains/toadvillebay.json
new file mode 100644
index 0000000000..f0d18e834b
--- /dev/null
+++ b/domains/toadvillebay.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "notghostvista",
+ "email": "",
+ "discord": "907846380486291486",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.LcONtw79KouZ5CHwdUE19aYS3OPqr4tc-zYo1vI4hiyk_-q2ZWUnLchzwdBxILOFYfDPGPk9u7xrwmH4RsgNNNQlNUj5XYTeKPDE9EiSzf1vgWnJ-oQC9W75U_p0lxhf2gjlK1_6a7V8DLL8eYt_yEN65VM5z_oLxLDuGJycd-QfN9KB4M5GCnrDmaft36Izs8cF4fGy5PgI2Tg0xIg5UlPMK-q6UtQk16nFbMXMat8UxQ7Wha30qS5HNlI2iuCLQb8iwTcKnG4rpkWFS1UGQeBa2ZBRAJTDxdbaSfJqTb8b1zroVhhRc-txA1OBeLTuVaVzPvFAEwSsstGZXvEkmA.8Zfqqt1TD7xwGlYlsf5D0g.0IacuKDmXmhPtSrYzZAJj_gTPTwPNa1v7HRN0tOUoQMqwfj5avpIR4eCv7_tXPwpfk9hbjvXw3_AvVhlANGfOgO1GHhhIHltcDc2WWktd1c.WoQIyHoD15gcTvKBRhuM0w"
+ },
+
+ "record": {
+ "CNAME": "notghostvista.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/too-obvious-that.maskduck.json b/domains/too-obvious-that.maskduck.json
deleted file mode 100644
index dee070ebf2..0000000000
--- a/domains/too-obvious-that.maskduck.json
+++ /dev/null
@@ -1,16 +0,0 @@
-{
- "owner": {
- "username": "mAskDucK",
- "email": "",
- "discord": "maskduck",
- "twitter": "MaskDuck1",
- "reddit": "u/maskduck"
- },
- "record": {
- "MX": [
- "mx1.improvmx.com",
- "mx2.improvmx.com"
- ],
- "TXT": "v=spf1 include:spf.improvmx.com ~all"
- }
-}
diff --git a/domains/ujjwal.json b/domains/ujjwal.json
new file mode 100644
index 0000000000..783f87b0d8
--- /dev/null
+++ b/domains/ujjwal.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "ujjwalshriwal",
+ "email": "ujjwalshrivastav16@gmail.com"
+ },
+ "record": {
+ "CNAME": "ujjwalshriwal.github.io"
+ }
+}
diff --git a/domains/uk.json b/domains/uk.json
index 458840eb2f..c280fd33b1 100644
--- a/domains/uk.json
+++ b/domains/uk.json
@@ -4,7 +4,7 @@
"email": "isadev@ukriu.com"
},
"record": {
- "URL": "https://ukriu.github.io/",
+ "URL": "https://ukriu.com/",
"MX": [
"mx1.forwardemail.net",
"mx2.forwardemail.net"
diff --git a/domains/ukrio.json b/domains/ukrio.json
index 9604f8703d..86419a2508 100644
--- a/domains/ukrio.json
+++ b/domains/ukrio.json
@@ -5,7 +5,7 @@
"discord": "ukriu"
},
"record": {
- "URL": "https://ukriu.github.io",
+ "URL": "https://ukriu.com",
"TXT": "v=spf1 include:spf.improvmx.com ~all",
"MX": [
"mx1.improvmx.com",
diff --git a/domains/ukriu.json b/domains/ukriu.json
index af1b4f1d49..bd405f6e52 100644
--- a/domains/ukriu.json
+++ b/domains/ukriu.json
@@ -4,6 +4,6 @@
"email": "isadev@ukriu.com"
},
"record": {
- "URL": "https://ukriu.github.io"
+ "NS": ["love.ns.cloudflare.com", "pete.ns.cloudflare.com"]
}
}
diff --git a/domains/uldoge.json b/domains/uldoge.json
new file mode 100644
index 0000000000..520010a26f
--- /dev/null
+++ b/domains/uldoge.json
@@ -0,0 +1,10 @@
+{
+ "description": "This is a proxy that allows you to search things without being tracked",
+ "owner": {
+ "username": "Kawrrq",
+ "email": "kawrrq@gmail.com"
+ },
+ "record": {
+ "A": ["104.243.38.142"]
+ }
+}
diff --git a/domains/uptime.stefdp.json b/domains/uptime.stefdp.json
deleted file mode 100644
index 9f2b1dbbbb..0000000000
--- a/domains/uptime.stefdp.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "Stef-00012",
- "email": "",
- "discord": "694986201739952229",
- "github_id": 81536172,
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IpOYbPWBUcNp4Tgw32QASUSoI0QE_q5cFcyg6OXpDYy8Eg3QGBagIVG4mvt70DgnRFuK5IKE0NY9Bxr32RdWrBGDSUxlKtlJQ9WpQIkLV-I7A7F5Kym4QzM58anHX0fggGtzHi_TaXcZGI-1Rw0KMnaq91hHfnez4e3O_Q-Mf-SD55CPqwibG3YoXwWM-H3Q_iKWibEX5mzD1wppmT8IO_2lO5Ne1V8HKlZ5_SWd8t9JyEDB7CsGNcpTLnUMDwE67Pw_92FqU0iNDTwDKG7oZK1x4JG4rmZcvU0_CTOWW02TRWT_evf8XdAT9V6Me6OpCWvD1LlTgmdkYsResxTKxw.7rSUKyX20MsaT6H7mJFWJA.M-wdjyAOxmgWiRQbLzzMJDumoFfOzUYoXplEvrth469Ib361dIke2yOiFyk-PIMsds3-GQYnmujRqcn8wxzyKnaTapsC4g0aAit-DdtKv7s.iCc6o2XSd76RHqUN6a03og"
- },
- "record": {
- "CNAME": "proxy.stefdp.is-a.dev"
- }
-}
diff --git a/domains/vaibhav.json b/domains/vaibhav.json
new file mode 100644
index 0000000000..fe5db90c25
--- /dev/null
+++ b/domains/vaibhav.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "VaibhavSys",
+ "email": "vaibhavsys@protonmail.com"
+ },
+ "record": {
+ "NS": ["daphne.ns.cloudflare.com", "venkat.ns.cloudflare.com"]
+ }
+}
diff --git a/domains/vbkg.json b/domains/vbkg.json
index a5d5e977b9..7d55662bf5 100644
--- a/domains/vbkg.json
+++ b/domains/vbkg.json
@@ -6,7 +6,7 @@
"record": {
"MX": [
"mx1.improvmx.com",
- "mx1.improvmx.com"
+ "mx2.improvmx.com"
],
"TXT": "v=spf1 include:spf.improvmx.com ~all"
}
diff --git a/domains/w.json b/domains/w.json
index 8a99059696..722adf2189 100644
--- a/domains/w.json
+++ b/domains/w.json
@@ -1,10 +1,10 @@
-{
- "owner": {
- "username": "wdhdev",
- "email": "william@m.is-a.dev"
- },
-
- "record": {
- "CNAME": "cname.dub.co"
- }
-}
+{
+ "owner": {
+ "username": "wdhdev",
+ "email": "william@is-a.dev"
+ },
+
+ "record": {
+ "URL": "https://william.is-a.dev"
+ }
+}
diff --git a/domains/waffle.json b/domains/waffle.json
new file mode 100644
index 0000000000..879b053d95
--- /dev/null
+++ b/domains/waffle.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "thunderbrown",
+ "email": "",
+ "discord": "1136724508963786853",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.IOt6Fe7HwzPWLgMCnhEWxnQ5iIO_7N-JQQxbASxBod0HEN6leTAkKtT12vE4eQ8LQl-KyngOrCV3DXqMsm0TBQ-i50SATi0ulBUm0Y4DK5BE1ImiiI5r1k9wTNcIkscbjoPx-9UCXHJu4YSCCBO2ue1qabXS_qZBMoca9YoBhIRkm4TQdTHtQpBgPdEhQxpUTMLufSthViymi0gLtfrvN370LB5Ifn6uKEwqELbPgCguPrdgfRZ2IoDMmqIAjPammrzY38o4su-V11VHfaP2zmLbNirp68G1K5CM_4-vR_asABGGaZKL4UDeWSkXjWJ8vEPWtgDSWn9DdVvhALmpww.Twlxj_UzjVXZAApZdWop-w.iXs53ZGTHNcvbSqnMr8I7NMo9Uqc0snEg1Fwt148F9rGVw-WQnLrIJn3TiRHQE5t4yailES23tKfkjcyBzAM2ZQ794d8QZflOFRNmLatJe0.0oCcRtNlsAJPcsbek9kM3w"
+ },
+ "record": {
+ "CNAME": "thunderbrown.github.io"
+ }
+}
diff --git a/domains/william.json b/domains/william.json
index cd0805476b..0dc69e1ccc 100644
--- a/domains/william.json
+++ b/domains/william.json
@@ -1,10 +1,10 @@
{
"owner": {
"username": "wdhdev",
- "email": "william@m.is-a.dev"
+ "email": "william@is-a.dev"
},
"record": {
- "CNAME": "wdhdev.github.io"
+ "NS": ["chuck.ns.cloudflare.com", "walk.ns.cloudflare.com"]
}
}
diff --git a/domains/www.alvin.json b/domains/www.alvin.json
new file mode 100644
index 0000000000..337cc9f338
--- /dev/null
+++ b/domains/www.alvin.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "alvinsjoy",
+ "email": "",
+ "discord": "825382504353234954"
+ },
+ "record": {
+ "A": ["76.76.21.21"],
+ "TXT": ["google-site-verification=OFAPUslqNNZEkB5-UDAC1K1QjXCwDW_e3flhEchoobM"]
+ }
+}
diff --git a/domains/www.aswinmahesh.json b/domains/www.aswinmahesh.json
new file mode 100644
index 0000000000..7076da07a2
--- /dev/null
+++ b/domains/www.aswinmahesh.json
@@ -0,0 +1,13 @@
+{
+ "description": "Aswin Mahesh Website",
+ "repo": "https://github.com/aswinmahesh",
+ "owner": {
+ "username": "aswinmahesh",
+ "email": "aswinmahesh.com+dns@gmail.com"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+ }
\ No newline at end of file
diff --git a/domains/www.aswinmaheshc.json b/domains/www.aswinmaheshc.json
new file mode 100644
index 0000000000..0a6dd39c0b
--- /dev/null
+++ b/domains/www.aswinmaheshc.json
@@ -0,0 +1,13 @@
+{
+ "description": "Aswin Mahesh C Website",
+ "repo": "https://github.com/aswinmahesh",
+ "owner": {
+ "username": "aswinmahesh",
+ "email": "aswinmahesh.com+dns@gmail.com"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+ }
\ No newline at end of file
diff --git a/domains/www.joe50097.json b/domains/www.joe50097.json
new file mode 100644
index 0000000000..0b7b943e6d
--- /dev/null
+++ b/domains/www.joe50097.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Joe50097",
+ "email": "zcell9500@gmail.com"
+ },
+ "record": {
+ "CNAME": "joe50097.netlify.app"
+ }
+}
diff --git a/domains/www.json b/domains/www.json
index 6ecfc95b28..d41bee02d6 100644
--- a/domains/www.json
+++ b/domains/www.json
@@ -1,11 +1,9 @@
{
- "description": "The is-a.dev website",
- "repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
- "username": "wdhdev",
+ "username": "is-a-dev",
"email": ""
},
"record": {
- "CNAME": "is-a-dev.github.io"
+ "CNAME": "is-a.dev"
}
}
diff --git a/domains/z.json b/domains/z.json
index 63cb184904..d1b8310f13 100644
--- a/domains/z.json
+++ b/domains/z.json
@@ -1,18 +1,17 @@
{
- "owner": {
- "username": "SkyExploreWasTaken",
- "email": "",
- "discord": "1049263707177353247",
- "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.ae9lxcsRx9K7NJv-AcRXmgm-8sWQp-2e6Pxly82K9_797Wy3RjBtVGaq9snYtOkL-Qm9Oj845TiS8DV-ae7fPyWYwHgzrDj99tuRjVFyrvWfCbglvOWWHODsjV5lJpJZQjuHQn08O1Ptv69N5E2-imTQegZhcn5pkMiTCW8VpuXNXD_1Viu5_xSUYXYaAsaY-G0QYNLK3IPky8zorgdC4-5w23htVxmbiAMTtqHHOJx-wqv2R-xya96-BlQ_P8GtCTG5XJQzdqrqz630012T_tdD5VL5wbBbsCcWI4EoHqGZcBt4LhUL0GPnr9jnWuTcoBVyMSevG6plNjPF9wc6WQ.cOsFit33h3r9GZdCYQ8B3Q.iOkTaYYCBBWaWv9ZtDxpCL4ix4zMWwIYcIMuje17bYUcWom6plFOQFmG24WCucDMgbeMd_eM0NdttpHYRdl7VaM_E4zTUMViGInDWEO1ucI2whNYUt3Cf1Zev1851l44.eoIzam49yND7K-OzfY6Rag"
- },
-
- "record": {
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
- }
-
+ "owner": {
+ "username": "SkyExploreWasTaken",
+ "email": "",
+ "discord": "1049263707177353247",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.ae9lxcsRx9K7NJv-AcRXmgm-8sWQp-2e6Pxly82K9_797Wy3RjBtVGaq9snYtOkL-Qm9Oj845TiS8DV-ae7fPyWYwHgzrDj99tuRjVFyrvWfCbglvOWWHODsjV5lJpJZQjuHQn08O1Ptv69N5E2-imTQegZhcn5pkMiTCW8VpuXNXD_1Viu5_xSUYXYaAsaY-G0QYNLK3IPky8zorgdC4-5w23htVxmbiAMTtqHHOJx-wqv2R-xya96-BlQ_P8GtCTG5XJQzdqrqz630012T_tdD5VL5wbBbsCcWI4EoHqGZcBt4LhUL0GPnr9jnWuTcoBVyMSevG6plNjPF9wc6WQ.cOsFit33h3r9GZdCYQ8B3Q.iOkTaYYCBBWaWv9ZtDxpCL4ix4zMWwIYcIMuje17bYUcWom6plFOQFmG24WCucDMgbeMd_eM0NdttpHYRdl7VaM_E4zTUMViGInDWEO1ucI2whNYUt3Cf1Zev1851l44.eoIzam49yND7K-OzfY6Rag"
+ },
+ "record": {
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ]
+ },
+ "proxied": true
+}
diff --git a/domains/zedfr.json b/domains/zedfr.json
new file mode 100644
index 0000000000..3f3b9667c1
--- /dev/null
+++ b/domains/zedfr.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Not-oss",
+ "email": "",
+ "discord": "1071844093438726239",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.iCd7adkhXsDQ8JjsJXo0hr510PjPxN2DcPcJGhFr_33zbF5sHTZBbI5b0S7EXFgglMpHCIltY9aKCQ7GwZehq4DzvQU8BvHtEPvzwx-rscogCljZ6UF_DpOkypzju7gUtWHmQ1H8_UCXxh3Yv03PSsu9_FY59LgZsyGmSvQXQdJL1yEuuLMAN7ICeV-g8VVrptbPkru2F3KlKcpiPOgjJRojs53StmnnnRJbjJ_vhWdyN0bM69hutYKbi5XrOnN2ZfegaYvXrFZba1Dpj6n3nfrQmXBpA7UN08c6-JXvQuY63lGqv0I5mq03VzIitqqpQhMe0R3d40M7mZY7MgNKtQ.RvJhse7ZgSNv1TQ2fpsbxA.t3NwcxEB9GGJgs4GRpwUriu3ztxjwCKa7ARRXHtV5rO-VRVfPyHRGYG2UbnhZ7CQmlgaSrIMXAuystYoBbrszA.AqqWqZUgymarQHujxpm-sA"
+ },
+
+ "record": {
+ "A": ["89.168.59.222"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/ziyn.json b/domains/ziyn.json
index de9454b43b..a44f609150 100644
--- a/domains/ziyn.json
+++ b/domains/ziyn.json
@@ -1,9 +1,9 @@
{
- "owner": {
- "username": "ziyndev",
- "email": "NotZiyn@gmail.com"
- },
- "record": {
- "CNAME": "ziyn.pages.dev"
- }
+ "owner": {
+ "username": "ziyndev",
+ "email": "is-a-dev@ziyn.us.kg"
+ },
+ "record": {
+ "CNAME": "ziyn.pages.dev"
+ }
}
diff --git a/media/cloudflare.png b/media/cloudflare.png
new file mode 100644
index 0000000000..dc252a0a52
Binary files /dev/null and b/media/cloudflare.png differ
diff --git a/package.json b/package.json
deleted file mode 100644
index ccc8dbd415..0000000000
--- a/package.json
+++ /dev/null
@@ -1,27 +0,0 @@
-{
- "name": "is-a-dev-core",
- "version": "1.0.0",
- "description": "Register *.is-a.dev domains for free",
- "scripts": {
- "lint": "eslint utils scripts domains --ext .json,.js",
- "publish-records": "bun run -b ./scripts/register-domains.js",
- "dc": "docker-compose -p is-a-dev",
- "dc:start": "bun run dc up",
- "dc:shell": "bun run dc run dev /bin/bash"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/is-a-dev/register"
- },
- "author": "Akshay Nair ",
- "license": "GPL-3.0",
- "dependencies": {
- "ip-regex": "^5.0.0",
- "ramda": "^0.27.1"
- },
- "devDependencies": {
- "eslint": "^7.11.0",
- "eslint-plugin-json": "^2.1.2",
- "eslint-plugin-node": "^11.1.0"
- }
-}
diff --git a/scripts/action-utils.js b/scripts/action-utils.js
deleted file mode 100644
index 38a33a4209..0000000000
--- a/scripts/action-utils.js
+++ /dev/null
@@ -1,8 +0,0 @@
-module.exports = {
- hasLabel: (context, label) => {
- const pr = context.payload.pull_request || context.payload.issue;
- const { labels = [] } = pr;
-
- return !!labels.find(({ name }) => name === label);
- },
-};
diff --git a/scripts/certbot-auth.sh b/scripts/certbot-auth.sh
deleted file mode 100755
index 6b4ee8bc70..0000000000
--- a/scripts/certbot-auth.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/bin/env bash
-
-echo "$PWD";
-
-echo "AUTH ::[$CERTBOT_VALIDATION]::[$CERTBOT_TOKEN]::[$CERTBOT_REMAINING_CHALLENGES]";
-echo "[$CERTBOT_DOMAIN]";
-
-sleep 1;
-./scripts/certbot.sh acme_txt "$CERTBOT_VALIDATION";
-
-echo "Going to sleep for a few minutes...";
-
-# TODO: Check if $CERTBOT_VALIDATION == $(./scripts/certbot.sh get-acme)?
-sleep $((3*60));
-
-./scripts/certbot.sh check;
-
diff --git a/scripts/certbot.sh b/scripts/certbot.sh
deleted file mode 100755
index ee84aa6d7f..0000000000
--- a/scripts/certbot.sh
+++ /dev/null
@@ -1,91 +0,0 @@
-#!/usr/bin/env bash
-
-export NODE_ENV=production
-DRY_RUN=0
-if_dry_run() { [[ $DRY_RUN == 1 ]] && echo "$1" || echo "$2"; }
-
-generate_certificate() {
- outdir=$(mktemp -d /tmp/is-a-dev-certbot.XXXXX);
-
- certbot \
- --config-dir $outdir/config \
- --work-dir $outdir/work \
- --logs-dir $outdir/logs \
- certonly \
- --manual \
- --preferred-challenges=dns \
- --manual-auth-hook=./scripts/certbot-auth.sh \
- -m 'phenax5@gmail.com' \
- -d '*.is-a.dev,is-a.dev' \
- --agree-tos \
- $(if_dry_run "--dry-run" "");
-
- echo "+-----------------------------------------------+";
- echo "| Certificate output: |";
- echo "|= $outdir";
- echo "+-----------------------------------------------+";
-}
-
-update_record() {
- local method=$([[ "$1" == "add" ]] && echo "addZoneRecord" || echo "removeZoneRecord");
- local type="$2";
- local name="$3";
- local address="$4";
- local ttl=${5:-"1"};
- bun -e "
- const { domainService } = require('./utils/domain-service');
- const { ENV, DOMAIN_DOMAIN } = require('./utils/constants');
- const method = '$method';
- const name = '$name';
- const type = '$type';
-
- const record = { name, type, address: '$address', ttl: $ttl };
-
- async function main() {
- if (method === 'removeZoneRecord') {
- const data = await domainService.get({ customonly: 0, name: '$name.is-a.dev.', type });
- if (data.length > 0) {
- record.id = data[0].line;
- } else {
- throw new Error('Unable to find record');
- }
- }
-
- console.log('Uploading $name to', DOMAIN_DOMAIN, '(', ENV, ')...');
- const data = await domainService[method](record)();
- console.log(data.cpanelresult ? data.cpanelresult.data : data);
- }
-
- main().catch(console.error);
- "
-}
-
-update_acme_txt_record() {
- update_record add TXT '_acme-challenge' "$1";
-}
-
-reset_acme() {
- sleep 1;
- update_record remove TXT '_acme-challenge' '';
- update_record remove TXT '_acme-challenge' '';
- # update_record add CNAME 'www' "is-a-dev.github.io";
-}
-
-get_acme() { dig +noall +answer _acme-challenge.is-a.dev TXT | awk '{print $5}'; }
-
-case "$1" in
- check) echo "TXT record:: $(get_acme)" ;;
- get-acme) get_acme ;;
- cert) generate_certificate ;;
- acme_txt) update_acme_txt_record "$2" ;;
- reset) reset_acme ;;
- *) echo "Invalid command"; exit 1; ;;
-esac
-
-
-### STEPS ###
-# Run ./scripts/certbot.sh cert
-# cp -r /tmp/is-a-dev-whatever /opt/app/code/is-a-dev-cert
-# Upload cert.pem and privkey.pem (from config/live/is-a.dev/) contents to SSL > Manage SSL Sites
-# Run ./scripts/certbot.sh reset
-
diff --git a/scripts/register-domains.js b/scripts/register-domains.js
deleted file mode 100644
index 94bc02089b..0000000000
--- a/scripts/register-domains.js
+++ /dev/null
@@ -1,76 +0,0 @@
-const R = require("ramda");
-const {
- VALID_RECORD_TYPES,
- DOMAIN_HOST_IP,
- TTL,
- ENV,
-} = require("../utils/constants");
-const { domainService: dc } = require("../utils/domain-service");
-const { getDomains: gd } = require("../utils/get-domain");
-
-const getRecords = R.compose(R.toPairs, R.pick(VALID_RECORD_TYPES));
-
-const address = (type, value) => {
- if ("URL" === type) return `${value}`.replace(/\/$/g, "");
- if ("TXT" === type) return value;
- return (type === "CNAME" ? `${value}`.toLowerCase() : `${value}`).replace(
- /[/.]$/g,
- "",
- );
-};
-
-const toHostList = R.chain((data) => {
- // URL redirection must contain explicit A record
- // Wildcard A record breaks when used with MX
- // Ref: https://github.com/is-a-dev/register/issues/2365
- if ((data.record.URL && data.record.MX) || data.name === "@") {
- data.record.A = [DOMAIN_HOST_IP];
- }
-
- const records = getRecords(data.record);
-
- return R.chain(([recordType, values]) => {
- const valueList = Array.isArray(values) ? values : [values];
-
- return valueList.map((value, index) => ({
- name: data.name,
- type: recordType,
- address: address(recordType, value),
- ttl: TTL,
- ...(recordType === "MX" ? { priority: index + 20 } : {}),
- }));
- }, records);
-});
-
-const registerDomains = async ({
- domainService,
- getDomains,
- log = () => {},
-}) => {
- const domains = await getDomains().then(toHostList);
-
- if (domains.length === 0)
- return Promise.reject(new Error("Nothing to register"));
-
- log(`${domains.length} records found`);
- return domainService.updateHosts(domains);
-};
-
-const main = async () => {
- console.log(`Running in ${ENV} mode`);
- const result = await registerDomains({
- domainService: dc,
- getDomains: gd,
- log: console.log,
- });
- console.log(result);
-};
-
-if (require.main === module) {
- main().catch((e) => {
- console.error(e);
- process.exit(1);
- });
-} else {
- module.exports = { toHostList, registerDomains };
-}
diff --git a/scripts/reply.js b/scripts/reply.js
deleted file mode 100644
index dd4df142d1..0000000000
--- a/scripts/reply.js
+++ /dev/null
@@ -1,48 +0,0 @@
-const getInstructions = () => `
-The changes have been published!! It should reflect in less than 24 hours.
-
-## Here's what you need to do next
-If your domain points to a server you own, add \`domain-name.is-a.dev\` to your server config. For https, you will have to configure ssl certificate to allow the new subdomain.
-
-### For github pages users,
-* Go to your github page repo (\`user/user.github.io\`)
-* Open up the **settings** tab
-* Scroll down to the **Github pages** section
-* In the **Custom domain** text input, enter the domain you registered (\`domain-name.is-a.dev\`)
-* Check the **Enforce HTTPS** checkbox below the input
-* Give it some time to reflect and you should be good to go
-
-
-## Need help with your domain?
-If you are having trouble setting up your domain, [create an issue](https://github.com/is-a-dev/register/issues/new/choose). I will try my best to get back to you asap!
-
-
-## Made a mistake in the record?
-Don't worry, you can create a new pull request with the corrections
-
-
-## Love/Hate the service?
-**Love it?** Leave it a **star**! Also consider donating so that I can keep this service running forever!
-**Hate it?** Please leave your feedback by [creating an issue](https://github.com/is-a-dev/register/issues/new/choose). I would really like to keep improving this service for other users.
-
-
-## Wanna support this project?
-Help me in my mission to keep this service alive forever by donating!
-
-
-
-`;
-
-module.exports = {
- async instructions(context, github) {
- const pr = context.payload.issue || context.payload.pull_request;
- const { number } = pr;
-
- await github.issues.createComment({
- owner: context.repo.owner,
- repo: context.repo.repo,
- issue_number: number,
- body: getInstructions(),
- });
- },
-};
diff --git a/scripts/verify-record.sh b/scripts/verify-record.sh
deleted file mode 100644
index a4fc0da6a3..0000000000
--- a/scripts/verify-record.sh
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/env sh
-
-sed \
- -e 's/\.json.*$/.is-a.dev/g' \
- -e 's/^\s*domains\///g' \
- -e '/^\s*$/d' \
-| while read domain; do
- echo "$domain";
- dig "$domain" +noall +answer && echo "done" || echo "x";
-done;
-
diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js
deleted file mode 100644
index b2415f8b48..0000000000
--- a/tests/cpanel.test.js
+++ /dev/null
@@ -1,210 +0,0 @@
-const R = require("ramda");
-const { CpanelClient } = require("../utils/lib/cpanel");
-
-const mockFetch =
- (expectRequest, decorate = R.identity) =>
- (reqUrl, request) => {
- expectRequest(reqUrl, request);
- return Promise.resolve({
- json: async () => decorate(request),
- });
- };
-
-describe("Cpanel client", () => {
- describe("fetchzonerecords", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?customonly=0&domain=a.b&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.fetch();
- });
-
- it("should make the correct request with query", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?customonly=0&domain=foobar.boeey&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=fetchzone_records&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.fetch({ domain: "foobar.boeey" });
- });
- });
-
- describe("addzonerecord", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?domain=a.b&name=googo&type=CNAME&cname=beey&ttl=2020&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=add_zone_record&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.add({
- name: "googo",
- type: "boyee",
- cname: "beey",
- type: "CNAME",
- ttl: 2020,
- });
- });
- });
-
- describe("addzonerecord", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/json-api/cpanel?domain=a.b&line=500&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=ZoneEdit&cpanel_jsonapi_func=remove_zone_record&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.zone.remove({
- line: 500,
- });
- });
- });
-
- describe("fetchredirections", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/execute/Mime/list_redirects?cpanel_jsonapi_user=boy&cpanel_jsonapi_module=Mime&cpanel_jsonapi_func=list_redirects&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.redirection.fetch();
- });
- });
- describe("addredirection", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/execute/Mime/add_redirect?domain=googo&destination=https%3A%2F%2Foodf.com&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=Mime&cpanel_jsonapi_func=add_redirect&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.redirection.add({
- domain: "googo",
- destination: "https://oodf.com",
- });
- });
- });
-
- describe("deleteredirection", () => {
- it("should make the correct request", async () => {
- const fetch = mockFetch((url, request) => {
- expect(url).toBe(
- "https://example.com:2000/execute/Mime/delete_redirect?domain=googo&cpanel_jsonapi_user=boy&cpanel_jsonapi_module=Mime&cpanel_jsonapi_func=delete_redirect&cpanel_jsonapi_apiversion=2",
- );
- expect(request).toEqual({
- headers: {
- Authorization: "cpanel boy:boybyebye",
- },
- rejectUnauthorized: false,
- });
- });
-
- const cpanel = CpanelClient({
- host: "example.com",
- port: 2000,
- username: "boy",
- apiKey: "boybyebye",
- domain: "a.b",
- dependencies: { fetch },
- });
-
- await cpanel.redirection.remove({ domain: "googo" });
- });
- });
-});
diff --git a/tests/domain-service.test.js b/tests/domain-service.test.js
deleted file mode 100644
index dfd6400ed9..0000000000
--- a/tests/domain-service.test.js
+++ /dev/null
@@ -1,421 +0,0 @@
-const R = require("ramda");
-const { getDomainService, diffRecords } = require("../utils/domain-service");
-const { DOMAIN_DOMAIN } = require("../utils/constants");
-
-const getCpanel = ({
- zone,
- addZone,
- removeZone,
- redir,
- addRedir,
- removeRedir,
- addEmail,
- removeEmail,
-} = {}) => ({
- zone: {
- fetch: (_) => zone(),
- add: (rec) => addZone(rec),
- remove: (rec) => removeZone(rec),
- },
- redirection: {
- fetch: (_) => redir(),
- add: (rec) => addRedir(rec),
- remove: (rec) => removeRedir(rec),
- },
- email: {
- add: (rec) => addEmail(rec),
- remove: (rec) => removeEmail(rec),
- },
-});
-
-describe("diffRecords", () => {
- it("should show added record", () => {
- const oldRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "111.1.1212.1" },
- ];
- const newRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "111.1.1212.1" },
- { name: "boo", type: "CNAME", address: "x.com" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [],
- add: [{ name: "boo", type: "CNAME", address: "x.com" }],
- });
- });
-
- it("should show edited records", () => {
- const oldRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "111.1.1212.1" },
- ];
- const newRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "69.69.69.69" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [{ name: "xa", type: "A", address: "111.1.1212.1" }],
- add: [{ name: "xa", type: "A", address: "69.69.69.69" }],
- });
- });
-
- it("should show added records with the same name and record type", () => {
- const oldRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "69.69.69.69" },
- ];
- const newRecords = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xa", type: "A", address: "69.69.69.69" },
- { name: "xa", type: "A", address: "69.69.4.20" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [],
- add: [{ name: "xa", type: "A", address: "69.69.4.20" }],
- });
- });
-
- it("should diff complex changes", () => {
- const oldRecords = [
- { name: "a", type: "CNAME", address: "fck.com." },
- { name: "b", type: "A", address: "69.69.69.69" },
- { name: "111", type: "CNAME", address: "x" },
- { name: "d", type: "A", address: "69.69.4.20" },
- ];
- const newRecords = [
- { name: "111", type: "CNAME", address: "x" },
- { name: "d", type: "CNAME", address: "duck.com" },
- { name: "a", type: "CNAME", address: "og.com" },
- { name: "b", type: "A", address: "69.69.69.69" },
- { name: "b", type: "A", address: "69.69.4.20" },
- { name: "c", type: "CNAME", address: "ccc.cc" },
- ];
-
- const result = diffRecords(oldRecords, newRecords);
- expect(result).toEqual({
- remove: [
- { name: "a", type: "CNAME", address: "fck.com." },
- { name: "d", type: "A", address: "69.69.4.20" },
- ],
- add: [
- { name: "d", type: "CNAME", address: "duck.com" },
- { name: "a", type: "CNAME", address: "og.com" },
- { name: "b", type: "A", address: "69.69.4.20" },
- { name: "c", type: "CNAME", address: "ccc.cc" },
- ],
- });
- });
-});
-
-describe("Domain service", () => {
- const addZone = jest.fn(async () => ({}));
- const removeZone = jest.fn(async () => ({}));
- const addRedir = jest.fn(async () => ({}));
- const removeRedir = jest.fn(async () => ({}));
- const addEmail = jest.fn(async () => ({}));
- const removeEmail = jest.fn(async () => ({}));
-
- const mockDS = ({ zones, redirections }) =>
- getDomainService({
- cpanel: getCpanel({
- zone: async () => zones,
- redir: async () => redirections,
- addZone,
- addEmail,
- addRedir,
- removeZone,
- removeRedir,
- removeEmail,
- }),
- });
-
- const getRecordCalls = (recfn) =>
- recfn.mock.calls
- .map(R.head)
- .map(
- R.pick([
- "name",
- "type",
- "address",
- "redirect",
- "domain",
- "line",
- "priority",
- "exchanger",
- ]),
- );
-
- beforeEach(() => {
- addZone.mockClear();
- removeZone.mockClear();
- addRedir.mockClear();
- removeRedir.mockClear();
- addEmail.mockClear();
- removeEmail.mockClear();
- });
-
- describe("getHosts", () => {
- it("should resolve with a list of hosts", async () => {
- const zones = [
- { name: "xx", type: "CNAME", address: "fck.com." },
- { name: "xx", type: "A", address: "111.1.1212.1" },
- ];
- const redirections = [];
- const zone = async () => zones;
- const redir = async () => redirections;
- const mockDomainService = getDomainService({
- cpanel: getCpanel({ zone, redir }),
- });
- const list = await mockDomainService.getHosts();
-
- expect(list).toEqual([
- { name: "xx", type: "CNAME", address: "fck.com" },
- { name: "xx", type: "A", address: "111.1.1212.1" },
- ]);
- });
-
- it("should resolve with a redirections", async () => {
- const zones = [
- { line: "111", name: "xx", type: "CNAME", address: "fck.com." },
- { line: "112", name: "xx", type: "A", address: "111.1.1212.1" },
- ];
- const redirections = [
- { domain: "foo.booboo.xyz", destination: "https://google.com" },
- { domain: "foo1.booboo.xyz", destination: "https://duck.com" },
- ];
- const zone = async () => zones;
- const redir = async () => redirections;
- const mockDomainService = getDomainService({
- cpanel: getCpanel({ zone, redir }),
- });
- const list = await mockDomainService.getHosts();
-
- expect(list).toEqual([
- { id: "111", name: "xx", type: "CNAME", address: "fck.com" },
- { id: "112", name: "xx", type: "A", address: "111.1.1212.1" },
- {
- id: `foo.${DOMAIN_DOMAIN}`,
- name: "foo",
- type: "URL",
- address: "https://google.com",
- },
- {
- id: `foo1.${DOMAIN_DOMAIN}`,
- name: "foo1",
- type: "URL",
- address: "https://duck.com",
- },
- ]);
- });
- });
-
- describe("updateHosts", () => {
- it("should append new hosts with existing ones and set it", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- ];
- const redirections = [];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "CNAME", address: "goo" },
- { name: "c", type: "A", address: "12.131321.213" },
- { name: "c", type: "MX", address: "foobar.com", priority: 2 },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "c", type: "A", address: "12.131321.213" },
- ]);
-
- expect(addEmail).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addEmail)).toEqual([
- { domain: "c.is-a.dev", exchanger: "foobar.com", priority: 2 },
- ]);
-
- expect(removeZone).toHaveBeenCalledTimes(0);
- expect(removeEmail).toHaveBeenCalledTimes(0);
- });
-
- it("should update matching host and set it", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- ];
- const redirections = [];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "CNAME", address: "googoogaga" },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "b", type: "CNAME", address: "googoogaga" },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(removeZone)).toEqual([{ line: 2 }]);
- });
-
- it("should update matching host and set it", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- { line: 3, name: "b", type: "CNAME", address: "xaa" },
- ];
- const redirections = [];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "CNAME", address: "googoogaga" },
- { name: "b", type: "CNAME", address: "farboo" },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "b", type: "CNAME", address: "googoogaga" },
- { name: "b", type: "CNAME", address: "farboo" },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(removeZone)).toEqual([
- { line: 3 },
- { line: 2 },
- ]);
- });
-
- it("should workout this complex example", async () => {
- const zones = [
- { line: 1, name: "a", type: "CNAME", address: "world" },
- { line: 2, name: "b", type: "A", address: "1" },
- { line: 3, name: "b", type: "A", address: "2" },
- { line: 4, name: "c", type: "CNAME", address: "hello.com" },
- {
- line: 5,
- name: "c",
- type: "MX",
- address: "mx1.hello.com",
- priority: 20,
- },
- {
- line: 6,
- name: "c",
- type: "MX",
- address: "mx2.hello.com",
- priority: 21,
- },
- {
- line: 7,
- name: "b",
- type: "MX",
- address: "foo.bar",
- priority: 20,
- },
- { line: 101, name: "x", type: "A", address: "1" },
- { line: 99, name: "y", type: "A", address: "2" },
- { line: 100, name: "z", type: "A", address: "3" },
- ];
- const redirections = [
- {
- domain: `b.${DOMAIN_DOMAIN}`,
- destination: "https://foobar.com",
- },
- {
- domain: `c.${DOMAIN_DOMAIN}`,
- destination: "https://goobar.com",
- },
- {
- domain: `x.${DOMAIN_DOMAIN}`,
- destination: "https://example.com",
- },
- ];
-
- const mockDomainService = mockDS({ zones, redirections });
- await mockDomainService.updateHosts([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "A", address: "1" },
- { name: "b", type: "A", address: "2" },
- { name: "b", type: "A", address: "3" },
- { name: "b", type: "URL", address: "https://wowow.com" },
- { name: "c", type: "CNAME", address: "hello.com" },
- { name: "c", type: "URL", address: "https://goobar.com" },
- { name: "d", type: "CNAME", address: "helo.com" },
- { name: "d", type: "URL", address: "https://hhh.com" },
- { name: "x", type: "URL", address: "https://example69.com" },
- {
- name: "c",
- type: "MX",
- address: "mx2.hello.com",
- priority: 21,
- },
- { name: "a", type: "MX", address: "example.com", priority: 20 },
- ]);
-
- expect(addZone).toHaveBeenCalledTimes(3);
- expect(getRecordCalls(addZone)).toEqual([
- { name: "a", type: "CNAME", address: "boo" },
- { name: "b", type: "A", address: "3" },
- { name: "d", type: "CNAME", address: "helo.com" },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(4);
- expect(getRecordCalls(removeZone)).toEqual([
- { line: 101 },
- { line: 100 },
- { line: 99 },
- { line: 1 },
- ]);
-
- expect(addEmail).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(addEmail)).toEqual([
- {
- domain: "a.is-a.dev",
- exchanger: "example.com",
- priority: 20,
- },
- ]);
- expect(removeEmail).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(removeEmail)).toEqual([
- { domain: "b.is-a.dev", exchanger: "foo.bar", priority: 20 },
- {
- domain: "c.is-a.dev",
- exchanger: "mx1.hello.com",
- priority: 20,
- },
- ]);
-
- expect(addRedir).toHaveBeenCalledTimes(3);
- expect(getRecordCalls(addRedir)).toEqual([
- {
- domain: `b.${DOMAIN_DOMAIN}`,
- type: "permanent",
- redirect: "https://wowow.com",
- },
- {
- domain: `d.${DOMAIN_DOMAIN}`,
- type: "permanent",
- redirect: "https://hhh.com",
- },
- {
- domain: `x.${DOMAIN_DOMAIN}`,
- type: "permanent",
- redirect: "https://example69.com",
- },
- ]);
- expect(removeRedir).toHaveBeenCalledTimes(2);
- expect(getRecordCalls(removeRedir)).toEqual([
- { domain: `b.${DOMAIN_DOMAIN}` },
- { domain: `x.${DOMAIN_DOMAIN}` },
- ]);
- });
- });
-});
diff --git a/tests/domain-utils.test.js b/tests/domain-utils.test.js
deleted file mode 100644
index 896cf017d4..0000000000
--- a/tests/domain-utils.test.js
+++ /dev/null
@@ -1,8 +0,0 @@
-const { getDomains } = require("../utils/get-domain");
-
-describe("getDomains", () => {
- it("should resolve with the list of domains", async () => {
- const list = await getDomains();
- expect(Array.isArray(list)).toBe(true);
- });
-});
diff --git a/tests/domains.test.js b/tests/domains.test.js
deleted file mode 100644
index 75971b00b3..0000000000
--- a/tests/domains.test.js
+++ /dev/null
@@ -1,37 +0,0 @@
-const R = require("ramda");
-const fs = require("fs");
-const { getDomains } = require("../utils/get-domain");
-const { validateDomainData } = require("../utils/validations");
-const { DOMAINS_PATH } = require("../utils/constants");
-
-describe("Domains", () => {
- it("should all be json", async () => {
- const files = await fs.promises.readdir(DOMAINS_PATH, {});
- expect(files.filter((f) => !/\.json$/g.test(f)).length).toBe(0);
- });
-
- it("should be valid", (done) => {
- getDomains()
- .then(R.reject(R.propEq("name", "_psl")))
- .then(
- R.map((data) => {
- const { errors } = validateDomainData(data);
- if (errors.length) {
- const message = errors
- .map(
- ([key, { reason }]) =>
- `[${data.name}.${key}]: ${reason}`,
- )
- .join("\n");
- return `\nValidation errors in ${data.name}.json: \n${message}`;
- }
- return "";
- }),
- )
- .then(R.filter(R.complement(R.isEmpty)))
- .then((messages) =>
- messages.length ? done(messages.join("\n")) : done(),
- )
- .catch(done);
- });
-});
diff --git a/tests/register.test.js b/tests/register.test.js
deleted file mode 100644
index 6628df2118..0000000000
--- a/tests/register.test.js
+++ /dev/null
@@ -1,242 +0,0 @@
-const R = require("ramda");
-const { toHostList, registerDomains } = require("../scripts/register-domains");
-const { TTL, DOMAIN_DOMAIN } = require("../utils/constants");
-const { getDomainService } = require("../utils/domain-service");
-
-const getCpanel = ({
- zone,
- addZone,
- removeZone,
- redir,
- addRedir,
- removeRedir,
- addEmail,
- removeEmail,
-} = {}) => ({
- zone: {
- fetch: (_) => zone(),
- add: (rec) => addZone(rec),
- remove: (rec) => removeZone(rec),
- },
- redirection: {
- fetch: (_) => redir(),
- add: (rec) => addRedir(rec),
- remove: (rec) => removeRedir(rec),
- },
- email: {
- add: (rec) => addEmail(rec),
- remove: (rec) => removeEmail(rec),
- },
-});
-
-describe("toHostList", () => {
- it("should flatten domain data to list of hosts (without https)", () => {
- const res = toHostList([
- { name: "akshay", record: { CNAME: "phenax.github.io" } },
- { name: "foobar", record: { CNAME: "v.io" } },
- { name: "xx", record: { A: ["1.2.3.4", "5.6.3.2", "1.2.31.1"] } },
- {
- name: "xx",
- record: { CNAME: "foobar.com", MX: ["as.com", "f.com"] },
- },
- ]);
-
- expect(res).toEqual([
- {
- name: "akshay",
- type: "CNAME",
- address: "phenax.github.io",
- ttl: TTL,
- },
- { name: "foobar", type: "CNAME", address: "v.io", ttl: TTL },
- { name: "xx", type: "A", address: "1.2.3.4", ttl: TTL },
- { name: "xx", type: "A", address: "5.6.3.2", ttl: TTL },
- { name: "xx", type: "A", address: "1.2.31.1", ttl: TTL },
- { name: "xx", type: "CNAME", address: "foobar.com", ttl: TTL },
- {
- name: "xx",
- type: "MX",
- address: "as.com",
- priority: 20,
- ttl: TTL,
- },
- {
- name: "xx",
- type: "MX",
- address: "f.com",
- priority: 21,
- ttl: TTL,
- },
- ]);
- });
-});
-
-describe("registerDomains", () => {
- const addZone = jest.fn(async () => ({}));
- const removeZone = jest.fn(async () => ({}));
- const addRedir = jest.fn(async () => ({}));
- const removeRedir = jest.fn(async () => ({}));
- const addEmail = jest.fn(async () => ({}));
- const removeEmail = jest.fn(async () => ({}));
-
- const mockDS = ({ zones, redirections }) =>
- getDomainService({
- cpanel: getCpanel({
- zone: async () => zones,
- redir: async () => redirections,
- addZone,
- addEmail,
- addRedir,
- removeZone,
- removeRedir,
- removeEmail,
- }),
- });
-
- beforeEach(() => {
- addZone.mockClear();
- removeZone.mockClear();
- addRedir.mockClear();
- removeRedir.mockClear();
- addEmail.mockClear();
- removeEmail.mockClear();
- });
-
- it("should register the new set of hosts generated from domains list", async () => {
- const localHosts = [
- { name: "a", record: { CNAME: "hello" } },
- { name: "b", record: { CNAME: "xaa" } },
- ];
- const remoteHosts = [
- { line: 1, name: "a", type: "CNAME", address: "hello" },
- { line: 2, name: "b", type: "CNAME", address: "goo" },
- { line: 3, name: "b", type: "CNAME", address: "xaa" },
- ];
- const remoteRedirections = [];
-
- const domainService = mockDS({
- zones: remoteHosts,
- redirections: remoteRedirections,
- });
- await registerDomains({
- getDomains: async () => localHosts,
- domainService,
- });
-
- expect(addZone).toHaveBeenCalledTimes(0);
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(addRedir).toHaveBeenCalledTimes(0);
- expect(removeRedir).toHaveBeenCalledTimes(0);
- });
-
- it("should add the new set hosts", async () => {
- const localHosts = [
- { name: "a", record: { CNAME: "boo" } },
- {
- name: "b",
- record: {
- A: ["1.1.1.1", "1.1.1.2"],
- MX: "somemx",
- TXT: "some txt",
- },
- },
- { name: "c", record: { URL: "https://google.com" } },
- { name: "d", record: { CNAME: "foobar" } },
- {
- name: "e",
- record: { A: ["2.2.2.2"], TXT: ["some", "extra", "txt"] },
- },
- ];
- const remoteHosts = [
- { line: 1, name: "a", type: "CNAME", address: "boo" },
- { line: 2, name: "b", type: "MX", address: "othermx" },
- { line: 3, name: "d", type: "CNAME", address: "foobaz" },
- ];
- const remoteRedirections = [
- { domain: `b.${DOMAIN_DOMAIN}`, destination: "x" },
- { domain: `a.${DOMAIN_DOMAIN}`, destination: "y" },
- ];
-
- const domainService = mockDS({
- zones: remoteHosts,
- redirections: remoteRedirections,
- });
- await registerDomains({
- getDomains: async () => localHosts,
- domainService,
- });
-
- expect(addZone).toHaveBeenCalledTimes(8);
- expect(addZone.mock.calls).toEqual([
- [{ name: "b", type: "A", address: "1.1.1.1", line: undefined }],
- [{ name: "b", type: "A", address: "1.1.1.2", line: undefined }],
- [
- {
- name: "b",
- type: "TXT",
- address: "some txt",
- txtdata: "some txt",
- line: undefined,
- },
- ],
- [
- {
- name: "d",
- type: "CNAME",
- cname: "foobar",
- address: "foobar",
- line: undefined,
- },
- ],
- [{ name: "e", type: "A", address: "2.2.2.2", line: undefined }],
- [
- {
- name: "e",
- type: "TXT",
- address: "some",
- txtdata: "some",
- line: undefined,
- },
- ],
- [
- {
- name: "e",
- type: "TXT",
- address: "extra",
- txtdata: "extra",
- line: undefined,
- },
- ],
- [
- {
- name: "e",
- type: "TXT",
- address: "txt",
- txtdata: "txt",
- line: undefined,
- },
- ],
- ]);
-
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(removeZone.mock.calls).toEqual([[{ line: 3 }]]);
-
- expect(addRedir).toHaveBeenCalledTimes(1);
- expect(addRedir.mock.calls).toEqual([
- [
- {
- domain: "c.booboo.xyz",
- redirect: "https://google.com",
- redirect_wildcard: 1,
- redirect_www: 1,
- type: "permanent",
- },
- ],
- ]);
-
- expect(addEmail).toHaveBeenCalledTimes(1);
- expect(addEmail.mock.calls).toEqual([
- [{ domain: "b.is-a.dev", exchanger: "somemx", priority: 20 }],
- ]);
- });
-});
diff --git a/tests/validations.test.js b/tests/validations.test.js
deleted file mode 100644
index af27b68bbc..0000000000
--- a/tests/validations.test.js
+++ /dev/null
@@ -1,167 +0,0 @@
-const { validateDomainData, isValidDomain } = require("../utils/validations");
-const INVALID_NAMES = require("../utils/invalid-domains.json");
-
-const defaultDomain = {
- name: "aaa",
- record: {
- A: ["121.121.121.121"],
- },
- owner: {
- username: "betsy",
- email: "betsyfuckyoassup@foobar.com",
- },
-};
-
-const getstroflen = (len) => Array(len).fill("a").join("");
-
-describe("isValidMX", () => {
- it("should be valid mx record", () => {
- const cases = [
- { mx: "foobar.com", result: true },
- { mx: "as.as", result: true },
- { mx: "ASPMX.L.GOOGLE.COM", result: true },
- { mx: "ALT4.ASPMX.L.GOOGLE.COM", result: true },
- { mx: "hello", result: false },
- { mx: "helalsds-asd5sjdsd.com", result: true },
- { mx: "helalsds?asd5sjdsd.com", result: false },
- { mx: "helalsds_asd5sjdsd.com", result: false },
- ];
-
- cases.forEach(({ mx, result }) => {
- expect(isValidDomain(mx)).toBe(result);
- });
- });
-});
-
-describe("validateDomainData", () => {
- const invalidCases = [
- {},
- { name: "helo" },
- { name: "wwow", record: { A: ["12312"] } },
- ...[
- "",
- " ",
- undefined,
- "hlo wld",
- "g32++13",
- "ajsdD_123yq",
- "khsda%",
- "122*dsd",
- getstroflen(101),
- ].map((name) => ({
- ...defaultDomain,
- name,
- })),
- { ...defaultDomain, record: { CNAME: "sd", A: ["121,3213"] } },
- { ...defaultDomain, record: { A: ["121", "12"], FOOBAR: ["sd"] } },
- { ...defaultDomain, record: { A: [] } },
- { ...defaultDomain, owner: {} },
- { ...defaultDomain, owner: { username: "hwelo" } },
- { ...defaultDomain, owner: { email: "hwelo" } },
- { ...defaultDomain, record: { CNAME: "http://foobar.com" } },
- { ...defaultDomain, record: { CNAME: "https://foobar.com" } },
- { ...defaultDomain, record: { URL: "foobar.com" } },
- {
- ...defaultDomain,
- record: { CNAME: "foobar.com", A: ["11.22.22.33"] },
- },
- {
- ...defaultDomain,
- record: { CNAME: "foobar.com", MX: ["ALT4.ASPMX.L.GOOGLE.COM"] },
- },
- ...INVALID_NAMES.map((name) => ({ ...defaultDomain, name })).slice(
- 0,
- 1,
- ),
- { ...defaultDomain, name: "ww2.baa" },
- { ...defaultDomain, name: "help.baa" },
- { ...defaultDomain, name: "_github-pages-challenge-is-a-dev" },
- { ...defaultDomain, name: "_github-challenge-is-a-dev" },
- { ...defaultDomain, record: { AAAA: [] } },
- { ...defaultDomain, record: { AAAA: ["182.22.222.22", "::1"] } },
- { ...defaultDomain, record: { AAAA: "182.22.222.22" } },
- { ...defaultDomain, record: { A: "::1" } },
- { ...defaultDomain, name: "_discord" },
- { ...defaultDomain, name: "_gitlab-pages-verification-code" },
- { ...defaultDomain, name: "_acme-challenge" },
- { ...defaultDomain, name: "_dmarc" },
- { ...defaultDomain, name: "_gh-is-a-dev" },
- { ...defaultDomain, name: "_domainkey" },
- { ...defaultDomain, name: "_improvmx" },
- { ...defaultDomain, name: "_vercel" },
- ];
-
- const validCases = [
- defaultDomain,
- ...[
- "hello",
- "hello-world",
- "11111111111",
- "--wow--",
- "wow--",
- "--wow",
- ].map((name) => ({
- ...defaultDomain,
- name,
- })),
- {
- ...defaultDomain,
- description: getstroflen(99),
- },
- { ...defaultDomain, record: { CNAME: "aa.sd" } },
- { ...defaultDomain, record: { URL: "https://foobar.com" } },
- { ...defaultDomain, record: { URL: "http://foobar.com/foobar/" } },
- { ...defaultDomain, record: { MX: ["ALT4.ASPMX.L.GOOGLE.COM"] } },
- { ...defaultDomain, record: { TXT: "foobar wow nice!!!" } },
- {
- ...defaultDomain,
- record: { A: ["1.1.1.1"], MX: ["mx1.example.com"] },
- },
- { ...defaultDomain, name: "gogo.foo.bar" },
- { ...defaultDomain, name: "ww9.baa" },
- { ...defaultDomain, name: "_github-pages-challenge-phenax.akshay" },
- { ...defaultDomain, name: "_github-pages-challenge-hello01-ga" },
- { ...defaultDomain, name: "_github-pages-challenge-hello01_ga" },
- { ...defaultDomain, name: "_github-challenge-phenax.akshay" },
- { ...defaultDomain, name: "_github-challenge-hello01-ga" },
- { ...defaultDomain, name: "_github-challenge-hello01_ga" },
- {
- ...defaultDomain,
- record: { TXT: ["foobar wow nice!!!", "more text"] },
- },
- {
- ...defaultDomain,
- record: { AAAA: ["::1", "2001:db8:3333:4444:5555:6666:7777:8888"] },
- },
- { ...defaultDomain, record: { A: ["122.222.222.222"] } },
- { ...defaultDomain, name: "_discord.subdomain" },
- { ...defaultDomain, name: "_gitlab-pages-verification-code.subdomain" },
- { ...defaultDomain, name: "_acme-challenge.subdomain" },
- { ...defaultDomain, name: "_dmarc.subdomain" },
- { ...defaultDomain, name: "_gh-phenax.akshay" },
- { ...defaultDomain, name: "_gh-hello01-ga" },
- { ...defaultDomain, name: "_gh-hello01_ga" },
- { ...defaultDomain, name: "_domainkey.subdomain" },
- { ...defaultDomain, name: "mx._domainkey.subdomain" },
- { ...defaultDomain, name: '_improvmx.subdomain' },
- { ...defaultDomain, name: '_vercel.subdomain' },
- { ...defaultDomain, name: "a.b" },
- ];
-
- it("should return false for invalid data", () => {
- invalidCases.forEach((data) => {
- const { valid, errors } = validateDomainData(data);
- expect(valid).toBe(false);
- expect(errors.length).toBeGreaterThan(0);
- });
- });
-
- it("should return true if the name is valid", () => {
- validCases.forEach((data) => {
- const { valid, errors } = validateDomainData(data);
- if (!valid) console.log(JSON.stringify(errors, null, 2));
- expect(valid).toBe(true);
- expect(errors).toEqual([]);
- });
- });
-});
diff --git a/utils/constants.js b/utils/constants.js
deleted file mode 100644
index b0cf0079de..0000000000
--- a/utils/constants.js
+++ /dev/null
@@ -1,30 +0,0 @@
-const path = require("path");
-
-const { NODE_ENV: ENV = "test" } = process.env;
-
-const {
- DOMAIN_USER,
- DOMAIN_API_KEY,
- DOMAIN_DOMAIN,
- DOMAIN_API_HOST,
- DOMAIN_API_PORT,
- DOMAIN_HOST_IP,
-} = process.env;
-
-const IS_TEST = ENV === "test";
-
-const DOMAINS_PATH = path.resolve("domains");
-
-module.exports = {
- ENV,
- IS_TEST,
- VALID_RECORD_TYPES: ["CNAME", "A", "URL", "MX", "TXT", "AAAA"],
- DOMAIN_DOMAIN: DOMAIN_DOMAIN || "booboo.xyz",
- DOMAIN_USER: IS_TEST ? "testuser" : DOMAIN_USER,
- DOMAIN_API_KEY: IS_TEST ? "testkey" : DOMAIN_API_KEY,
- DOMAIN_API_HOST: IS_TEST ? "example.com" : DOMAIN_API_HOST,
- DOMAIN_API_PORT: IS_TEST ? 6969 : DOMAIN_API_PORT,
- DOMAIN_HOST_IP,
- DOMAINS_PATH,
- TTL: 5 * 60 * 60,
-};
diff --git a/utils/domain-service.js b/utils/domain-service.js
deleted file mode 100644
index b76eeac012..0000000000
--- a/utils/domain-service.js
+++ /dev/null
@@ -1,206 +0,0 @@
-const R = require("ramda");
-const { cpanel } = require("./lib/cpanel");
-const { DOMAIN_DOMAIN, VALID_RECORD_TYPES } = require("./constants");
-const { then, log, print, lazyTask, batchLazyTasks } = require("./helpers");
-
-const BATCH_SIZE = 1;
-
-const recordToRedirection = ({ name, address }) => ({
- domain: name === "@" ? DOMAIN_DOMAIN : `${name}.${DOMAIN_DOMAIN}`,
- redirect: address,
- type: "permanent",
- redirect_wildcard: 1,
- redirect_www: 1,
-});
-const recordToZone = ({ name, type, address, id, priority }) => ({
- line: id,
- name: name === "@" ? `${DOMAIN_DOMAIN}.` : name,
- type,
- address,
- ...(type === "MX" ? { priority } : {}),
- ...(type === "CNAME" ? { cname: address } : {}),
- ...(type === "TXT" ? { txtdata: address } : {}),
-});
-
-const cleanName = (name) =>
- [DOMAIN_DOMAIN, `${DOMAIN_DOMAIN}.`].includes(name)
- ? "@"
- : `${name}`
- .replace(new RegExp(`\\.${DOMAIN_DOMAIN}\\.?$`), "")
- .toLowerCase();
-
-const zoneToRecord = ({
- name,
- type,
- cname,
- address,
- priority,
- preference,
- exchange,
- record,
- line: id,
-}) => ({
- id,
- name: cleanName(name),
- type: `${type}`,
- address: `${exchange || cname || address || record}`
- .replace(/\.$/g, "")
- .toLowerCase(),
- priority: priority || preference,
-});
-const redirectionToRecord = ({ domain, destination }) => ({
- id: domain,
- name: cleanName(domain),
- type: "URL",
- address: `${destination}`.replace(/\/$/g, ""),
-});
-
-const recordToEmailMx = ({ name, address, priority }) => ({
- domain: `${name}.is-a.dev`,
- exchanger: address,
- priority,
-});
-
-const getHostKey = (host) =>
- `${host.name.toLowerCase()}##${host.type.toLowerCase()}##${host.address.toLowerCase()}`;
-
-const isReserved = (domain) =>
- domain.name.startsWith("*") || !VALID_RECORD_TYPES.includes(domain.type);
-
-const diffRecords = (oldRecords, newRecords) => {
- const isMatchingRecord = (a, b) => getHostKey(a) === getHostKey(b);
-
- const remove = R.differenceWith(isMatchingRecord, oldRecords, newRecords);
- const add = R.differenceWith(isMatchingRecord, newRecords, oldRecords);
-
- return { add, remove };
-};
-
-const executeBatch = (batches) =>
- batches.reduce((promise, batch, index) => {
- return promise.then(async () => {
- log(
- ">>> Running batch number:",
- index + 1,
- `(size: ${batch.length})`,
- );
-
- const values = await Promise.all(
- batch.map((fn) => fn().catch((e) => console.error(e))),
- );
-
- const results = values.map((data) =>
- R.pathOr({ result: data }, ["cpanelresult", "data", 0], data),
- );
- const failed = results.filter((x) => (x.result || {}).status != 1);
-
- log(`${values.length - failed.length}/${values.length}`);
- failed.length && log(JSON.stringify(failed, null, 2));
-
- return null;
- });
- }, Promise.resolve());
-
-const getDomainService = ({ cpanel }) => {
- const fetchZoneRecords = R.compose(
- then(R.reject(isReserved)),
- then(R.map(zoneToRecord)),
- cpanel.zone.fetch,
- );
- const fetchRedirections = R.compose(
- then(R.map(redirectionToRecord)),
- cpanel.redirection.fetch,
- );
-
- const addZoneRecord = lazyTask(
- R.compose(
- R.ifElse(
- R.propEq("type", "MX"),
- R.compose(cpanel.email.add, recordToEmailMx),
- cpanel.zone.add,
- ),
- recordToZone,
- print(
- (r) => `Adding zone for ${r.name}: (${r.type} ${r.address})...`,
- ),
- ),
- );
- const removeZoneRecord = lazyTask(
- R.compose(
- R.ifElse(
- R.propEq("type", "MX"),
- R.compose(cpanel.email.remove, recordToEmailMx),
- R.compose(cpanel.zone.remove, R.pick(["line"])),
- ),
- recordToZone,
- print(
- (r) =>
- `Deleting zone for ${r.name}: (${r.type} ${r.address})...`,
- ),
- ),
- );
- const addRedirection = lazyTask(
- R.compose(
- cpanel.redirection.add,
- recordToRedirection,
- print(({ name }) => `Adding redirection for ${name}`),
- ),
- );
- const removeRedirection = lazyTask(
- R.compose(
- cpanel.redirection.remove,
- R.pick(["domain"]),
- recordToRedirection,
- print(({ name }) => `Deleting redirection for ${name}`),
- ),
- );
-
- const getHosts = () =>
- Promise.all([fetchZoneRecords(), fetchRedirections()]).then(R.flatten);
-
- const addRecords = R.compose(
- batchLazyTasks(BATCH_SIZE),
- R.filter(Boolean),
- R.map(
- R.cond([
- [R.propEq("type", "URL"), addRedirection],
- [R.T, addZoneRecord],
- ]),
- ),
- );
- const removeRecords = R.compose(
- batchLazyTasks(BATCH_SIZE),
- R.map(
- R.cond([
- [R.propEq("type", "URL"), removeRedirection],
- [R.T, removeZoneRecord],
- ]),
- ),
- R.sort((a, b) => b.id - a.id),
- );
-
- const updateHosts = async (hosts) => {
- const remoteHostList = await getHosts();
- const { add, remove } = diffRecords(remoteHostList, hosts);
- console.log(`Adding ${add.length}; Removing ${remove.length}`);
-
- await executeBatch([...removeRecords(remove), ...addRecords(add)]);
- return { added: add.length, removed: remove.length };
- };
-
- return {
- getHosts,
- get: cpanel.zone.fetch,
- addZoneRecord,
- removeZoneRecord,
- updateHosts,
- };
-};
-
-const domainService = getDomainService({ cpanel });
-
-module.exports = {
- getDomainService,
- domainService,
- diffRecords,
-};
diff --git a/utils/get-domain.js b/utils/get-domain.js
deleted file mode 100644
index 0642403580..0000000000
--- a/utils/get-domain.js
+++ /dev/null
@@ -1,27 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const R = require("ramda");
-const { DOMAINS_PATH } = require("./constants");
-
-const toDomain = (str) => path.join(DOMAINS_PATH, str);
-
-const parseDomain = (name) => (str) => {
- try {
- return JSON.parse(str);
- } catch (e) {
- throw new Error(`Error: Could not parse ${name} => ${str}`);
- }
-};
-
-const toDomainData = (name) =>
- R.compose(parseDomain(name), R.toString, fs.readFileSync, toDomain)(name);
-
-const getDomains = () =>
- fs.promises.readdir(DOMAINS_PATH, {}).then(
- R.map((name) => ({
- ...toDomainData(name),
- name: name.replace(/\.json$/, ""),
- })),
- );
-
-module.exports = { getDomains };
diff --git a/utils/helpers.js b/utils/helpers.js
deleted file mode 100644
index 03369f2b77..0000000000
--- a/utils/helpers.js
+++ /dev/null
@@ -1,54 +0,0 @@
-const R = require("ramda");
-const { IS_TEST } = require("./constants");
-
-const log = IS_TEST ? () => {} : console.log;
-const print = (fn) => (x) => log(fn(x)) || x;
-
-const between = (min, max) => (num) => num >= min && num <= max;
-const testRegex = (regex) => (str) => !!(str && str.match(regex));
-
-const validate = (pattern) => (data) =>
- R.compose(
- (invalidPairs) =>
- invalidPairs.length
- ? { errors: invalidPairs, valid: false }
- : { errors: [], valid: true },
- R.filter(([key, { fn }]) => (fn ? !fn(data[key]) : false)),
- R.toPairs,
- )(pattern);
-
-const or = R.anyPass;
-const and = R.allPass;
-
-const then = (fn) => (p) => p.then(fn);
-
-const lazyTask = (fn) => (data) => () => fn(data);
-
-const batchLazyTasks = (count) => (tasks) =>
- tasks.reduce((batches, task) => {
- if (batches.length === 0) return [[task]];
-
- const full = R.init(batches);
- const last = R.last(batches);
-
- if (last.length >= count) return [...batches, [task]];
- return [...full, [...last, task]];
- }, []);
-
-const withLengthGte = (n) => R.compose(R.gte(R.__, n), R.length);
-const withLengthEq = (n) => R.compose(R.equals(n), R.length);
-
-module.exports = {
- or,
- and,
- validate,
- between,
- testRegex,
- log,
- print,
- then,
- lazyTask,
- batchLazyTasks,
- withLengthEq,
- withLengthGte,
-};
diff --git a/utils/invalid-domains.json b/utils/invalid-domains.json
deleted file mode 100644
index 736faa9bd3..0000000000
--- a/utils/invalid-domains.json
+++ /dev/null
@@ -1,27 +0,0 @@
-[
- "0",
- "_acme-challenge",
- "_discord",
- "_dmarc",
- "_domainkey",
- "_gh-is-a-dev",
- "_github-challenge-is-a-dev",
- "_github-pages-challenge-is-a-dev",
- "_gitlab-pages-verification-code",
- "_improvmx",
- "_vercel",
- "con",
- "help",
- "no-reply",
- "noreply",
- "notification",
- "notifications",
- "support",
- "ww",
- "ww1",
- "ww2",
- "ww3",
- "ww4",
- "wwww",
- "your-domain-name"
-]
diff --git a/utils/lib/cpanel.js b/utils/lib/cpanel.js
deleted file mode 100644
index 573a22e5ea..0000000000
--- a/utils/lib/cpanel.js
+++ /dev/null
@@ -1,123 +0,0 @@
-const R = require("ramda");
-const qs = require("querystring");
-const {
- DOMAIN_API_HOST,
- DOMAIN_API_PORT,
- DOMAIN_USER,
- DOMAIN_API_KEY,
- DOMAIN_DOMAIN,
-} = require("../constants");
-
-const CpanelClient = (options) => {
- const api =
- ({ basePath = "", action = "" }) =>
- (module, func, defaultQuery = {}) =>
- (q = {}) => {
- const query = {
- ...defaultQuery,
- ...q,
- cpanel_jsonapi_user: options.username,
- cpanel_jsonapi_module: module,
- cpanel_jsonapi_func: func,
- cpanel_jsonapi_apiversion: 2,
- };
-
- const request = {
- headers: {
- Authorization: `cpanel ${options.username}:${options.apiKey}`,
- },
- rejectUnauthorized: false,
- };
-
- const path = `${basePath}/${action}?${qs.stringify(query)}`;
- const reqUrl = `https://${options.host}:${options.port}/${path}`;
-
- const { fetch } = options.dependencies;
- return fetch(reqUrl, request).then((res) => res.json());
- };
-
- const api2 = api({ basePath: "json-api", action: "cpanel" });
- const uapi = (module, func, defaultQuery) =>
- api({ basePath: "execute", action: `${module}/${func}` })(
- module,
- func,
- defaultQuery,
- );
-
- return {
- zone: {
- // { customonly, domain }
- // -> [{ class, ttl, name, line, Line, cname, type, record }]
- fetch: R.compose(
- (p) => p.then(R.pathOr([], ["cpanelresult", "data"])),
- api2("ZoneEdit", "fetchzone_records", {
- customonly: 0,
- domain: options.domain,
- }),
- ),
-
- // { name, type(A|CNAME), cname, address, ttl }
- // -> {}
- add: api2("ZoneEdit", "add_zone_record", {
- domain: options.domain,
- }),
-
- // { line }
- // -> {}
- remove: api2("ZoneEdit", "remove_zone_record", {
- domain: options.domain,
- }),
- },
- redirection: {
- // {}
- // -> [{ domain, destination }]
- fetch: R.compose(
- (p) => p.then(R.pathOr([], ["data"])),
- uapi("Mime", "list_redirects"),
- ),
-
- // { domain, redirect, type(permanent|tmp), redirect_wildcard(0|1), redirect(0|1|2) }
- // -> {}
- add: uapi("Mime", "add_redirect"),
-
- // { domain }
- // -> {}
- remove: uapi("Mime", "delete_redirect"),
- },
- file: {
- write: uapi("Fileman", "save_file_content", {
- from_charset: "UTF-8",
- to_charset: "UTF-8",
- fallback: 1,
- }),
- },
- email: {
- // { domain, exchanger, priority }
- // -> {}
- add: uapi("Email", "add_mx", { alwaysaccept: "auto" }),
-
- // { domain, exchanger, priority }
- // -> {}
- remove: uapi("Email", "delete_mx", { alwaysaccept: "auto" }),
- },
- };
-};
-
-if (!DOMAIN_API_KEY) {
- console.error("Api key cannot be empty");
- process.exit(1);
-}
-
-const cpanel = CpanelClient({
- host: DOMAIN_API_HOST,
- port: DOMAIN_API_PORT,
- username: DOMAIN_USER,
- apiKey: DOMAIN_API_KEY,
- domain: DOMAIN_DOMAIN,
- dependencies: { fetch },
-});
-
-module.exports = {
- cpanel,
- CpanelClient,
-};
diff --git a/utils/validations.js b/utils/validations.js
deleted file mode 100644
index eea099cd49..0000000000
--- a/utils/validations.js
+++ /dev/null
@@ -1,129 +0,0 @@
-const R = require("ramda");
-const { VALID_RECORD_TYPES } = require("./constants");
-const {
- or,
- and,
- validate,
- between,
- testRegex,
- withLengthEq,
- withLengthGte,
-} = require("./helpers");
-const INVALID_NAMES = require("./invalid-domains.json");
-const ipRegex_ = require("ip-regex");
-const ipRegex = ipRegex_.default ?? ipRegex_;
-
-const isValidURL = and([R.is(String), testRegex(/^https?:\/\//gi)]);
-
-const isValidDomain = and([
- R.is(String),
- testRegex(/^(([a-z0-9-_]+)\.)*(([a-z0-9-]+)\.)+[a-z]+$/gi),
-]);
-
-const validateCnameRecord = (type) =>
- and([
- R.propIs(String, type),
- R.compose(withLengthEq(1), R.keys), // CNAME cannot be used with any other record
- R.propSatisfies(withLengthGte(4), type),
- R.propSatisfies(isValidDomain, type),
- ]);
-
-const validateARecord = (type) =>
- and([
- R.propIs(Array, type),
- R.propSatisfies(withLengthGte(1), type),
- R.all(testRegex(ipRegex.v4({ exact: true }))),
- ]);
-
-const validateMXRecord = (type) =>
- and([
- R.propIs(Array, type),
- R.propSatisfies(withLengthGte(1), type),
- R.propSatisfies(R.all(isValidDomain), type),
- ]);
-
-const validateAAAARecord = R.propSatisfies(
- and([
- R.is(Array),
- withLengthGte(1),
- R.all(testRegex(ipRegex.v6({ exact: true }))),
- ]),
-);
-
-const checkRestrictedNames = R.complement(R.includes(R.__, INVALID_NAMES));
-
-const extraSupportedNames = [
- testRegex(/^_github(-pages)?-challenge-[a-z0-9-_]+$/i),
- R.equals("_discord"),
- R.equals("_gitlab-pages-verification-code"),
- R.equals("_acme-challenge"),
- R.equals("_dmarc"),
- R.equals("_domainkey"),
- R.equals("_improvmx"),
- R.equals("_vercel"),
- testRegex(/^_gh-[a-z0-9-_]+$/i),
-];
-
-const validateDomainData = validate({
- name: {
- reason: "The name of the file is invalid. It must be lowercased, alphanumeric and each component must be between 1-100 characters long.",
- fn: or([
- R.equals("@"),
- and([
- R.is(String),
- checkRestrictedNames,
- R.compose(
- R.all(
- or([
- and([
- R.compose(between(1, 100), R.length),
- testRegex(/^[a-z0-9-]+$/g),
- checkRestrictedNames,
- ]),
- ...extraSupportedNames,
- ]),
- ),
- R.split("."),
- ),
- ]),
- ]),
- },
- description: { reason: "", fn: R.T },
- repo: { reason: "", fn: R.T },
- owner: {
- reason: "`owner` key needs valid username and email properties.",
- fn: and([
- R.is(Object),
- R.complement(R.isEmpty),
- R.where({
- username: and([R.is(String), withLengthGte(1)]),
- email: R.is(String),
- }),
- ]),
- },
- record: {
- reason: "Invalid record(s) found. Please check the record types and values.",
- fn: and([
- R.is(Object),
- R.compose(
- R.isEmpty,
- R.difference(R.__, VALID_RECORD_TYPES),
- R.keys,
- ),
- R.cond([
- [R.has("CNAME"), validateCnameRecord("CNAME")],
- [R.has("A"), validateARecord("A")],
- [R.has("URL"), R.propSatisfies(isValidURL, "URL")],
- [R.has("MX"), validateMXRecord("MX")],
- [
- R.has("TXT"),
- R.propSatisfies(or([R.is(String), R.is(Array)]), "TXT"),
- ],
- [R.has("AAAA"), validateAAAARecord("AAAA")],
- [R.T, R.T],
- ]),
- ]),
- },
-});
-
-module.exports = { validateDomainData, isValidDomain };