diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS
index c5c6654566..3747adddcd 100644
--- a/.github/CODEOWNERS
+++ b/.github/CODEOWNERS
@@ -1,9 +1,6 @@
-* @phenax
+* @phenax @wdhdev
/.github/ @wdhdev
-/.github/CODEOWNERS @phenax @wdhdev
-
/domains/ @is-a-dev/maintainers @is-a-dev/trial-maintainers
*.md @is-a-dev/maintainers
-/MAINTAINERS.md @wdhdev
diff --git a/README.md b/README.md
index 53b5819ee4..388da51c35 100644
--- a/README.md
+++ b/README.md
@@ -23,20 +23,22 @@ If you would like to remove your email, remove it from your JSON file and provid
Leave the email field there, but just blank. Then add a separate contact method to your file.
-Please see more information here: https://github.com/is-a-dev/register/issues/14802
+Please see more information in issue https://github.com/is-a-dev/register/issues/14802.
## 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@maintainers.is-a.dev.
+If you have an issue that contains confidental infomation, send an email to security@m.is-a.dev.
## Register
### Manual Registration
-- [Fork](https://github.com/is-a-dev/register/fork) 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).
+> 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)
- 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.
+- After the pull request is merged, please allow up to 24 hours for the changes to propagate
- Enjoy your new `.is-a.dev` domain!
### Automated Registration
diff --git a/SECURITY.md b/SECURITY.md
index 048435cb9b..e6b236db72 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@maintainers.is-a.dev.
+However, for **higher severity vulnerabilities and bugs**, please email security@m.is-a.dev.
diff --git a/domains/0.json b/domains/0.json
new file mode 100644
index 0000000000..0e948dbeec
--- /dev/null
+++ b/domains/0.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "PogMaster9001",
+ "email": "",
+ "discord": "1190052608346435597"
+ },
+
+ "record": {
+ "CNAME": "projectdevs.net"
+ }
+ }
+
diff --git a/domains/1.json b/domains/1.json
new file mode 100644
index 0000000000..ccf0df6027
--- /dev/null
+++ b/domains/1.json
@@ -0,0 +1,10 @@
+{
+ "description": "1.is-a.dev",
+ "owner": {
+ "username": "i-am-is-a-dev",
+ "email": "lx737456@gmail.com"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/1111.json b/domains/1111.json
new file mode 100644
index 0000000000..0e948dbeec
--- /dev/null
+++ b/domains/1111.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "PogMaster9001",
+ "email": "",
+ "discord": "1190052608346435597"
+ },
+
+ "record": {
+ "CNAME": "projectdevs.net"
+ }
+ }
+
diff --git a/domains/4217803c._improvmx.dhilipan.json b/domains/4217803c._improvmx.dhilipan.json
new file mode 100644
index 0000000000..1308b6706d
--- /dev/null
+++ b/domains/4217803c._improvmx.dhilipan.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "MysticalPvE",
+ "email": "",
+ "discord": "1229782675678826496",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.K-aVOrk2T-4Wp0VAaLx8W9V1QsToSmJJmlK-jJlb-Zzx6kpwvGMlemfsdLH4XQSksUlk6PD51_Mx7d83HzqgqiYb6zwx2-iSgfEn6fUKWlF09k1fWne_wS0sSjYiz6GluI6qNs9hh9buq19iGPVz9L16KWCvL0xnjQxBjVCiR0Q69p9Vaw3_5b7VEUnKQvomYkdbovZ2p10hzGmnrwtKkA0gboxJnqshcV-eUzav7LZJZOwbzoVPEODqdLbqCOlTBP4IJXNjkwKSNKsnQ6BorPydgmXNv4hCsuga3JKg2M438dLG9NK-H8U8Q4GHLk7sx797WY1EJ8AChvgojqX1Ag.OMEl4nD9pPVbIku9jIFcpA.qV3yol4qlMITrJUHTUtYxGLd7ARn8msshNlY6uMWmf8ZeIe7_RQdG-JV1f-rDEZLZX_FcDsE7c8kpOjy9ulW1uiFZW9lw-f0LEqywyLeZ94.K1K5YV-DWV_hIlL8X9l8jQ"
+ },
+
+ "record": {
+ "TXT": "4217803c2e3e461b9f07eb8be0320a79"
+ }
+ }
+
diff --git a/domains/6.json b/domains/6.json
new file mode 100644
index 0000000000..d7c943095c
--- /dev/null
+++ b/domains/6.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "shockbs",
+ "email": "apipherng@gmail.com"
+ },
+ "record": {
+ "URL": "https://shockbs.is-a.dev/"
+ }
+}
diff --git a/domains/69.json b/domains/69.json
new file mode 100644
index 0000000000..239044d301
--- /dev/null
+++ b/domains/69.json
@@ -0,0 +1 @@
+{"owner":{"username":"maskduck","email":"","discord":"716134528409665586"},"record":{"CNAME":"maskduck.pages.dev"}}
diff --git a/domains/7.json b/domains/7.json
new file mode 100644
index 0000000000..1b96267839
--- /dev/null
+++ b/domains/7.json
@@ -0,0 +1,11 @@
+{
+ "description": "7.is.a.dev why not",
+ "owner": {
+ "username": "JustDeveloper1",
+ "email": "justdeveloper@juststudio.is-a.dev",
+ "discord": "1117482901353812088"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/@.json b/domains/@.json
index 36cd14e7be..4fe4c11334 100644
--- a/domains/@.json
+++ b/domains/@.json
@@ -2,8 +2,8 @@
"description": "The root domain for is-a.dev website",
"repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
- "username": "phenax",
- "email": "phenax5@gmail.com"
+ "username": "is-a-dev",
+ "email": ""
},
"record": {
"URL": "http://www.is-a.dev"
diff --git a/domains/_discord.akatsuki2555.json b/domains/_discord.akatsuki2555.json
new file mode 100644
index 0000000000..1169636d9b
--- /dev/null
+++ b/domains/_discord.akatsuki2555.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "Akatsuki2555",
+ "email": "akatsuki2555@proton.me",
+ "discord": "1226900455037075509"
+ },
+ "record": {
+ "TXT": "dh=30962b6c5cdbbd4629fdf0da9d0bf4c717f065e9"
+ }
+}
\ No newline at end of file
diff --git a/domains/_discord.blue.json b/domains/_discord.blue.json
new file mode 100644
index 0000000000..d83536f919
--- /dev/null
+++ b/domains/_discord.blue.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "B1ue-Dev",
+ "email": "b1uedev@outlook.com",
+ "twitter": "b1uedev"
+ },
+ "record": {
+ "TXT": "dh=17587955722bcb2745e20304b98cb5cbda716054"
+ }
+}
diff --git a/domains/_discord.daamin.json b/domains/_discord.daamin.json
new file mode 100644
index 0000000000..6b2e20a5a8
--- /dev/null
+++ b/domains/_discord.daamin.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Daamin909",
+ "email": "ashai.daamin@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=bc215d4445233c4ff76582ad1b83c8b277c2713e"
+ }
+}
diff --git a/domains/_discord.funn.json b/domains/_discord.funn.json
new file mode 100644
index 0000000000..d89e44cc30
--- /dev/null
+++ b/domains/_discord.funn.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "funnsam",
+ "email": "funnsam8@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=901b963730610d7e0f1d4f29c48658f871d6e71d"
+ }
+}
diff --git a/domains/_discord.hilight3r.json b/domains/_discord.hilight3r.json
new file mode 100644
index 0000000000..a78cebdb3f
--- /dev/null
+++ b/domains/_discord.hilight3r.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "HIlight3R",
+ "email": "",
+ "discord": "632272741000544259",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.lEEbmOZavCkur0apEhD0MigNx6rzV3Kqhd9_Lw4Wxt7U7b0rcV779rEFB1Fm4LdwKAVJJ8_MeDm1jf0y14lGqQotXsvYzRKOCBk5t7vLtS_541WkodNwOPbAUV_g2KBaq6MynjnwX5786OLkuRJE-QnxwflxQRQHtL76xYJV3d7UVmZk0ppSUxyCw5SdSXUp7zgoJiTE2JIshtR5dFULQCyH9QK7gVpNFJBwaoTJeoRsCOy_oYoXVhYysYhX94tubtwKzE4xSDmQW4UbOo8yLRNTIo-PkyuY6cBD4yYvueRcTAd_UChS12Y27QSFhQq78I7WLaE7u4cV060Th1fEmA.9kQc0tIg1PyfXJtKgbiBSQ.uFTPklnOgLBqnu-dg7ZsCEZ_QrMiuyiHY60IgI1X3CdE1kSQckWTdApOQF8AXTC0inYYfmSpfvzP02Rcgo3Z9vyrckWG_ZSJbmfKR2SOpeN_Cq94jwKAZQXW0U45LxB1.cYkl_VljmQbyvurLc7hF6Q"
+ },
+ "record": {
+ "TXT": "dh=0d11368eef3be6f6195da6a3a1b55663a1bafb38"
+ }
+}
diff --git a/domains/_discord.jirafey.json b/domains/_discord.jirafey.json
index 3d616f3b50..ca5092c755 100644
--- a/domains/_discord.jirafey.json
+++ b/domains/_discord.jirafey.json
@@ -1,7 +1,7 @@
{
"owner": {
"username": "jirafey",
- "email": "jirafey@tuta.io"
+ "email": "e9282425-361f-427d-a3dd-249a564432b9@anonaddy.me"
},
"record": {
"TXT": "dh=3c80d94ed181b223255b5fbf35f8fda6a402058f"
diff --git a/domains/_discord.justdeveloper.json b/domains/_discord.justdeveloper.json
new file mode 100644
index 0000000000..fc8da2bd55
--- /dev/null
+++ b/domains/_discord.justdeveloper.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "JustDeveloper1",
+ "email": "lk.qq@ya.ru"
+ },
+ "record": {
+ "TXT": "dh=a468556178a0bac462fa84043545b67b982e7fe0"
+ }
+}
diff --git a/domains/_discord.juststudio.json b/domains/_discord.juststudio.json
new file mode 100644
index 0000000000..0ad748f7a7
--- /dev/null
+++ b/domains/_discord.juststudio.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "JustStudio7",
+ "email": "support@juststudio.is-a.dev"
+ },
+ "record": {
+ "TXT": "dh=33f1a73c2f587fed7b0f3c03f18e1bf4591f8aec"
+ }
+}
diff --git a/domains/_discord.korrykatti.json b/domains/_discord.korrykatti.json
new file mode 100644
index 0000000000..17edd09178
--- /dev/null
+++ b/domains/_discord.korrykatti.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "korrykatti",
+ "email": "8nctvx7gi@mozmail.com"
+ },
+ "record": {
+ "TXT": "dh=75cc1a7bea6d033882a519e2d3fb4dd85314d6ec"
+ }
+}
diff --git a/domains/_discord.linksrayan.json b/domains/_discord.linksrayan.json
new file mode 100644
index 0000000000..f6a20e2ca2
--- /dev/null
+++ b/domains/_discord.linksrayan.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "syedrayangames",
+ "email": "syedrayangames@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=9978fb189e392bec25b857297f914f34ef65ffb7"
+ }
+}
diff --git a/domains/_discord.meywy.json b/domains/_discord.meywy.json
new file mode 100644
index 0000000000..c45f63440c
--- /dev/null
+++ b/domains/_discord.meywy.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Meywy",
+ "email": "meywyy@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=67bbe9b7f65f85288f9235e79cde1dbab8dc825f"
+ }
+}
diff --git a/domains/_discord.mxritz.json b/domains/_discord.mxritz.json
new file mode 100644
index 0000000000..82aaf865c9
--- /dev/null
+++ b/domains/_discord.mxritz.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Moritz-Deiaco",
+ "email": "moritz.deiaco@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=01795372b646a8a36087b00130313eda00b40928"
+ }
+}
diff --git a/domains/_discord.sewt.json b/domains/_discord.sewt.json
new file mode 100644
index 0000000000..2ab351d094
--- /dev/null
+++ b/domains/_discord.sewt.json
@@ -0,0 +1,11 @@
+{
+ "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": {
+ "TXT": "dh=a34e8bb281bffd5d738efe81e189ab6ef231ebb5"
+ }
+}
diff --git a/domains/_discord.shy.json b/domains/_discord.shy.json
new file mode 100644
index 0000000000..d06766437e
--- /dev/null
+++ b/domains/_discord.shy.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "ImShyMike",
+ "email": "",
+ "discord": "582648583635992622"
+ },
+ "record": {
+ "TXT": "dh=4277dadd7134f6e2ee439faf5377801a9eec7b2c"
+ }
+}
diff --git a/domains/_discord.xrap1dx.json b/domains/_discord.xrap1dx.json
new file mode 100644
index 0000000000..ca3644d28a
--- /dev/null
+++ b/domains/_discord.xrap1dx.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "xrap1dx",
+ "email": "sirrapid155@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=5552cf7dcf2fec81360ac9ee4af0b0a674f1cd33"
+ }
+}
diff --git a/domains/_discord.z.json b/domains/_discord.z.json
new file mode 100644
index 0000000000..278cf9fb8b
--- /dev/null
+++ b/domains/_discord.z.json
@@ -0,0 +1,11 @@
+{
+ "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": {
+ "TXT": "dh=f84f09e3884eca601066a6e1dba5175f6e82940f"
+ }
+}
diff --git a/domains/api.json b/domains/_gh-is-a-dev-o.m.json
similarity index 73%
rename from domains/api.json
rename to domains/_gh-is-a-dev-o.m.json
index 1960cb72fe..e7af9390b6 100644
--- a/domains/api.json
+++ b/domains/_gh-is-a-dev-o.m.json
@@ -5,6 +5,6 @@
},
"record": {
- "CNAME": "kco4g0g.wdh.app"
+ "TXT": "e0ffcded3e"
}
}
diff --git a/domains/_github-pages-challenge-Abaan5467.abaan.json b/domains/_github-pages-challenge-Abaan5467.abaan.json
new file mode 100644
index 0000000000..35e940ffb9
--- /dev/null
+++ b/domains/_github-pages-challenge-Abaan5467.abaan.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Abaan5467",
+ "email": "abaan@metfabproducts.com"
+ },
+ "record": {
+ "TXT": "325c1344f55d617d4e206517dde06c"
+ }
+}
diff --git a/domains/_github-pages-challenge-Akatsuki2555.akatsuki2555.json b/domains/_github-pages-challenge-Akatsuki2555.akatsuki2555.json
new file mode 100644
index 0000000000..93f1081138
--- /dev/null
+++ b/domains/_github-pages-challenge-Akatsuki2555.akatsuki2555.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Akatsuki2555",
+ "email": "Akatsuki2555@proton.me"
+ },
+ "record": {
+ "TXT": "af66c6734ae2342654c413fbb3b9aa"
+ }
+}
\ No newline at end of file
diff --git a/domains/_github-pages-challenge-Arch881010.arch.json b/domains/_github-pages-challenge-Arch881010.arch.json
index 6946ddb7bd..335a141822 100644
--- a/domains/_github-pages-challenge-Arch881010.arch.json
+++ b/domains/_github-pages-challenge-Arch881010.arch.json
@@ -3,9 +3,10 @@
"repo": "https://github.com/Arch881010/Arch881010",
"owner": {
"username": "Arch881010",
- "email": "c1yd4.arch@inbox.testmail.app",
+ "email": "arch@arch1010.dev",
"discord": "arch1010",
- "discord-id": "410248634593050627"
+ "discord-id": "410248634593050627",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.kSAiARG7F3TMPQLHtfhtk3dE05kz7As2lA8g_FzeDJHxsc9y68hJe40iZByj83Q-A7wgguTAPkshy34EfXOlnbEW6QGE3nwCdu8BLCDAZFZSDYffesKjYPq7djQpYfIcrwaKQ8BNsPejDVBpfycXULTJKFg6860m6AQeCRBCTKbs1et_J_1LKbD58oCoA2fRjoOcmsfiuv177b0JB5y4YYJvv-ZUxnqfFOYs8z4cYa0sjLz1PHf45ZXI94YaiIGbctnl4-mCWmUyVAEzoZXMMZTpb2yDmkfkXbubaRL8ftl6dXFlsr_s8t5oNNn_qqydjVqHAgoBod7pnX8nnbNB7g.QIJDtBcgQc6abzpqMJEDQQ.yqolPrBs4ixr0g2Sd6FkMHqMg_CXvxV146dDoe4y8yeSmW951Au23QlBGwemyMKQmJv6fNMo7GPctGfxCxgaaL6hXPVbtJ13MdgtO22e5bA.vevEeBUZxq5C7dewSx_YUQ"
},
"record": {
"TXT": "f7ef0429540150e9e2d26e968dc4de"
diff --git a/domains/_github-pages-challenge-Daamin909.daamin.json b/domains/_github-pages-challenge-Daamin909.daamin.json
new file mode 100644
index 0000000000..b3738e6d7d
--- /dev/null
+++ b/domains/_github-pages-challenge-Daamin909.daamin.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Daamin909",
+ "email": "ashai.daamin@gmail.com"
+ },
+ "record": {
+ "TXT": "3c96f2bc76027656f9d05fbdd95026"
+ }
+}
diff --git a/domains/_github-pages-challenge-ImShyMike.shymike.json b/domains/_github-pages-challenge-ImShyMike.shymike.json
new file mode 100644
index 0000000000..53070340a5
--- /dev/null
+++ b/domains/_github-pages-challenge-ImShyMike.shymike.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "ImShyMike",
+ "email": "",
+ "discord": "582648583635992622"
+ },
+ "record": {
+ "TXT": "f3bee6548add17e5852c9b567d9a44"
+ }
+}
diff --git a/domains/_github-pages-challenge-SkyExploreWasTaken.sewt.json b/domains/_github-pages-challenge-SkyExploreWasTaken.sewt.json
new file mode 100644
index 0000000000..5fecfdce76
--- /dev/null
+++ b/domains/_github-pages-challenge-SkyExploreWasTaken.sewt.json
@@ -0,0 +1,11 @@
+{
+ "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": {
+ "TXT": "6db7bbc1e3f533f3dad4925751cdc7"
+ }
+}
diff --git a/domains/_github-pages-challenge-SkyExploreWasTaken.z.json b/domains/_github-pages-challenge-SkyExploreWasTaken.z.json
new file mode 100644
index 0000000000..640a0cd3a3
--- /dev/null
+++ b/domains/_github-pages-challenge-SkyExploreWasTaken.z.json
@@ -0,0 +1,11 @@
+{
+ "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": {
+ "TXT": "7eb5b6034d696256f342136b0289cc"
+ }
+}
diff --git a/domains/_github-pages-challenge-Th3-C0der.th3.json b/domains/_github-pages-challenge-Th3-C0der.th3.json
new file mode 100644
index 0000000000..4222831f9e
--- /dev/null
+++ b/domains/_github-pages-challenge-Th3-C0der.th3.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Th3-C0der",
+ "email": "Th3Drag8N@proton.me"
+ },
+ "record": {
+ "TXT": "5eb5141d4526c7035a1a9e1613b3d6"
+ }
+}
diff --git a/domains/_github-pages-challenge-funnsam.funn.json b/domains/_github-pages-challenge-funnsam.funn.json
new file mode 100644
index 0000000000..ef59f63b65
--- /dev/null
+++ b/domains/_github-pages-challenge-funnsam.funn.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "funnsam",
+ "email": "funnsam8@gmail.com"
+ },
+ "record": {
+ "TXT": "a81a9e51e2583c003a02eba386cb78"
+ }
+}
diff --git a/domains/_github-pages-challenge-hansanaD.hansana.json b/domains/_github-pages-challenge-hansanaD.hansana.json
new file mode 100644
index 0000000000..4c6a207bdf
--- /dev/null
+++ b/domains/_github-pages-challenge-hansanaD.hansana.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "hansanad",
+ "email": "josephandrew1@logicstreak.com"
+ },
+ "record": {
+ "TXT": "f5a2e9d9fc400899120ec6e97e3291"
+ }
+}
diff --git a/domains/_github-pages-challenge-hilight3r.hilight3r.json b/domains/_github-pages-challenge-hilight3r.hilight3r.json
new file mode 100644
index 0000000000..6bdc1b9373
--- /dev/null
+++ b/domains/_github-pages-challenge-hilight3r.hilight3r.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "HIlight3R",
+ "email": "",
+ "discord": "632272741000544259",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.lEEbmOZavCkur0apEhD0MigNx6rzV3Kqhd9_Lw4Wxt7U7b0rcV779rEFB1Fm4LdwKAVJJ8_MeDm1jf0y14lGqQotXsvYzRKOCBk5t7vLtS_541WkodNwOPbAUV_g2KBaq6MynjnwX5786OLkuRJE-QnxwflxQRQHtL76xYJV3d7UVmZk0ppSUxyCw5SdSXUp7zgoJiTE2JIshtR5dFULQCyH9QK7gVpNFJBwaoTJeoRsCOy_oYoXVhYysYhX94tubtwKzE4xSDmQW4UbOo8yLRNTIo-PkyuY6cBD4yYvueRcTAd_UChS12Y27QSFhQq78I7WLaE7u4cV060Th1fEmA.9kQc0tIg1PyfXJtKgbiBSQ.uFTPklnOgLBqnu-dg7ZsCEZ_QrMiuyiHY60IgI1X3CdE1kSQckWTdApOQF8AXTC0inYYfmSpfvzP02Rcgo3Z9vyrckWG_ZSJbmfKR2SOpeN_Cq94jwKAZQXW0U45LxB1.cYkl_VljmQbyvurLc7hF6Q"
+ },
+ "record": {
+ "TXT": "0c51eaecf1de5c4349169056229f46"
+ }
+}
diff --git a/domains/_github-pages-challenge-kunsh13.kunsh13.json b/domains/_github-pages-challenge-kunsh13.kunsh13.json
new file mode 100644
index 0000000000..1d8a75d5cb
--- /dev/null
+++ b/domains/_github-pages-challenge-kunsh13.kunsh13.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "kunsh13",
+ "email": "kunshmaurya@gmail.com"
+ },
+ "record": {
+ "TXT": "72d4c5c21140c36045a8acebb81bd3"
+ }
+}
diff --git a/domains/_github-pages-challenge-nameisminh.ming.json b/domains/_github-pages-challenge-nameisminh.ming.json
new file mode 100644
index 0000000000..9dc22d928a
--- /dev/null
+++ b/domains/_github-pages-challenge-nameisminh.ming.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "nameisminh",
+ "email": "buicongminh081104@gmail.com"
+ },
+ "record": {
+ "TXT": "124480cad3fd4ed9b6cf85747562f6"
+ }
+}
diff --git a/domains/_github-pages-challenge-neoapps-dev.neoapps.json b/domains/_github-pages-challenge-neoapps-dev.neoapps.json
new file mode 100644
index 0000000000..38bdb13644
--- /dev/null
+++ b/domains/_github-pages-challenge-neoapps-dev.neoapps.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "neoapps-dev",
+ "email": "asd22.info@gmail.com"
+ },
+ "record": {
+ "TXT": "e18c9ddc220cc83720a8cf6a0d2b2c"
+ }
+}
diff --git a/domains/_github-pages-challenge-yunexiz.cat.json b/domains/_github-pages-challenge-yunexiz.cat.json
new file mode 100644
index 0000000000..9307de4652
--- /dev/null
+++ b/domains/_github-pages-challenge-yunexiz.cat.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "TXT": "7b0048087227dc98eb47a46c9f1b43"
+ }
+}
diff --git a/domains/_github-pages-challenge-yunexiz.dog.json b/domains/_github-pages-challenge-yunexiz.dog.json
new file mode 100644
index 0000000000..253d7ddd77
--- /dev/null
+++ b/domains/_github-pages-challenge-yunexiz.dog.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "TXT": "5fa47df0612540ae6e92989a4007e9"
+ }
+}
diff --git a/domains/_github-pages-challenge-yunexiz.y.json b/domains/_github-pages-challenge-yunexiz.y.json
new file mode 100644
index 0000000000..722be64edf
--- /dev/null
+++ b/domains/_github-pages-challenge-yunexiz.y.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "TXT": "e510e7d345184525230751fbbf1e5b"
+ }
+}
diff --git a/domains/a.json b/domains/a.json
new file mode 100644
index 0000000000..b3f291c15d
--- /dev/null
+++ b/domains/a.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "dhruvakalur",
+ "email": "",
+ "discord": "794802369216380949",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.n6sY7FH0bwRVpn5paxjZE9b0AS1bS9fiw6WV4sdfPhfnRrO9vR_Mxznkv_LzM5IWuOPUrNzJ8el1rUP1_BEnafofpoSYWV4J326U0TjFnhOysYjmpJ00oNE_TkBdF-gIlwZ3Ps6X2_i5OwLkWysa6oz7-DPHMA2bN27pC7VV7uMwt8gbvLH7BBgnpgZk7vf9eQ7hb8lgHDfjaeaxfG8PoGnO4SBMxcS_Q9hQxW-z7WsfBTTOeKC8jDg3ql5CCtw4epp61hmMGMD8Fk0ETZTDXVHLRVVLsR78uKwgRm-eifgDRVgycfoGfZpRkdZAWFG5fmAYTAxOxCFj6Efa44n-tA.PzULyP0rlpaGmeRh1tX5pA._J47HD2_nZv5f8j_vl5QZZCxbm6K4_nvrZ4LVcTdjH275xenN3SC3fbM-kQFokjiiKtiaSdZMxokzZtBbDBXHORYh2Z9Ve1ENytjWkmOP3U.YDrfLdRHD6-J3Bb9_7iysA"
+ },
+
+ "record": {
+ "A": ["45.90.12.29"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/abaan.json b/domains/abaan.json
new file mode 100644
index 0000000000..86b1091c3a
--- /dev/null
+++ b/domains/abaan.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Abaan5467",
+ "email": "abaan@metfabproducts.com"
+ },
+ "record": {
+ "CNAME": "abaan5467.github.io"
+ }
+}
diff --git a/domains/ai-y.json b/domains/ai-y.json
new file mode 100644
index 0000000000..99101fef51
--- /dev/null
+++ b/domains/ai-y.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+
+ "record": {
+ "CNAME": "ai-y-web.pages.dev"
+ }
+}
diff --git a/domains/ajie.json b/domains/ajie.json
new file mode 100644
index 0000000000..d38a44c721
--- /dev/null
+++ b/domains/ajie.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "AjieDev",
+ "email": "ajiedev@ajieblogs.eu.org"
+ },
+ "record": {
+ "CNAME": "ajiedev.pages.dev"
+ }
+}
diff --git a/domains/akatsuki2555.json b/domains/akatsuki2555.json
new file mode 100644
index 0000000000..d409e9dc88
--- /dev/null
+++ b/domains/akatsuki2555.json
@@ -0,0 +1,11 @@
+{
+ "repo": "https://github.com/Akatsuki2555/Akatsuki2555.github.io",
+ "owner": {
+ "username": "Akatsuki2555",
+ "email": "akatsuki2555@proton.me",
+ "discord": "1226900455037075509"
+ },
+ "record": {
+ "CNAME": "akatsuki2555.github.io"
+ }
+}
\ No newline at end of file
diff --git a/domains/akrm.json b/domains/akrm.json
index 17e43b59b8..5c6f594896 100644
--- a/domains/akrm.json
+++ b/domains/akrm.json
@@ -1,12 +1,12 @@
{
- "owner": {
- "username": "KemoXtech",
- "email": "aljmalrealstate@gmail.com",
- "discord": "868339557593137212"
- },
-
- "record": {
- "A": ["65.19.141.67"],
- "AAAA": ["2001:470:1:1ee::2009"]
- }
-}
+ "owner": {
+ "username": "KemoXtech",
+ "email": "aljmalrealstate@gmail.com",
+ "discord": "868339557593137212"
+ },
+
+ "record": {
+ "A": ["64.62.151.106"],
+ "AAAA": ["2001:470:1:1ee::2009"]
+ }
+ }
\ No newline at end of file
diff --git a/domains/akshatjain.json b/domains/akshatjain.json
new file mode 100644
index 0000000000..3a4ccb3c6c
--- /dev/null
+++ b/domains/akshatjain.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "akshatjain",
+ "email": "akshatjain1567@gmail.com"
+ },
+ "record": {
+ "URL": "https://www.github.com/akshatjaiin"
+ }
+}
diff --git a/domains/akxd.json b/domains/akxd.json
new file mode 100644
index 0000000000..a5b3b93517
--- /dev/null
+++ b/domains/akxd.json
@@ -0,0 +1,12 @@
+{
+ "description": "Aditya's Portfolio",
+ "repo": "https://github.com/adityakumarxd",
+ "owner": {
+ "username": "adityakumarxd",
+ "email": "",
+ "discord": "akxd"
+ },
+ "record": {
+ "CNAME": "adityakumarxd.github.io"
+ }
+}
diff --git a/domains/allancoding.json b/domains/allancoding.json
index 158097ebc5..82b0cfda9b 100644
--- a/domains/allancoding.json
+++ b/domains/allancoding.json
@@ -1,4 +1,6 @@
{
+ "description": "My main website",
+ "repo": "https://github.com/allancoding/allancoding.is-a.dev",
"owner": {
"username": "allancoding",
"email": "allancoding.dev@gmail.com",
@@ -6,6 +8,13 @@
"discord": "allancoding"
},
"record": {
- "CNAME": "allancoding.github.io"
+ "A": [
+ "75.2.60.5"
+ ],
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com include:_spf.google.com ~all"
}
}
diff --git a/domains/angellopomayay.json b/domains/angellopomayay.json
new file mode 100644
index 0000000000..8466fe6468
--- /dev/null
+++ b/domains/angellopomayay.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Angello-Pomayay",
+ "email": "angelopomayay@gmail.com"
+ },
+ "record": {
+ "CNAME": "angello-pomayay.github.io"
+ }
+}
diff --git a/domains/api.shockbs.json b/domains/api.shockbs.json
index 6dbe49a35c..a4be3930b4 100644
--- a/domains/api.shockbs.json
+++ b/domains/api.shockbs.json
@@ -4,6 +4,6 @@
"email": "apipherng@gmail.com"
},
"record": {
- "CNAME": "apishockbsshockbsxddd.onrender.com"
+ "A": ["69.30.249.53"]
}
}
diff --git a/domains/app.allancoding.json b/domains/app.allancoding.json
new file mode 100644
index 0000000000..131809fe42
--- /dev/null
+++ b/domains/app.allancoding.json
@@ -0,0 +1,15 @@
+{
+ "description": "My app website for diffrent services",
+ "owner": {
+ "username": "allancoding",
+ "email": "allancoding.dev@gmail.com",
+ "twitter": "allancoding",
+ "discord": "allancoding"
+ },
+ "record": {
+ "A": [
+ "206.188.218.143"
+ ]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/aquatica.json b/domains/aquatica.json
new file mode 100644
index 0000000000..ed67149223
--- /dev/null
+++ b/domains/aquatica.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "UntoldGam",
+ "email": "charlessbird+github@outlook.com"
+ },
+ "record": {
+ "A": ["130.162.169.213"]
+ }
+}
diff --git a/domains/arafat.json b/domains/arafat.json
new file mode 100644
index 0000000000..800dc44397
--- /dev/null
+++ b/domains/arafat.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "yasar-arafath",
+ "email": "1up6i9jv@duck.com"
+ },
+ "record": {
+ "CNAME": "yasar-arafath.github.io"
+ }
+}
diff --git a/domains/arch.json b/domains/arch.json
index 68afd2c790..791ffd8716 100644
--- a/domains/arch.json
+++ b/domains/arch.json
@@ -5,7 +5,8 @@
"username": "Arch881010",
"email": "arch@arch1010.dev",
"discord": "arch1010",
- "discord-id": "410248634593050627"
+ "discord-id": "410248634593050627",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.kSAiARG7F3TMPQLHtfhtk3dE05kz7As2lA8g_FzeDJHxsc9y68hJe40iZByj83Q-A7wgguTAPkshy34EfXOlnbEW6QGE3nwCdu8BLCDAZFZSDYffesKjYPq7djQpYfIcrwaKQ8BNsPejDVBpfycXULTJKFg6860m6AQeCRBCTKbs1et_J_1LKbD58oCoA2fRjoOcmsfiuv177b0JB5y4YYJvv-ZUxnqfFOYs8z4cYa0sjLz1PHf45ZXI94YaiIGbctnl4-mCWmUyVAEzoZXMMZTpb2yDmkfkXbubaRL8ftl6dXFlsr_s8t5oNNn_qqydjVqHAgoBod7pnX8nnbNB7g.QIJDtBcgQc6abzpqMJEDQQ.yqolPrBs4ixr0g2Sd6FkMHqMg_CXvxV146dDoe4y8yeSmW951Au23QlBGwemyMKQmJv6fNMo7GPctGfxCxgaaL6hXPVbtJ13MdgtO22e5bA.vevEeBUZxq5C7dewSx_YUQ"
},
"record": {
"CNAME": "arch881010.github.io"
diff --git a/domains/ardaninho.json b/domains/ardaninho.json
new file mode 100644
index 0000000000..0355642273
--- /dev/null
+++ b/domains/ardaninho.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "Ardaninho",
+ "email": "",
+ "discord": "639439553698201626"
+ },
+
+ "record": {
+ "CNAME": "ardaninho.github.io"
+ }
+ }
+
diff --git a/domains/aryadanech.json b/domains/aryadanech.json
new file mode 100644
index 0000000000..31281d2342
--- /dev/null
+++ b/domains/aryadanech.json
@@ -0,0 +1,11 @@
+{
+ "description": "Arya Danech's Personal Portfolio Website",
+ "repo": "https://github.com/aryad14",
+ "owner": {
+ "username": "aryad14",
+ "email": "aryadanech9@gmail.com"
+ },
+ "record": {
+ "CNAME": "portfolio-production-d78e.up.railway.app"
+ }
+}
\ No newline at end of file
diff --git a/domains/ascii.educatedsuddenbucket.json b/domains/ascii.educatedsuddenbucket.json
deleted file mode 100644
index b14fc31dca..0000000000
--- a/domains/ascii.educatedsuddenbucket.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "educatedsuddenbucket@gmail.com"
- },
- "record": {
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
-}
diff --git a/domains/averagepce.json b/domains/averagepce.json
new file mode 100644
index 0000000000..a0714805f7
--- /dev/null
+++ b/domains/averagepce.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "FaultyFaulty-glitch",
+ "email": "faultywindows@gmail.com"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
diff --git a/domains/averagepcweb.json b/domains/averagepcweb.json
new file mode 100644
index 0000000000..628504cd67
--- /dev/null
+++ b/domains/averagepcweb.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "FaultyFaulty-glitch",
+ "email": "",
+ "discord": "1102928631191322675"
+ },
+
+ "record": {
+ "CNAME": "averagepcweb.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/averse.json b/domains/averse.json
new file mode 100644
index 0000000000..a01b730f1e
--- /dev/null
+++ b/domains/averse.json
@@ -0,0 +1,11 @@
+{
+ "description": "Personal site",
+ "repo": "https://github.com/AverseABFun/my-site",
+ "owner": {
+ "username": "AverseABFun",
+ "email": "averse.abfun@gmail.com"
+ },
+ "record": {
+ "CNAME": "averseabfun.github.io"
+ }
+}
diff --git a/domains/b.json b/domains/b.json
new file mode 100644
index 0000000000..522a540059
--- /dev/null
+++ b/domains/b.json
@@ -0,0 +1,11 @@
+{
+ "description": "vugiabao1337 subdomain",
+ "repo": "https://github.com/VuGiaBao1337/vugiabao1337.github.io",
+ "owner": {
+ "username": "VuGiaBao1337",
+ "email": "ahihidiscord@gmail.com"
+ },
+ "record": {
+ "CNAME": "vugiabao1337.github.io"
+ }
+}
diff --git a/domains/baltraz.json b/domains/baltraz.json
new file mode 100644
index 0000000000..61d43b7cd8
--- /dev/null
+++ b/domains/baltraz.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Killermaschine88",
+ "email": "",
+ "discord": "570267487393021969",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.X7V9A3bj7uW7izQvYtaNyn684nE_FBaWC6kn2U-QVBSmP7TFLZkGnRLAfiv748szEf8Ps3JA6p2fUsdSKY5a9iS6D44dU9NAMmPWyX-MAy5aTFyretWktY4pmi6qKKekdcbSIqApUOEQjaOQR6ZTYFILkIFgjmJIioZEBpgDP_TXU2zbckIBr1wfRSgn7Cu9MfdcsAn6L68F7oqilLh1ZgkyU8YHsJbNmcUXjGeYAbcf6h1ZMDt-iE8df7vkJwiKUYR398JwvxSjxF-ip2vFLZ9hzMkyD3q19zJ29NefOEhhIVdOgHl4aV1CFYPWBzkGpMyIg1k1Eiky8BOu2Qo2Fw.u2fm6QjYJ54XYKASbzyZFg.T8FGfq4es9Rnc9Wv6qTczCRl-GtH40ujE6mbmoTQegCPeUatFiUzRghM8-JLthty6hqtu9iIhhlpE_0LC6kKrcCrbF0iUhqIkVd_gGUkJtQ.1rtLCkkF5gtQsek8m5RjUQ"
+ },
+
+ "record": {
+ "A": ["49.13.78.155"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/beatrack.json b/domains/beatrack.json
deleted file mode 100644
index 2965efd677..0000000000
--- a/domains/beatrack.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "owner": {
- "username": "UsernameKhoaIsAvailable",
- "email": "khoatm20@gmail.com",
- "discord": "697058629517443106"
- },
-
- "record": {
- "A": ["42.119.154.148"]
- }
- }
-
diff --git a/domains/bhavitha.json b/domains/bhavitha.json
new file mode 100644
index 0000000000..ea83c03944
--- /dev/null
+++ b/domains/bhavitha.json
@@ -0,0 +1,12 @@
+{
+ "description": "Portfolio website",
+ "repo": "https://github.com/nightcoder26/bhavitha",
+ "owner": {
+ "username": "nightcoder26",
+ "email": "",
+ "twitter": "night_coder26"
+ },
+ "record": {
+ "CNAME": "nightcoder26.github.io"
+ }
+}
diff --git a/domains/blog.saxophone.json b/domains/blog.saxophone.json
index 1906b0c007..a24c990a04 100644
--- a/domains/blog.saxophone.json
+++ b/domains/blog.saxophone.json
@@ -1,10 +1,12 @@
{
- "description": "subdomain for my blog",
- "owner": {
- "username": "saxophone-guy",
- "email": "itsarchit@keemail.me"
- },
- "record": {
- "CNAME": "my-blog-8il5.onrender.com"
- }
+ "description": "subdomain for my blog",
+ "owner": {
+ "username": "saxophone-guy",
+ "email": "itsarchit@keemail.me"
+ },
+ "record": {
+ "A": [
+ "216.24.57.1"
+ ]
+ }
}
diff --git a/domains/bombacat.json b/domains/bombacat.json
new file mode 100644
index 0000000000..585e094379
--- /dev/null
+++ b/domains/bombacat.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "bomba.cat",
+ "email": "bledion.morina@hotmail.com"
+ },
+
+ "record": {
+ "CNAME": "bomba-cat.github.io"
+ }
+}
diff --git a/domains/buko-dev.json b/domains/buko-dev.json
new file mode 100644
index 0000000000..c22a3f937b
--- /dev/null
+++ b/domains/buko-dev.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "BukoDEV",
+ "email": "",
+ "discord": "539008740826021900",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.YuNXpG0-lTwVQMkxn_FAYLEsDj2ey-_j1nAxH4tGeZJIvCDGyCAIB3PTbOPb9rfmIK718ISh19183EOPVouHX5qGB5yINiTbpwKKVpVkOXodMe9-rfk8BlRPVdLzTHmUYNPCO5lJtnJKXJj0DZ-jKh7ifMzYqdzaDHlOCSkwva9vl09-XX-vNl8PHMVDTO1wQF1ojzmxzaCBjuz_UwE9k_MlOQyz22l2HnBN990OYO63dNiC9hHJVR6V3cBiZTRGq9Xq2SWW2JvXxBeoIZWs0mGV5JHd70YnIl_COowQ2Je3T72VGTUwXK_9eixzBUEOgC8s3wQLFvPh5MJbkS0lPg.cWVq2oSU90LZc8VZSL4IrA.yQ9bwBAobrePb2jcOU5SVKQGuTrx98F1qfhnyu4rhAw2aATjsUBn9lnNavSF-TNcM4FXvS2wASedJlvzVwcCAB2jbWh_MeMteu5j4Ad91MYwMKKxU3J40W7xFce9l3FI.5q01GI-LyojgnwFOo26Tbw"
+ },
+
+ "record": {
+ "A": ["193.111.250.109"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/c.json b/domains/c.json
new file mode 100644
index 0000000000..da3053a49a
--- /dev/null
+++ b/domains/c.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "orxngc",
+ "discord": "orangc",
+ "email": "orangc@proton.me"
+ },
+ "record": {
+ "CNAME": "edge.redirect.pizza"
+ }
+}
diff --git a/domains/cat.json b/domains/cat.json
new file mode 100644
index 0000000000..1a06bbbaf4
--- /dev/null
+++ b/domains/cat.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "yunexiz.github.io"
+ }
+}
diff --git a/domains/cats.json b/domains/cats.json
new file mode 100644
index 0000000000..c0cb32f1de
--- /dev/null
+++ b/domains/cats.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "cat-images.pages.dev"
+ }
+}
diff --git a/domains/cdn.shymike.json b/domains/cdn.shymike.json
new file mode 100644
index 0000000000..69fd29cbad
--- /dev/null
+++ b/domains/cdn.shymike.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "ImShyMike",
+ "email": "",
+ "discord": "582648583635992622"
+ },
+ "record": {
+ "A": [
+ "69.197.135.203"
+ ]
+ }
+}
diff --git a/domains/cdn.trung.json b/domains/cdn.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/cdn.trung.json
+++ b/domains/cdn.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/cdn.xrap1dx.json b/domains/cdn.xrap1dx.json
new file mode 100644
index 0000000000..1de1dd0cac
--- /dev/null
+++ b/domains/cdn.xrap1dx.json
@@ -0,0 +1,13 @@
+{
+ "description": "making my cdn!!!",
+ "repo": "https://github.com/xrap1dx?tab=repositories",
+ "owner": {
+ "username": "xrap1dx",
+ "email": "sirrapid155@gmail.com"
+ },
+ "record": {
+ "A": [
+ "69.30.249.53"
+ ]
+ }
+}
diff --git a/domains/chat.vamtic.json b/domains/chat.vamtic.json
new file mode 100644
index 0000000000..72e57dc0ff
--- /dev/null
+++ b/domains/chat.vamtic.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "vamtic",
+ "email": "vamtic@yahoo.com"
+ },
+ "record": {
+ "CNAME": "anon.69.mu"
+ }
+}
diff --git a/domains/code.trung.json b/domains/code.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/code.trung.json
+++ b/domains/code.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/coopw.json b/domains/coopw.json
new file mode 100644
index 0000000000..bd7bb11740
--- /dev/null
+++ b/domains/coopw.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "coopw1",
+ "email": "urchin139@altmail.kr"
+ },
+ "record": {
+ "CNAME": "coopw.pages.dev"
+ }
+}
diff --git a/domains/create.json b/domains/create.json
new file mode 100644
index 0000000000..c54d1dfaa0
--- /dev/null
+++ b/domains/create.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "VaibhavSys",
+ "email": "vaibhavsys@protonmail.com"
+ },
+ "record": {
+ "URL": "https://factory.is-a.dev"
+ }
+}
diff --git a/domains/d.json b/domains/d.json
new file mode 100644
index 0000000000..5d8a53e7e7
--- /dev/null
+++ b/domains/d.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "AhNode",
+ "email": "",
+ "discord": "704173828187619370"
+ },
+
+ "record": {
+ "A": ["69.197.135.202"]
+ }
+ }
+
diff --git a/domains/daamin.json b/domains/daamin.json
new file mode 100644
index 0000000000..7c331f7df3
--- /dev/null
+++ b/domains/daamin.json
@@ -0,0 +1,11 @@
+{
+ "description": "Portfolio Website",
+ "repo": "https://github.com/Daamin909/website/",
+ "owner": {
+ "username": "Daamin909",
+ "email": "ashai.daamin@gmail.com"
+ },
+ "record": {
+ "CNAME": "daamin909.github.io"
+ }
+}
diff --git a/domains/danilwhale.json b/domains/danilwhale.json
new file mode 100644
index 0000000000..66ad214c36
--- /dev/null
+++ b/domains/danilwhale.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "danilwhale",
+ "email": "",
+ "discord": "1191777214467940414",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.TMndiEsl4ECzkNhIvJVzKhARY5P83h9nXwYNjtmb8fy_gr0Xrl6dIgbXdxasHq2R4EFrN8VfElTk5pMEjjAXvIVP0mvXO3pmdunG2hbGNmKqPyyG6ZAB6EwOYnYJS6tKF17MmDwiRRreewgohIKJE7c3oP8oYaXH_mLvo9RI_BxpgRbdblFGZFzkGiTrZL0ju0XjSX5oBrcmFLfX5Rd3P3Lv7ySszZiwvRBLyEoR4v_I1oeS59FhMFJ5nHfdMwwd0X0UP_FUf67C24-vcaGi7Xv3ni4lWEU-skubVXTS2ya1t41VX2T_FD0kEorFAcwC30NcHjRERFMdHYXBMyvGEw.CpiU15hYni_PlE_UWHFCQA.sguibYYksrr1sUw7BqjJXJBmRNA0mOuEhRUaZ4I74H2LD-QC1GdY2wCYLp987GEbRnGiOGiNypsk_hONvHFcH0-0NXYxRL3Nel9gPATShEQ.KWSA5I9S9fXpvGnlkqFs7A"
+ },
+
+ "record": {
+ "CNAME": "danilwhale.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/demo.mcstatus.json b/domains/demo.mcstatus.json
new file mode 100644
index 0000000000..6a7b11a159
--- /dev/null
+++ b/domains/demo.mcstatus.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "educatedsuddenbucket@gmail.com"
+ },
+ "record": {
+ "CNAME": "bff5bd034c7fbbeafaaf626f505c8cc5.ipv4.tcpshield.com"
+ }
+}
diff --git a/domains/devvault.json b/domains/devvault.json
new file mode 100644
index 0000000000..fd8c872427
--- /dev/null
+++ b/domains/devvault.json
@@ -0,0 +1,11 @@
+{
+ "description": "Link for DevVault personal site on GitHub pages",
+ "repo": "https://github.com/DevVault/devvault.github.io",
+ "owner": {
+ "username": "DevVault",
+ "email": "admin@devvault.ru"
+ },
+ "record": {
+ "CNAME": "devvault.github.io"
+ }
+}
diff --git a/domains/dhilipan.json b/domains/dhilipan.json
new file mode 100644
index 0000000000..07c4ee5972
--- /dev/null
+++ b/domains/dhilipan.json
@@ -0,0 +1,18 @@
+{
+ "owner": {
+ "username": "MysticalPvE",
+ "email": "",
+ "discord": "1229782675678826496",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.WPtn_SlHtmPez8jjftkfl-CgWWn-ZYC-SyRJsyxLt-Gn_aEyTjQCgENyWvEpCzShxRpsqd5Np_gpkW8UM1-1MhIm1LjkGB50Aw_DMZK-gZS5KsWEXG8mclQXpIbcBVzI-HlRtHXicgDs-t7TcdL1qefMiisKwedNEUz9UvBxHFoNuA9E37cNrl5Y5j8Cf2E2x3D7eK2FxA3WvKXaMTRj40pitxwXxOGJqFqiv5QFehiIp_0pwtsjlWXm792LsePHIOKONeFy1p6v7HJgUx3WZKI4-5FADx9XqD3s6pS9jC8gOFqL4zllEE5cLVOz1Fy27tQrMn4B_b7qn5UxO1kBYA.ekzBd4v9e5MKBuUB-08ILg.qLhRJw9HYeu7ifjuRQfOUYdplsU6goAZRwazKk8fnW9FU1N6zxPg_2FjU4yoIki6PHZUrb-I5Bwt8FrX6G-3-M3uBQspwQLb5YdUDU-qJQY.KTelr2g7MJZ-b4qOxnJv2A"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ],
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
diff --git a/domains/dhruvakalur.json b/domains/dhruvakalur.json
new file mode 100644
index 0000000000..ab5e622cc6
--- /dev/null
+++ b/domains/dhruvakalur.json
@@ -0,0 +1,14 @@
+{
+ "description": "My Personal EMAIL",
+ "owner": {
+ "username": "dhruvakalur",
+ "email": "dhruvakalur9@gmail.com"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
diff --git a/domains/dishery.json b/domains/dishery.json
new file mode 100644
index 0000000000..d4f17e4921
--- /dev/null
+++ b/domains/dishery.json
@@ -0,0 +1,18 @@
+{
+ "owner": {
+ "username": "legofanlovessayori",
+ "email": "",
+ "discord": "805708874178625546"
+ },
+ "record": {
+ "TXT": [
+ "protonmail-verification=4673bc02c41c5ac6445e15835074759576e78e3d",
+ "v=spf1 include:_spf.protonmail.ch ~all",
+ "v=DMARC1; p=quarantine"
+ ],
+ "MX": [
+ "mail.protonmail.ch",
+ "mailsec.protonmail.ch"
+ ]
+ }
+}
diff --git a/domains/docs.6.json b/domains/docs.6.json
new file mode 100644
index 0000000000..883e0729df
--- /dev/null
+++ b/domains/docs.6.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "shockbs",
+ "email": "apipherng@gmail.com"
+ },
+ "record": {
+ "URL": "https://docs.shockbs.is-a.dev/"
+ }
+}
diff --git a/domains/docs.shockbs.json b/domains/docs.shockbs.json
index ec1085c14b..874b42c4ae 100644
--- a/domains/docs.shockbs.json
+++ b/domains/docs.shockbs.json
@@ -4,6 +4,5 @@
"email": "apipherng@gmail.com"
},
"record": {
- "CNAME": "documentationggffddjussdddgghhirrdssh6dd.onrender.com"
- }
+ "CNAME": "documentationggffddjussdddgghhirrdssh6dd.onrender.com" }
}
diff --git a/domains/dog.json b/domains/dog.json
new file mode 100644
index 0000000000..1a06bbbaf4
--- /dev/null
+++ b/domains/dog.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "yunexiz.github.io"
+ }
+}
diff --git a/domains/dogs.json b/domains/dogs.json
new file mode 100644
index 0000000000..42168e22b4
--- /dev/null
+++ b/domains/dogs.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "dog-images.pages.dev"
+ }
+}
diff --git a/domains/duck.json b/domains/duck.json
index c27d7455e2..38cb2521a3 100644
--- a/domains/duck.json
+++ b/domains/duck.json
@@ -4,6 +4,6 @@
"email": "serverdeveloper@duck.com"
},
"record": {
- "CNAME": "glitch.edgeapp.net"
+ "CNAME": "serverdeveloper9447.github.io"
}
}
diff --git a/domains/e.json b/domains/e.json
new file mode 100644
index 0000000000..91f2b142af
--- /dev/null
+++ b/domains/e.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "KennySB-dev",
+ "email": "",
+ "discord": "681811851428102145"
+ },
+
+ "record": {
+ "CNAME": "kennysb.xyz"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/educatedsuddenbucket.json b/domains/educatedsuddenbucket.json
index 47fad6424f..200cf46538 100644
--- a/domains/educatedsuddenbucket.json
+++ b/domains/educatedsuddenbucket.json
@@ -1,22 +1,22 @@
{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "educatedsuddenbucket@gmail.com"
- },
- "record": {
- "MX": [
- "mx1.improvmx.com",
- "mx2.improvmx.com"
- ],
- "TXT": [
- "v=spf1 include:spf.improvmx.com ~all",
- "google-site-verification=hS8B2hSz-rNk6gLRnwaZjxuJE9rCLU_25X65JsLEczE"
- ],
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "educatedsuddenbucket@gmail.com"
+ },
+ "record": {
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ],
+ "TXT": [
+ "google-site-verification=hS8B2hSz-rNk6gLRnwaZjxuJE9rCLU_25X65JsLEczE",
+ "v=spf1 include:spf.improvmx.com ~all"
+ ],
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ]
+ }
}
diff --git a/domains/egirl.json b/domains/egirl.json
new file mode 100644
index 0000000000..d288f22715
--- /dev/null
+++ b/domains/egirl.json
@@ -0,0 +1,13 @@
+{ "owner": { "username":"mAskDucK",
+
+
+
+
+ "email": "",
+ "discord": "maskduck"
+
+},
+
+"record": {
+ "CNAME": "maskduck.pages.dev"
+ }}
diff --git a/domains/ehab.json b/domains/ehab.json
index 73d5844e6d..64c1a47643 100644
--- a/domains/ehab.json
+++ b/domains/ehab.json
@@ -1,9 +1,11 @@
{
- "owner": {
- "username": "ehabmansour1",
- "email": "mansehab990@gmail.com"
- },
- "record": {
- "CNAME": "ehabmansour1.github.io"
- }
+ "owner": {
+ "username": "ehabmansour1",
+ "email": "mansehab990@gmail.com"
+ },
+ "record": {
+ "A": ["128.204.223.115"],
+ "TXT": "v=spf1 mx a include:mail9.serv00.com -all",
+ "MX": "mail9.serv00.com"
+ }
}
diff --git a/domains/esb.json b/domains/esb.json
index 4792a76cec..0eb39b0e6f 100644
--- a/domains/esb.json
+++ b/domains/esb.json
@@ -6,6 +6,15 @@
"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"
]
}
}
diff --git a/domains/ewan.json b/domains/ewan.json
new file mode 100644
index 0000000000..0348b08d0a
--- /dev/null
+++ b/domains/ewan.json
@@ -0,0 +1,11 @@
+{
+ "description": "personal portfolio for dev",
+ "repo": "https://github.com/Ewan-Dev/ewan-dev.github.io",
+ "owner": {
+ "username": "Ewan-Dev",
+ "email": "lyricizer2@gmail.com"
+ },
+ "record": {
+ "CNAME": "ewan-dev.github.io"
+ }
+}
diff --git a/domains/extensions.trung.json b/domains/extensions.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/extensions.trung.json
+++ b/domains/extensions.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/factory.json b/domains/factory.json
new file mode 100644
index 0000000000..ac0f1c0ce9
--- /dev/null
+++ b/domains/factory.json
@@ -0,0 +1,11 @@
+{
+ "description": "Factory for manufacturing is-a-dev domains",
+ "repo": "https://github.com/VaibhavSys/DomainFactory",
+ "owner": {
+ "username": "VaibhavSys",
+ "email": "vaibhavsys@protonmail.com"
+ },
+ "record": {
+ "CNAME": "domainfactory.pages.dev"
+ }
+}
diff --git a/domains/fake.json b/domains/fake.json
index 4800596c39..f9f4f5077f 100644
--- a/domains/fake.json
+++ b/domains/fake.json
@@ -2,11 +2,11 @@
"description": "site",
"repo": "https://github.com/fakename131",
"owner": {
- "username": "Fake_Name131",
+ "username": "fakename131",
"email": "fake@fake.is-a.dev"
},
"record": {
- "A": ["185.199.108.153"],
+ "A": ["75.2.60.5"],
"MX": [
"mx1.improvmx.com",
"mx2.improvmx.com"
diff --git a/domains/faultysden.json b/domains/faultysden.json
new file mode 100644
index 0000000000..111af10656
--- /dev/null
+++ b/domains/faultysden.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "FaultyFaulty-glitch",
+ "email": "faultywindows+github@gmail.com",
+ "discord": "1041028534690386051"
+ },
+
+ "record": {
+ "TXT": "google-site-verification=ix1jczu2q87igryc4eaexvdv1vrzjxolu14sjfpsnko"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/whsprr.json b/domains/fent.json
similarity index 53%
rename from domains/whsprr.json
rename to domains/fent.json
index 48b3fa9205..ede20a2254 100644
--- a/domains/whsprr.json
+++ b/domains/fent.json
@@ -1,9 +1,9 @@
{
"owner": {
- "username": "whsprr-png",
+ "username": "fentbomb",
"email": "musicbotqn@gmail.com"
},
"record": {
- "CNAME": "whsprr-png.github.io"
+ "CNAME": "fentbomb.github.io"
}
}
diff --git a/domains/fetches.educatedsuddenbucket.json b/domains/fetches.educatedsuddenbucket.json
deleted file mode 100644
index b14fc31dca..0000000000
--- a/domains/fetches.educatedsuddenbucket.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "educatedsuddenbucket@gmail.com"
- },
- "record": {
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
-}
diff --git a/domains/files.allancoding.json b/domains/files.allancoding.json
index 158097ebc5..23114485e7 100644
--- a/domains/files.allancoding.json
+++ b/domains/files.allancoding.json
@@ -1,4 +1,6 @@
{
+ "description": "My files website",
+ "repo": "https://github.com/allancoding/files.allancoding.is-a.dev",
"owner": {
"username": "allancoding",
"email": "allancoding.dev@gmail.com",
@@ -6,6 +8,8 @@
"discord": "allancoding"
},
"record": {
- "CNAME": "allancoding.github.io"
+ "A": [
+ "75.2.60.5"
+ ]
}
}
diff --git a/domains/films.json b/domains/films.json
new file mode 100644
index 0000000000..359277b0fc
--- /dev/null
+++ b/domains/films.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "wsmdn",
+ "email": "",
+ "discord": "1049856856467722242",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.AM1kF-aodU7n0_bBI28MO7vlg-WccpJAhnV5ltySu602lhBR1Dx3UOD1TskSKmpdBpDXhSOQJ2bQZQ5ouum5txo7kJ42jLOsEr-OhXNREU3pqIE2kfJidObs05iDu2nOFIylFjZGNuYbmJQMPCf0F0KEIbNlgEWKqgPXBuiDOfv8yhi649LbPaj18TCIe04t6pkb77-1lNZiI3ebex4HAbWydF0IKSbijif7FoJbmi_LN6rqYXG-BYRzmdvvCg8FFrDWnTM4KJmc-4dU546kVFtB_GUgMYWl8xSTXKLk9PBHm0Prp3tONhqSMXRIR5Cg-6iVYbkw-Ln0YjYsnrnayQ.u_JCdGcxfWhrAT_7Hh_s2w.uRv4MGy00eRLbLsaHia2fP9FSpuDyGHrb1jF-EWjJ6fjd5XeYw73Up3tiulfQvROZ1li_p5Xfx7RbxaIlEYlA_584ldAutc_AT1YNcg78ck.9dcSw-Ut3ZbG_iO7Vx3-3A"
+ },
+
+ "record": {
+ "CNAME": "nomdn.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/formuna.json b/domains/formuna.json
index ba61c06ba2..853c02e3cd 100644
--- a/domains/formuna.json
+++ b/domains/formuna.json
@@ -1,12 +1,12 @@
{
- "owner": {
- "username": "FormunaGit",
- "email": "",
- "discord": "754657845563097108"
- },
-
- "record": {
- "CNAME": "formunagit.github.io"
- }
+ "description": "My website for my projects",
+ "repo": "https://github.com/FormunaGit/FormunaGit.github.io",
+ "owner": {
+ "username": "FormunaGit",
+ "email": "",
+ "discord": "754657845563097108"
+ },
+ "record": {
+ "CNAME": "formunagit.github.io"
}
-
\ No newline at end of file
+}
diff --git a/domains/i2.esb.json b/domains/free.json
similarity index 100%
rename from domains/i2.esb.json
rename to domains/free.json
diff --git a/domains/img.esb.json b/domains/freefor.json
similarity index 100%
rename from domains/img.esb.json
rename to domains/freefor.json
diff --git a/domains/freefordevs.json b/domains/freefordevs.json
index b14fc31dca..df4e9ada4d 100644
--- a/domains/freefordevs.json
+++ b/domains/freefordevs.json
@@ -1,14 +1,11 @@
{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "educatedsuddenbucket@gmail.com"
- },
- "record": {
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "educatedsuddenbucket@gmail.com"
+ },
+ "record": {
+ "A": [
+ "216.24.57.1"
+ ]
+ }
}
diff --git a/domains/funn.json b/domains/funn.json
new file mode 100644
index 0000000000..dc25bcf3e8
--- /dev/null
+++ b/domains/funn.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "funnsam",
+ "email": "funnsam8@gmail.com",
+ "discord": "684733024612646953",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.ZMW5PjPtfPT7C8JjTRmHq8lQPCfuuqYjzrJDWht6SAT7w7Uf1pocR9OhIsl4fvx3Jw1bcOYsa2KfWbZ_PXLDD6YlRHM86nszS4TPFlo8_DsqJC0IMlXdBtlgqPg0gntNzuZMNg9HLpkRWiXzkXMEMdQ5OJJgVoKtBCpc9Z68aoFw_d8WNKebA1mC04DayucBOulPu1bY2HhZleTvjAlW7_wA-soRF-O9ByL59DtNfUGaJaX7SqvthGz2FSyPqlaw1UOe3fpQdutYG_A97tv_toQOJZy93o2iCcrxSWS3tPFZnu_LVyL-JRmkfaMvzxFakgA3etAOx-ReUnD8TmM3tw.ZqPbIAF9lrCM39_U9KgzHA.PdOPxoSDOoMU9saO4KtrXor5ZIStqTjA8AMrCFatJDiB3iHln7gPkzkhmS-l6w8hwu7T3VLxDe8kfVmxmbenKksumyR6pDicLaw45zb5vfY.srUkRHoxqz9QXW1pzbTo2w"
+ },
+
+ "record": {
+ "CNAME": "funnsam.github.io"
+ }
+}
+
diff --git a/domains/furqan.json b/domains/furqan.json
new file mode 100644
index 0000000000..4391efa0b1
--- /dev/null
+++ b/domains/furqan.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "rediffurqan",
+ "email": "frqnlove8765@gmail.com"
+ },
+ "record": {
+ "CNAME": "phonesme.onrender.com"
+ }
+}
diff --git a/domains/fy.json b/domains/fy.json
new file mode 100644
index 0000000000..d8485c6a87
--- /dev/null
+++ b/domains/fy.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "bestzwei",
+ "email": "post@zwei.de.eu.org"
+ },
+ "record": {
+ "CNAME": "libretranslator.pages.dev"
+ }
+}
diff --git a/domains/g.6.json b/domains/g.6.json
new file mode 100644
index 0000000000..ff9db082d4
--- /dev/null
+++ b/domains/g.6.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "shockbs",
+ "email": "apipherng@gmail.com"
+ },
+ "record": {
+ "URL": "https://gg.shockbs.is-a.dev/"
+ }
+}
diff --git a/domains/g.json b/domains/g.json
new file mode 100644
index 0000000000..334b3759f4
--- /dev/null
+++ b/domains/g.json
@@ -0,0 +1,11 @@
+{
+ "description": "g.is-a.dev",
+ "owner": {
+ "username": "GizzyUwU",
+ "email": "nerop455@gmail.com",
+ "discord": "gizzyowo"
+ },
+ "record": {
+ "CNAME": "edge.redirect.pizza"
+ }
+}
diff --git a/domains/g.shockbs.json b/domains/g.shockbs.json
new file mode 100644
index 0000000000..6d2da5cca5
--- /dev/null
+++ b/domains/g.shockbs.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "shockbs",
+ "email": "apipherng@gmail.com"
+ },
+ "record": {
+ "CNAME": "ziplineshockbs.onrender.com"
+ }
+}
diff --git a/domains/galvanized-square-steel-with-aluminium-frame.json b/domains/galvanized-square-steel-with-aluminium-frame.json
new file mode 100644
index 0000000000..5c856434f5
--- /dev/null
+++ b/domains/galvanized-square-steel-with-aluminium-frame.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "galvanized-square-steel-with-aluminium-frame.pages.dev"
+ }
+}
diff --git a/domains/gameserver.ardaninho.json b/domains/gameserver.ardaninho.json
new file mode 100644
index 0000000000..a57c2383bd
--- /dev/null
+++ b/domains/gameserver.ardaninho.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "Ardaninho",
+ "email": "",
+ "discord": "639439553698201626"
+ },
+
+ "record": {
+ "A": ["23.88.73.88"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/gg.6.json b/domains/gg.6.json
new file mode 100644
index 0000000000..ff9db082d4
--- /dev/null
+++ b/domains/gg.6.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "shockbs",
+ "email": "apipherng@gmail.com"
+ },
+ "record": {
+ "URL": "https://gg.shockbs.is-a.dev/"
+ }
+}
diff --git a/domains/giahuy.json b/domains/giahuy.json
new file mode 100644
index 0000000000..433c7d5c28
--- /dev/null
+++ b/domains/giahuy.json
@@ -0,0 +1,13 @@
+{
+ "description": "I Make the Worst Discord Bot on Earth",
+ "repo": "https://github.com/mtheintrude23/register",
+ "owner": {
+ "username": "mtheintrude23",
+ "email": "hostbotfree@gmail.com",
+ "discord": "1219514896778133594"
+},
+
+ "record": {
+ "CNAME": "mtheintrude23.github.io"
+ }
+}
diff --git a/domains/gtvolk.json b/domains/gtvolk.json
new file mode 100644
index 0000000000..15e7610974
--- /dev/null
+++ b/domains/gtvolk.json
@@ -0,0 +1,11 @@
+{
+ "description": "Link for GTVolk personal site on GitHub pages",
+ "repo": "https://github.com/GTVolk/gtvolk.github.io",
+ "owner": {
+ "username": "GTVolk",
+ "email": "gtvolk31@gmail.com"
+ },
+ "record": {
+ "CNAME": "gtvolk.github.io"
+ }
+}
diff --git a/domains/hansana.json b/domains/hansana.json
new file mode 100644
index 0000000000..e56adb60c3
--- /dev/null
+++ b/domains/hansana.json
@@ -0,0 +1,12 @@
+{
+ "description": "Hansana's Portfolio",
+ "repo": "https://github.com/hansanaD/hansanad.github.io",
+ "owner": {
+ "username": "hansanaD",
+ "email": "josephandrew1@logicstreak.com",
+ "twitter": ""
+ },
+ "record": {
+ "CNAME": "hansanad.github.io"
+ }
+}
diff --git a/domains/harshnj.json b/domains/harshnj.json
index 0239adcd8c..339032802b 100644
--- a/domains/harshnj.json
+++ b/domains/harshnj.json
@@ -22,6 +22,9 @@
"mx1.forwardemail.net",
"mx2.forwardemail.net"
],
- "TXT": "forward-email=harshnj@proton.me"
+ "TXT": [
+ "forward-email=harshnj@proton.me",
+ "google-site-verification=Eu4i8iW1vck-KlTEnzPMfyc2WI1sgbYrNeATHJiyds0"
+ ]
}
-}
\ No newline at end of file
+}
diff --git a/domains/he.json b/domains/he.json
index 40f5e67f90..6e9cb67f38 100644
--- a/domains/he.json
+++ b/domains/he.json
@@ -1,9 +1,10 @@
{
"owner": {
"username": "Yunexiz",
- "email": "yunexiz@aol.com"
+ "discord": "1040303561847881729",
+ "email": ""
},
"record": {
- "A": ["109.71.252.37"]
+ "CNAME": "yunexiz.pages.dev"
}
}
diff --git a/domains/hilight3r.json b/domains/hilight3r.json
new file mode 100644
index 0000000000..963dbaf2d0
--- /dev/null
+++ b/domains/hilight3r.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "HIlight3R",
+ "email": "",
+ "discord": "632272741000544259",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.lEEbmOZavCkur0apEhD0MigNx6rzV3Kqhd9_Lw4Wxt7U7b0rcV779rEFB1Fm4LdwKAVJJ8_MeDm1jf0y14lGqQotXsvYzRKOCBk5t7vLtS_541WkodNwOPbAUV_g2KBaq6MynjnwX5786OLkuRJE-QnxwflxQRQHtL76xYJV3d7UVmZk0ppSUxyCw5SdSXUp7zgoJiTE2JIshtR5dFULQCyH9QK7gVpNFJBwaoTJeoRsCOy_oYoXVhYysYhX94tubtwKzE4xSDmQW4UbOo8yLRNTIo-PkyuY6cBD4yYvueRcTAd_UChS12Y27QSFhQq78I7WLaE7u4cV060Th1fEmA.9kQc0tIg1PyfXJtKgbiBSQ.uFTPklnOgLBqnu-dg7ZsCEZ_QrMiuyiHY60IgI1X3CdE1kSQckWTdApOQF8AXTC0inYYfmSpfvzP02Rcgo3Z9vyrckWG_ZSJbmfKR2SOpeN_Cq94jwKAZQXW0U45LxB1.cYkl_VljmQbyvurLc7hF6Q"
+ },
+ "record": {
+ "CNAME": "hilight3r.github.io"
+ }
+}
diff --git a/domains/hooman.json b/domains/hooman.json
new file mode 100644
index 0000000000..0a2d2226df
--- /dev/null
+++ b/domains/hooman.json
@@ -0,0 +1,12 @@
+{
+ "description": "my personal site",
+ "repo": "https://github.com/ThisIsALegitUsername/thisisalegitusername.github.io",
+ "owner": {
+ "username": "hooman23",
+ "discord": "hooman23",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "thisisalegitusername.github.io"
+ }
+}
diff --git a/domains/horizon.json b/domains/horizon.json
new file mode 100644
index 0000000000..3caf9bcc8c
--- /dev/null
+++ b/domains/horizon.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "Horizon1010",
+ "email": "",
+ "discord": "877848431983493132"
+ },
+
+ "record": {
+ "CNAME": "lunar-hangout.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/i-am.json b/domains/i-am.json
new file mode 100644
index 0000000000..5b296d6420
--- /dev/null
+++ b/domains/i-am.json
@@ -0,0 +1,10 @@
+{
+ "description": "i-am.is-a.dev",
+ "owner": {
+ "username": "i-am-is-a-dev",
+ "email": "lx737456@gmail.com"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/i.esb.json b/domains/i.esb.json
new file mode 100644
index 0000000000..ffcf230cfa
--- /dev/null
+++ b/domains/i.esb.json
@@ -0,0 +1,14 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "educatedsuddenbucket@gmail.com"
+ },
+ "record": {
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ]
+ }
+}
diff --git a/domains/ixdoggo.json b/domains/ixdoggo.json
new file mode 100644
index 0000000000..7d1d87550c
--- /dev/null
+++ b/domains/ixdoggo.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "xellion-dev",
+ "email": "xelxtct@gmail.com"
+ },
+ "record": {
+ "CNAME": "ixdoggo.pages.dev"
+ }
+}
diff --git a/domains/j.json b/domains/j.json
new file mode 100644
index 0000000000..542a2a56a7
--- /dev/null
+++ b/domains/j.json
@@ -0,0 +1,10 @@
+{
+ "description": "Short link to juststudio.is-a.dev",
+ "owner": {
+ "username": "JustStudio7",
+ "email": "support@juststudio.is-a.dev"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/janco.json b/domains/janco.json
new file mode 100644
index 0000000000..3ed28457eb
--- /dev/null
+++ b/domains/janco.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "JancoNel",
+ "email": "",
+ "discord": "1264555376918134796",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.LXD6kezr5CJaRBhFUVB3WcB2IKWzrw1zn6yuWQNmDlGbppbOw7W1GqJWiqePOPHEA_7EVj2f-pvK1WnkFaW4i1g0zpqAPeyNQfyVtlpttW7cyWFJGe_gRoTznaXXvntNw84qOEIIuPqFFloq03Lqdj5Iox736TOefBr5uTSieAj1oJ-qcQS424nnBrremLgjE3mEXY9ORhaTYD3XPdbvX6iYKrDl8ooM_nmkorcZzmoNjCKHDe3p6TML2vuPey_YTX1R0hJGJ1A99VYdBCVhvfEeeEO9Aaxo9Nu-4Um78wMHqtp7oryLHpwOcUzp7a3rAIkjtQaNmiL4jHLoWJFgtw.GWB9aQvdXYxUHmvAYGxK0A.IfxHtkIYUorJIxI7RvkstIB_pGZ-baszSq-IpLE_9arsm3tPTctQbz_Urii0J1-nBvjUaKdkQiWQDa_YBawyT7qber-j-zZlunX-bILrcT4.L4Sb6DK6xcrjwkUsYRmLXw"
+ },
+
+ "record": {
+ "CNAME": "janconel.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/jariullah.json b/domains/jariullah.json
new file mode 100644
index 0000000000..131aa51d6e
--- /dev/null
+++ b/domains/jariullah.json
@@ -0,0 +1,11 @@
+{
+ "description": "Personal Portfolio",
+ "repo": "https://github.com/Mohdjariullah/portfolio1",
+ "owner": {
+ "username": "mohdjariullah",
+ "email": "mohdjariullah@gmail.com"
+ },
+ "record": {
+ "CNAME": "mohdjariullah.github.io"
+ }
+}
diff --git a/domains/jd.json b/domains/jd.json
new file mode 100644
index 0000000000..fef85ac0d8
--- /dev/null
+++ b/domains/jd.json
@@ -0,0 +1,11 @@
+{
+ "description": "Short link to justdeveloper.is-a.dev",
+ "owner": {
+ "username": "JustDeveloper1",
+ "email": "justdeveloper@juststudio.is-a.dev",
+ "discord": "1117482901353812088"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/joe50097.json b/domains/joe50097.json
new file mode 100644
index 0000000000..93f5d50bbb
--- /dev/null
+++ b/domains/joe50097.json
@@ -0,0 +1,16 @@
+{
+ "owner": {
+ "username": "Joe50097",
+ "email": "zcell9500@gmail.com"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all",
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+}
diff --git a/domains/joinsachinarya.json b/domains/joinsachinarya.json
new file mode 100644
index 0000000000..bec22cef16
--- /dev/null
+++ b/domains/joinsachinarya.json
@@ -0,0 +1,14 @@
+{
+ "description": "Portfolio website",
+ "repo": "https://github.com/joinsachinarya/joinsachinarya.is-a.dev.git",
+ "owner": {
+ "username": "joinsachinarya",
+ "email": "joinsachinarya@gmail.com",
+ "twitter": "joinsachinarya"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+}
diff --git a/domains/joyal-jijo.json b/domains/joyal-jijo.json
new file mode 100644
index 0000000000..55c4a44a58
--- /dev/null
+++ b/domains/joyal-jijo.json
@@ -0,0 +1,14 @@
+{
+ "description": "joyal portfolio",
+ "repo": "https://github.com/joyal-jij0/portfolio",
+ "owner": {
+ "username": "joyal-jij0",
+ "email": "",
+ "discord": "joyal_jij0"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+}
\ No newline at end of file
diff --git a/domains/just.json b/domains/just.json
new file mode 100644
index 0000000000..04c99bd69b
--- /dev/null
+++ b/domains/just.json
@@ -0,0 +1,11 @@
+{
+ "description": "Short link to juststudio.is-a.dev",
+ "owner": {
+ "username": "JustStudio7",
+ "email": "support@juststudio.is-a.dev",
+ "discord": "1117482901353812088"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/justdev.json b/domains/justdev.json
new file mode 100644
index 0000000000..c6539887aa
--- /dev/null
+++ b/domains/justdev.json
@@ -0,0 +1,10 @@
+{
+ "description": "Short link to justdeveloer.is-a.dev",
+ "owner": {
+ "username": "JustDeveloper1",
+ "email": "justdeveloper@juststudio.is-a.dev"
+ },
+ "record": {
+ "A": ["89.106.200.1"]
+ }
+}
diff --git a/domains/justdeveloper.json b/domains/justdeveloper.json
new file mode 100644
index 0000000000..468029b982
--- /dev/null
+++ b/domains/justdeveloper.json
@@ -0,0 +1,21 @@
+{
+ "description": "JustDeveloper",
+ "repo": "https://github.com/JustDeveloper1/justdeveloper1.github.io",
+ "owner": {
+ "username": "JustDeveloper1",
+ "email": "justdeveloper@juststudio.is-a.dev",
+ "discord": "1117482901353812088"
+ },
+ "record": {
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ],
+ "TXT": [
+ "google-site-verification=qBaFslC7xe6gcHiolYEJ32HjpJVk-ZOMbRpu_1zkm_s",
+ "yandex-verification: 10cec93159ddc69f"
+ ]
+ }
+}
diff --git a/domains/juststudio.json b/domains/juststudio.json
new file mode 100644
index 0000000000..4f2722c821
--- /dev/null
+++ b/domains/juststudio.json
@@ -0,0 +1,27 @@
+{
+ "description": "JustStudio.",
+ "repo": "https://github.com/JustStudio7/juststudio7.github.io",
+ "owner": {
+ "username": "JustStudio7",
+ "email": "support@juststudio.is-a.dev",
+ "discord": "1117482901353812088"
+ },
+ "record": {
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ],
+ "MX": [
+ "mx.zoho.eu",
+ "mx2.zoho.eu",
+ "mx3.zoho.eu"
+ ],
+ "TXT": [
+ "v=spf1 include:zohomail.eu ~all",
+ "google-site-verification=qUvCromdvfxnS6LXzcxcha5rEsHUzBxl9nZH6sT3Dk4",
+ "yandex-verification: aac5928d8d57ade9"
+ ]
+ }
+}
diff --git a/domains/k.json b/domains/k.json
new file mode 100644
index 0000000000..3e82368d94
--- /dev/null
+++ b/domains/k.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "MaskDuck",
+ "email": "",
+ "discord": "716134528409665586"
+ },
+ "record": {
+ "CNAME": "maskduck.pages.dev"
+ }
+}
diff --git a/domains/kaizenji2024.json b/domains/kaizenji2024.json
new file mode 100644
index 0000000000..7e5186cefa
--- /dev/null
+++ b/domains/kaizenji2024.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Kaizenji",
+ "email": "baratumal6788@gmail.com"
+ },
+ "record": {
+ "CNAME": "jayceeqti-web.pages.dev"
+ }
+ }
diff --git a/domains/karacsony.vamtic.json b/domains/karacsony.vamtic.json
new file mode 100644
index 0000000000..a0c9ee3042
--- /dev/null
+++ b/domains/karacsony.vamtic.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "vamtic",
+ "email": "vamtic@yahoo.com"
+ },
+ "record": {
+ "CNAME": "karacsony.pages.dev"
+ }
+}
diff --git a/domains/katz.json b/domains/katz.json
index 2250333dac..a9b2826ab0 100644
--- a/domains/katz.json
+++ b/domains/katz.json
@@ -6,7 +6,7 @@
},
"record": {
"A": [
- "69.197.135.202"
+ "69.197.135.205"
]
}
}
diff --git a/domains/kaushalbuccha.json b/domains/kaushalbuccha.json
new file mode 100644
index 0000000000..4ccd0ef0a1
--- /dev/null
+++ b/domains/kaushalbuccha.json
@@ -0,0 +1,14 @@
+{
+ "description": "Devloper Portfolio",
+ "repo": "https://github.com/kaushalbuccha/Portfolio",
+ "owner": {
+ "username": "kaushalbuccha",
+ "email": "kaushaljain741@gmail.com",
+ "twitter": "kaushalbuccha"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+}
diff --git a/domains/kingofnetflix.json b/domains/kingofnetflix.json
new file mode 100644
index 0000000000..94a621fb96
--- /dev/null
+++ b/domains/kingofnetflix.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "kingofnetflix",
+ "email": "kingofnetflix@waifu.club"
+ },
+ "description": "personal development work (websites, reverse proxying, etc)",
+ "record": {
+ "A": [
+ "161.35.97.251"
+ ]
+ }
+}
diff --git a/domains/kito.json b/domains/kito.json
new file mode 100644
index 0000000000..0bd1ba082f
--- /dev/null
+++ b/domains/kito.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "KitoMCVN",
+ "email": "",
+ "discord": "915876843884777472",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.bWNBxXSrLT81uzEvuFDyDzQ6MUq8Aq3mkVGE9xrhoZ3emFszHFj1sr4hGsNg-X2IJWAYJHNAFuN6ihvsdWNW1fuJIyUpYUfxnwG272uIjq1441itpD61r9GEjhVI9-f9eiA0DCM3mZxf7JABbSZEAAQSjkQNBZy7btbWqAC_fcvaHlh8tTkmn8tiCF6PmYUaU_-OVcVfpLqfE1NG4jWhqDdh6PHy-YJdNSRMggPKW1tgOkAzzPkFDFJbZLGxbRRhPFzsVi64Q4arfkQgTcsJpEGD5RwQvbb3j_lHGtErQvCndbnhcKAOltYpc-DL3Iv8A0iTeUsrpQ8lu-FKPOuVhg.eEabdg4lkJkWzZ9LhlnMAw.BxE4h5-4aIfPNc5C1Fc13n243OxCAOj0p6aWN6sClxRz9osKsmy_ASiLJ-S0thDvWu4-IDNdEvpt2pmjkQe2a4nCDDIZ8Lh9RHzVOZi_hQs.OTiy1ZwmVAWUfoEqGkqCEg"
+ },
+
+ "record": {
+ "CNAME": "kitomc.site"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/kittyneverdies.json b/domains/kittyneverdies.json
new file mode 100644
index 0000000000..2f98b1943e
--- /dev/null
+++ b/domains/kittyneverdies.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "kittyneverdies",
+ "email": "Catofeyevich@proton.me"
+ },
+ "record": {
+ "CNAME": "kittyneverdies.github.io"
+ }
+}
diff --git a/domains/kokoapi.json b/domains/kokoapi.json
new file mode 100644
index 0000000000..0aae2b79b3
--- /dev/null
+++ b/domains/kokoapi.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "kokofixcomputers",
+ "email": "",
+ "discord": "1096839213313446019",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.OVsezriezhfXmczekw7NKD6j1jiTDnkJZaV8hmKUT6jVau-fAM4xsfKuSd55u-ayIYDJTJmqUhOdDcRNGn9qJMQU1swUYKM2IjqV5F39j62OBWCEuvGahVIlvk3qPBrL6BsTnE6U5V6AcL7fk07JR7VQncG_gLo_CsF2D3NkMlvjeJweQKk-PjP5f64lFJxpGo4X6lfRgvYI9IAfyDFCBuXVz1bziA_ZLHMLSGSm6OxJSBBPV42TqlHNYGzRYaEq5gBDnANsuNDVN27pHgDEQjhCxP07U3V5dAL7JcESSlR7QQSng47lwmetAtfMlW2HSeOkBLLpkI82XNDCjwnsXA.Qpc8I5_rOVUFEGrJgh4mnw.aZ_gT11nH1hgU_JXz5a01NBB6CDgcy4i9cgBeqo2j50HuQ00uDzzBDS6M941D0WsCOLnzaQ1XvjXLcFiHKcBuINVPaVNDu0X0Nm2ruoPpfLyS6mRa_efDkm9rwXR3bghgOKkE1wcXTR6LyOkDEhyYg.jmEV6MAXMmLltboCG3yE6w"
+ },
+
+ "record": {
+ "A": ["37.114.46.39"]
+ }
+ }
diff --git a/domains/kokoauth.json b/domains/kokoauth.json
new file mode 100644
index 0000000000..2f6ffbed2d
--- /dev/null
+++ b/domains/kokoauth.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "kokofixcomputers",
+ "email": "",
+ "discord": "1096839213313446019",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.siGn-NNc3J0a5tP-qPXfUiXXiLIVsc0rU0Xd0LJ2zn1pvgeLu42wC5CVbz2mPW9PvsxmeOF2FdX4W1ki8dkzxI5tZO3CljQWLsKq26TpVGTApDCXDUEFk80WpmvQK_uBajVrL-0Jaq_teH1coNYFPbH5dp9WmOV3ckgCkqwqP7alY4klkZ9A6GsdkcJ51gbQ1qHp1qZIX7jwBNcOXE0WR5KTNXKeeOGSvHbAGEWhLc96y6TzokyZsC71pkTF0UjrLfB4uylcD0UfEONiwDKc8jjXR3Jz3GnfzgaSqPjRNYqMjXQ5XxPXwjv8t4iCP3cBRNEMM70pFXneFWt3defrMQ.6dpv7unaFwIz_IkI7VerwA.P9NXfPTD2LDNEdOFa-roPC1NDB1WvFiX8Giai3cjpNFYcYHJyH7_7lOV6o4zUoN83Ttt1VaukQKLsMk2kaVedZUPPryAhzVLMJiG7-GiJlW22PgcTkjB67jRjqEdoSo_zS70y1C7KeiLv7ZyY_koGg.2NwhAegHA2i-6E9hhzlXfQ"
+ },
+
+ "record": {
+ "A": ["45.90.12.32"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/kunsh13.json b/domains/kunsh13.json
new file mode 100644
index 0000000000..4e79e94a0b
--- /dev/null
+++ b/domains/kunsh13.json
@@ -0,0 +1,11 @@
+{
+ "description": "kunsh13.is-a.dev",
+ "repo": "https://github.com/kunsh13/iptv",
+ "owner": {
+ "username": "kunsh13",
+ "email": "kunshmaurya@gmail.com"
+ },
+ "record": {
+ "CNAME": "kunsh13.github.io"
+ }
+}
diff --git a/domains/l.json b/domains/l.json
new file mode 100644
index 0000000000..c45a313f91
--- /dev/null
+++ b/domains/l.json
@@ -0,0 +1,11 @@
+{
+ "description": "redirect domain",
+ "repo": "https://github.com/xkcdnerd/xkcdnerd.github.io",
+ "owner": {
+ "username": "xkcdnerd",
+ "email": "evanwang330@gmail.com"
+ },
+ "record": {
+ "URL": "https://nerd.is-a.dev"
+ }
+}
diff --git a/domains/leandrogameplays.json b/domains/leandrogameplays.json
new file mode 100644
index 0000000000..bcea816a7b
--- /dev/null
+++ b/domains/leandrogameplays.json
@@ -0,0 +1,17 @@
+{
+ "owner": {
+ "username": "LeandroGameplaysBR",
+ "email": "leandrogameplays74@outlook.com",
+ "discord": "351853993443590145",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.bZj78GsosfV-njUz8U1rJxGiVcdUic3W0HrirEAP8066paJbeal5aYkKOyyeTO7hmyatEJgdXr2DGGPexl079J4oawcsXiQYrewOwsc4XeLkpiWmAkMAJlflEy0Lwu_zPIcS6FHbLscjFltjYB0I_VaWH7d1yL-dDdB_9f79LqePpEDVWeSm_tE_K9AvOZWTxjlW-MLgtsF_dZkMCn5ez7gfQxya4KHFY2l9bEREmRe_hr_ZZp12WvNrlF29qW5MFbFQsbrYsDrI-iOxjsY041RJVT7G1abtTkF1bLuFN-5dkHXmcobAgsA9i_Z217_NLhVEfzfhxiEVvhh8bsxt-g.0gki4o65YPpemExFGVKWGQ.5filVxsyk_BErBgcU2nFuEHMtIuNQI1lUXV5oQtFB3Dr3eZCishTmAzyicrT_fu3I_BG1lstU2B3HXIDkza2bwRgOV1QTc0YmXT1jnY17tteTxICfcLkjgwqXYcoakfu.-rWHQPsibUCgYKaPMnP7vQ"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": [
+ "v=spf1 include:spf.improvmx.com ~all"
+ ]
+ }
+}
diff --git a/domains/link.vamtic.json b/domains/link.vamtic.json
new file mode 100644
index 0000000000..c1ffc9e532
--- /dev/null
+++ b/domains/link.vamtic.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "vamtic",
+ "email": "vamtic@yahoo.com"
+ },
+ "record": {
+ "CNAME": "cname.short.io"
+ }
+}
diff --git a/domains/links.trung.json b/domains/links.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/links.trung.json
+++ b/domains/links.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/lousybot.vulpine.json b/domains/lousybot.vulpine.json
new file mode 100644
index 0000000000..508ba76f17
--- /dev/null
+++ b/domains/lousybot.vulpine.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "VulpineFriend87",
+ "email": "",
+ "discord": "911268706112397392",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.r6syW7tNxlBa5qDUur4fffj5IZ_eJk-iOjUdEY0ltdKkaQb4_duvgZdvfL5vEgus1-X6ITfovRqqRdBe0QrCUz0cGZJApqG1mNatuxfLpIvsUs6NJXgUlvtlZNgEIs4quS9nTYkwaf2GN00Dw9HIWiI1kK9Xeka9pF5mawoiEBvUgkIkXIsIsN5o8_UP-RFCA1SPqRm9G5hsgGm4xH5XW8ujrZV-rO3DOq7Y1-3jg9Wu7pchKNWGB1gxwcNtYsJdwPt1rVVHUIRrwRTB0RO5iA-lOKD0uTb0YTqljQRraTm76ED6w5xOy5cF2-dAb93NOIh_BKK-kacf1PW5AzU_WA.0uyS8PftuzxGzQXJ0Ku2ZQ.AkMecMaSNp3FPFR-cVg6ZylxV9UUwjF1P0NIIZaiHyVtr-Xzl4qnbWebKMlZ3rMT8VusovJslRt5wAL8QaPuXBlznTy2drUJUuy6rZ-3l94.WUo41eNKnKL5vZMgoweWPw"
+ },
+
+ "record": {
+ "A": ["69.30.249.53"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/amberos.json b/domains/luminaos.json
similarity index 53%
rename from domains/amberos.json
rename to domains/luminaos.json
index f149378989..f40a1bb761 100644
--- a/domains/amberos.json
+++ b/domains/luminaos.json
@@ -1,9 +1,9 @@
{
"owner": {
- "username": "amberOS-win",
+ "username": "luminaOS-win",
"email": "winbo-yml-exe@outlook.com"
},
"record": {
- "CNAME": "amberos-win.github.io"
+ "CNAME": "luminaos-win.github.io"
}
}
diff --git a/domains/lumix.json b/domains/lumix.json
index 0c1b9a7e8a..7ab1e24b0d 100644
--- a/domains/lumix.json
+++ b/domains/lumix.json
@@ -1,11 +1,11 @@
{
"owner": {
"username": "o-lumix",
- "email": "lumixofficiel@gmail.com",
+ "email": "bylumixxx@gmail.com",
"discord": "828313756827516949"
},
"record": {
- "CNAME": "o-lumix.github.io"
+ "CNAME": "lumix-cmq.pages.dev"
}
}
diff --git a/domains/m.json b/domains/m.json
new file mode 100644
index 0000000000..559b318c51
--- /dev/null
+++ b/domains/m.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "is-a-dev",
+ "email": ""
+ },
+ "record": {
+ "MX": ["mail.wdh.gg"],
+ "TXT": "v=spf1 include:_spf.wdh.gg ~all"
+ }
+}
diff --git a/domains/mail.amaankazi.json b/domains/mail.amaankazi.json
new file mode 100644
index 0000000000..edf5434c86
--- /dev/null
+++ b/domains/mail.amaankazi.json
@@ -0,0 +1,11 @@
+{
+ "description": "Amaan Kazi's subdomain for mails",
+ "owner": {
+ "username": "Amaan-Kazi",
+ "email": "amaankazi1793@gmail.com"
+ },
+ "record": {
+ "MX": ["mx1.improvmx.com", "mx2.improvmx.com"],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
diff --git a/domains/mail.shymike.json b/domains/mail.shymike.json
new file mode 100644
index 0000000000..f6248a69bc
--- /dev/null
+++ b/domains/mail.shymike.json
@@ -0,0 +1,15 @@
+{
+ "owner": {
+ "username": "ImShyMike",
+ "email": ""
+ },
+ "record": {
+ "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/maintainers.json b/domains/maintainers.json
index eaff9566de..f305d1c744 100644
--- a/domains/maintainers.json
+++ b/domains/maintainers.json
@@ -1,14 +1,10 @@
{
"owner": {
- "username": "is-a-dev",
- "email": ""
+ "username": "is-a-dev",
+ "email": ""
},
"record": {
- "URL": "https://team.is-a.dev",
- "MX": [
- "mx1.improvmx.com",
- "mx2.improvmx.com"
- ],
- "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ "MX": ["mail.wdh.gg"],
+ "TXT": "v=spf1 include:_spf.wdh.gg ~all"
}
}
diff --git a/domains/mak448a.json b/domains/mak448a.json
index df469e3b75..2f9ad09408 100644
--- a/domains/mak448a.json
+++ b/domains/mak448a.json
@@ -1,7 +1,8 @@
{
"owner": {
"username": "mak448a",
- "email": "thracc448@gmail.com"
+ "email": "",
+ "discord": "295391820744228867"
},
"record": {
"CNAME": "mak448a.github.io"
diff --git a/domains/malik.json b/domains/malik.json
new file mode 100644
index 0000000000..38201e1f74
--- /dev/null
+++ b/domains/malik.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Gwilymm",
+ "email": "",
+ "discord": "236575185849810944",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.dMI0nCVMnrusA6rZGPce5iBkGP9OpJCD_TGzFTtS1Ko2rDuVGKx-MgjX-GOwprAfcVuyWAFkKg6_ojRzld7lZeZmOxJE8DkOCW7VC-jWVQpZxZPJJFzEsqw4C9HLVSg2jUuhmRst8JzfhLFIvYPxeFv9w9rwQabWWCa9Trj4w9QRqAdwCX-vaVBo53C2D_n_fneAkTyvTHanNbipUNd2B-DbSrVdutzt0Ke-s5CZwKihRHfGB5hRVN0Oo5jviOPN7J2z5Q_8ObKv96uE_Mg0v08hM-bC47e4JLI1YnMl9z1-yq-m4tnSdhct7oBFg8SXehYu5GdvHMGmco6mrB6U_g.FdEs8-xLPtiqUTvLnijCYg.Cp4jo4xgq_zwhJD7HYchf6WysPFYx7E5Nsk6fq1IS_GLnQaIm2sg2qojKEVj9WKM_W97cQp4hRz7GPwAshmlRFiVstyw5pguVksRfE4aUfE.aKO5_Shplf_wnBE5idRQZg"
+ },
+
+ "record": {
+ "A": ["149.56.15.68"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/manage.uptime.trung.json b/domains/manage.uptime.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/manage.uptime.trung.json
+++ b/domains/manage.uptime.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/maskduck.json b/domains/maskduck.json
index 81573292a4..f678bcdbc8 100644
--- a/domains/maskduck.json
+++ b/domains/maskduck.json
@@ -5,6 +5,6 @@
"discord": "_ngiu.a_"
},
"record": {
- "CNAME": "maskduck.github.io"
+ "CNAME": "maskduck.pages.dev"
}
}
diff --git a/domains/maxgiveawaybot.json b/domains/maxgiveawaybot.json
new file mode 100644
index 0000000000..5785233887
--- /dev/null
+++ b/domains/maxgiveawaybot.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "emmu123",
+ "email": "",
+ "discord": "863271170228486187",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.U15Blx01XkJwDCgPniImJMBtkqzEzQ_InjZmPuBx2h7RRMPnBgBqUDOgC6r4r0NCARF6iKa5FqP5dJkh2wP2d0fV3opIioWqApLGll1XQOTW5N14yTk3NO9B7Sqa2RVMB-xmxxrXSyILkDXO3WnF4k2JUdoIYJ2E_wd5Mo8CwQpkd3hIfzfroaoSUvmeIR_cDh3KLOoliP-1SFuNn_Yo4sqoFI0xifcQsXAEV9RLaQ5KuJQz9mv6RBeT8C13TxJIt51e4Bb_JXLMyVjz-jiFyuOTIY0Wt3e8ATgXXHovoJkDiP71xcEWA1jzWUGEWE1qC9bmseghh-Ii6_Z4ieWdKA.ddonB5m57O0yCwXStFhsiw.DjqWalsKwjt07LA_Q--Kxda7_hfxAwvgBHtGQphyj7VRCbVT3DBitJmTXvH0fUuJ4oqs4Lr0iWl7gbAi9zxJmKHXWuGJ7D-yDmSQRPwfJYE.RetwqAP8tPc9M0RpGyk26A"
+ },
+
+ "record": {
+ "CNAME": "emmu123.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/maxgreet.json b/domains/maxgreet.json
new file mode 100644
index 0000000000..64627b79c1
--- /dev/null
+++ b/domains/maxgreet.json
@@ -0,0 +1,15 @@
+{
+ "description": "Discord bot features.",
+ "repo": "https://emmu123.github.io/Max-Greet/",
+ "owner": {
+ "username": "emmu123",
+ "email": "aneenababu71901@gmail.com",
+ "discord": "863271170228486187",
+ "repo": "https://emmu123.github.io/Max-Greet/"
+ },
+
+ "record": {
+ "CNAME": "emmu123.github.io"
+ }
+ }
+
diff --git a/domains/maxgreetbot.json b/domains/maxgreetbot.json
new file mode 100644
index 0000000000..a184d15bad
--- /dev/null
+++ b/domains/maxgreetbot.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "emmu123",
+ "email": "aneenababu71901@gmail.com",
+ "repo": "https://emmu123.github.io/Max-Greet/"
+ },
+ "record": {
+ "CNAME": "emmu123.github.io"
+ }
+}
diff --git a/domains/mc.esb.json b/domains/mc.esb.json
index 3c58af7540..6a7b11a159 100644
--- a/domains/mc.esb.json
+++ b/domains/mc.esb.json
@@ -4,6 +4,6 @@
"email": "educatedsuddenbucket@gmail.com"
},
"record": {
- "CNAME": "educatedsuddenbucket.duckdns.org"
+ "CNAME": "bff5bd034c7fbbeafaaf626f505c8cc5.ipv4.tcpshield.com"
}
}
diff --git a/domains/mc.h3l.json b/domains/mc.h3l.json
new file mode 100644
index 0000000000..0145ec64c3
--- /dev/null
+++ b/domains/mc.h3l.json
@@ -0,0 +1,11 @@
+{
+ "description": "Documentation for is-a-dev",
+ "repo": "https://github.com/is-a-dev/docs",
+ "owner": {
+ "username": "gvalue-04",
+ "email": "vaporvault04@gmail.com"
+ },
+ "record": {
+ "CNAME": "on-clan.gl.at.ply.gg"
+ }
+}
diff --git a/domains/mc.json b/domains/mc.json
new file mode 100644
index 0000000000..a6716c4d6d
--- /dev/null
+++ b/domains/mc.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "EducatedSuddenBucket",
+ "email": "",
+ "discord": "1167825360151380032",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.LSD9kCcuVMiKKvlR-FO7qhiXahKbBdhrtM9wnZpaelPXdjLYvhVOOIGNqpus2aj8DuVjqu3gvaoKqOOCvlxZVe8O22Ef6JqCtu2HWMm4nZbXfpUyxpORZbSXuKg8JOIdX50Tm2Hrx3UwG4xjzbRAK96DUuew4l2qeIyEUrl1ycBpv5CEDPVQz6DN7v1IoWEZlYHup9x9zIjC4U-YR3zjXOTZPjyQul9fQFKXqy9oNsock4u0PTHCJ6q9aNG4WW2_n4gyGxYGXN5IdRxIsIIuXGif_W4u2FbjcSiWPvmN7FND-1jWnvwhYTK6fT0L5j2FJ7SVFanm1wi8Rg8AM2iG6A.oVOsZt9TwDae4njjIkcczw.p2DEVq4W4Wp1FbeEd50P0KQYEtxu_purdwrb5eskPNIhn-UU8V3V4MCcA0IFYSEtWGbjdHy3YtI6NXp_zTE1INyHslf9sBsr1zohyhTzqbHw3FYB_C7ZZioMg6jXrIy2.Yj7_I0i-HKwO8VBpDxpQeA"
+ },
+
+ "record": {
+ "CNAME": "bff5bd034c7fbbeafaaf626f505c8cc5.ipv4.tcpshield.com"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/mc.sono.json b/domains/mc.sono.json
index ad2aecda3b..09dcc7b081 100644
--- a/domains/mc.sono.json
+++ b/domains/mc.sono.json
@@ -4,6 +4,6 @@
"email": "sono.arbeit@gmail.com"
},
"record": {
- "CNAME": "time-nation.joinmc.link"
+ "CNAME": "f30e650e-c871-4081-bcac-de9791d361f3.shield.neoprotect.ovh"
}
}
diff --git a/domains/meywy.json b/domains/meywy.json
new file mode 100644
index 0000000000..87a6c494e7
--- /dev/null
+++ b/domains/meywy.json
@@ -0,0 +1,19 @@
+{
+ "description": "Portfolio",
+ "repo": "https://github.com/Meywy/meywy.github.io",
+ "owner": {
+ "username": "Meywy",
+ "email": "meywyy@gmail.com",
+ "discord": "923162990419791913"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com.",
+ "mx2.improvmx.com."
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all",
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+}
diff --git a/domains/milu.json b/domains/milu.json
new file mode 100644
index 0000000000..20fdbd50fc
--- /dev/null
+++ b/domains/milu.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "milanmarton",
+ "email": "",
+ "discord": "312899549670801410"
+ },
+
+ "record": {
+ "CNAME": "milu-eor.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/mjclavillas.json b/domains/mjclavillas.json
new file mode 100644
index 0000000000..2b335e7754
--- /dev/null
+++ b/domains/mjclavillas.json
@@ -0,0 +1,10 @@
+{
+ "description": "",
+ "owner": {
+ "username": "mjclavillas",
+ "email": "mjdc1337@gmail.com"
+ },
+ "record": {
+ "CNAME": "mjclavillas.github.io"
+ }
+}
diff --git a/domains/mjdc.json b/domains/mjdc.json
new file mode 100644
index 0000000000..2b335e7754
--- /dev/null
+++ b/domains/mjdc.json
@@ -0,0 +1,10 @@
+{
+ "description": "",
+ "owner": {
+ "username": "mjclavillas",
+ "email": "mjdc1337@gmail.com"
+ },
+ "record": {
+ "CNAME": "mjclavillas.github.io"
+ }
+}
diff --git a/domains/mohdjariullah.json b/domains/mohdjariullah.json
new file mode 100644
index 0000000000..b9abd94bb9
--- /dev/null
+++ b/domains/mohdjariullah.json
@@ -0,0 +1,12 @@
+{
+ "description": "Personal Portfolio",
+ "repo": "https://github.com/Mohdjariullah/portfolio1/",
+ "owner": {
+ "username": "mohdjariullah",
+ "email": "mohdjariullah@gmail.com",
+ "twitter": "@mohdjariullah"
+ },
+ "record": {
+ "CNAME": "mohdjariullah.github.io"
+ }
+}
diff --git a/domains/mongodb.trung.json b/domains/mongodb.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/mongodb.trung.json
+++ b/domains/mongodb.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/mrdiamond.json b/domains/mrdiamond.json
index a6a93fe3a3..691b44ea17 100644
--- a/domains/mrdiamond.json
+++ b/domains/mrdiamond.json
@@ -4,6 +4,6 @@
"email": "drewratner27@gmail.com"
},
"record": {
- "A": ["129.146.158.220"]
+ "CNAME": "mrdiamond.pages.dev"
}
}
diff --git a/domains/mxritz.json b/domains/mxritz.json
new file mode 100644
index 0000000000..c36cab614e
--- /dev/null
+++ b/domains/mxritz.json
@@ -0,0 +1,10 @@
+{
+ "description": "Personal Portfolio",
+ "owner": {
+ "username": "Moritz-Deiaco",
+ "email": "moritz.deiaco@gmail.com"
+ },
+ "record": {
+ "CNAME": "proxy.host.bytes.wtf"
+ }
+}
diff --git a/domains/mystic.trung.json b/domains/mystic.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/mystic.trung.json
+++ b/domains/mystic.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/mzn.json b/domains/mzn.json
new file mode 100644
index 0000000000..45d33185bf
--- /dev/null
+++ b/domains/mzn.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "mznking",
+ "email": "maazinking23@gmail.com"
+ },
+ "record": {
+ "CNAME": "mzn-king.onrender.com"
+ }
+}
diff --git a/domains/mzykin.json b/domains/mzykin.json
new file mode 100644
index 0000000000..b8fdcf5f95
--- /dev/null
+++ b/domains/mzykin.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "maxzkn",
+ "email": "maks.zyk@gmail.com"
+ },
+ "record": {
+ "CNAME": "mzykin.com"
+ }
+}
diff --git a/domains/nam.json b/domains/nam.json
deleted file mode 100644
index b581e140ea..0000000000
--- a/domains/nam.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "chadcat7",
- "email": "namishpande2007@gmail.com"
- },
- "record": {
- "CNAME": "chadcat7.github.io"
- }
-}
diff --git a/domains/namra.json b/domains/namra.json
new file mode 100644
index 0000000000..d93d64a8de
--- /dev/null
+++ b/domains/namra.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "njxixi",
+ "email": "jnamra.nj@gmail.com"
+ },
+ "record": {
+ "CNAME": "njxixi.github.io"
+ }
+}
diff --git a/domains/neoapps.json b/domains/neoapps.json
new file mode 100644
index 0000000000..d5f3eea2a9
--- /dev/null
+++ b/domains/neoapps.json
@@ -0,0 +1,10 @@
+{
+ "description": "NEOAPPS",
+ "owner": {
+ "username": "neoapps-dev",
+ "email": "asd22.info@gmail.com"
+ },
+ "record": {
+ "URL": "https://neoapps-dev.github.io/web"
+ }
+}
diff --git a/domains/nexfilms.json b/domains/nexfilms.json
new file mode 100644
index 0000000000..a17be18d1e
--- /dev/null
+++ b/domains/nexfilms.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "nexos20levrai",
+ "email": "",
+ "discord": "610847328680673302"
+ },
+
+ "record": {
+ "A": ["5.181.187.182"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/nexflix.json b/domains/nexflix.json
new file mode 100644
index 0000000000..a17be18d1e
--- /dev/null
+++ b/domains/nexflix.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "nexos20levrai",
+ "email": "",
+ "discord": "610847328680673302"
+ },
+
+ "record": {
+ "A": ["5.181.187.182"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/nexproxymanager.json b/domains/nexproxymanager.json
new file mode 100644
index 0000000000..a17be18d1e
--- /dev/null
+++ b/domains/nexproxymanager.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "nexos20levrai",
+ "email": "",
+ "discord": "610847328680673302"
+ },
+
+ "record": {
+ "A": ["5.181.187.182"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/nexsphere.json b/domains/nexsphere.json
deleted file mode 100644
index f08b7b4041..0000000000
--- a/domains/nexsphere.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "nexos20levrai",
- "email": "nexos.dons@gmail.com"
- },
- "record": {
- "A": ["146.19.168.239"]
- }
-}
diff --git a/domains/ngvgb.json b/domains/ngvgb.json
new file mode 100644
index 0000000000..f663a706a9
--- /dev/null
+++ b/domains/ngvgb.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "NgVGB-Workspace",
+ "email": "",
+ "discord": "905671220333264966",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.PRdSIXpK3bfSVItlR4zG6y6YC0KwWF8fALLRJoKYHEiMUwTFQvi48kgvzveCVwUBuYJWQBMCYWBVstMTtR32JBnpQFMNVUnh3m3sFWKIiuydQL7JPzimMLZQ9WvTtEl3AUF-5DZaH_uX4_2CSxs-c0JfEG7n0vnjKRdOZ-31wtitEAvUolUiKcwoQKX6clvSiNN3l9pSVhP3ufyt9JN_caHya1xQrk8X9Ijaf9EYctXZFwXaf4KUJ44QcJZ1erfKh6FykNUtkkO0GV4V1XZlYZS8TaETta5k7GR3fJi_V9MKSCtiR5dG15KARX485akLI5ZYqqcRp7fH2xaLEOQCCQ.3pFuR0GZ8XBQGaFFIpFv9w.xuvztR8HsOO6zzPNpo_8sDQJimmQj79swKQqYi5blxu7Cpmdf_sLVw0SNmCCOVBPJJ-tyexWUEA7iXk36cDiB_iF9mkdb14Mwegb-0zFEQg.fDszk-8TV4Idc_CIIKOa_A"
+ },
+
+ "record": {
+ "CNAME": "ngvgb-workspace.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/nothazz.json b/domains/nothazz.json
new file mode 100644
index 0000000000..4ed62c8745
--- /dev/null
+++ b/domains/nothazz.json
@@ -0,0 +1,11 @@
+{
+ "description": "My personal site",
+ "repo": "https://github.com/nothazz/nothazz.github.io",
+ "owner": {
+ "username": "nothazz",
+ "email": "hazz73963@gmail.com"
+ },
+ "record": {
+ "CNAME": "nothazz.github.io"
+ }
+}
diff --git a/domains/nulitas.json b/domains/nulitas.json
new file mode 100644
index 0000000000..45657366b3
--- /dev/null
+++ b/domains/nulitas.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "nulitas",
+ "email": "ndrakita@gmail.com",
+ "discord": "@nulitas"
+ },
+
+ "record": {
+ "CNAME": "nulitas.github.io"
+ }
+}
diff --git a/domains/nvrxstdwrth.json b/domains/nvrxstdwrth.json
new file mode 100644
index 0000000000..fc107f74ba
--- /dev/null
+++ b/domains/nvrxstdwrth.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "HIlight3R",
+ "email": "",
+ "discord": "632272741000544259",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.WwWL6rfhXZA0dVr8hvLSkevzpSY1ETrC-HjSa2C7RLxujUUwlyIwjhugowOuLMIGn2j_nJLy0vmFf-NrekykpLpsJdbQ5KeeW-YnnGL5Oj9waXYeBqofQ9HMGNERSmMdZig6gkRXcGu_mSbkqByt6Hye4StQ_5OzUOw5-IRnhZEWZmdW92rsiHbPb1FxQZ_0JzO3pusOwpIm3du9SbOLOS8EYp5wCjxJJQWIhQVbbf2zz38-kklX5XkL9aIJgyMVXdPUN0OwWG3zkVuAsofQamwsT9PM3cmNcij4v4VDRy23hkViQuBSkExUW5-GANGHsgmvULxc2XLt-34FPPpcGQ.o_hc0F4i2CbgXEizGhwbfA.Gq3lOGxqc_cmX5sQ_Qh1iZ_GXeuSPmnjhGimjVn5gjQXMBVcgn7EFWtEmNjMgvZ84GXfUTVdSjGSI1YIZf0eY6rizgkVojxDgrop0SSoAdvtHjcTxS-tlO9oUQxH5fa9.T5TSx4g4kGrd6g8KwX_T-g"
+ },
+
+ "record": {
+ "A": ["65.21.61.55"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/o.json b/domains/o.json
new file mode 100644
index 0000000000..b08792abe0
--- /dev/null
+++ b/domains/o.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "omsenjalia",
+ "email": "om@maintainers.is-a.dev"
+ },
+ "record": {
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
diff --git a/domains/ofer.json b/domains/ofer.json
new file mode 100644
index 0000000000..a2ee9c1d61
--- /dev/null
+++ b/domains/ofer.json
@@ -0,0 +1,11 @@
+{
+ "description": "Ofer Sadan",
+ "repo": "https://github.com/ofersadan85/portfolio",
+ "owner": {
+ "username": "ofersadan85",
+ "email": "ofersadan85@gmail.com"
+ },
+ "record": {
+ "URL": "https://ofersadan85.github.io/portfolio/"
+ }
+}
diff --git a/domains/ohdy.json b/domains/ohdy.json
index 52e6b9bdd8..a837e86bd8 100644
--- a/domains/ohdy.json
+++ b/domains/ohdy.json
@@ -4,6 +4,14 @@
"email": "ohdy518@gmail.com"
},
"record": {
- "CNAME": "ohdy518.pages.dev"
+ "A": [
+ "172.66.47.126",
+ "172.66.44.130"
+ ],
+ "MX": [
+ "mx1.forwardemail.net",
+ "mx2.forwardemail.net"
+ ],
+ "TXT": "forward-email=ohdy518@gmail.com"
}
}
diff --git a/domains/om.json b/domains/om.json
index b8d18b76e8..b08792abe0 100644
--- a/domains/om.json
+++ b/domains/om.json
@@ -1,7 +1,7 @@
{
"owner": {
- "username": "TerraPlayz",
- "email": "omsenjalia+github@gmail.com"
+ "username": "omsenjalia",
+ "email": "om@maintainers.is-a.dev"
},
"record": {
"MX": [
diff --git a/domains/overshifted.json b/domains/overshifted.json
new file mode 100644
index 0000000000..9cb6180476
--- /dev/null
+++ b/domains/overshifted.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "OverShifted",
+ "email": "prowidgs@gmail.com"
+ },
+ "record": {
+ "CNAME": "overshifted.github.io"
+ }
+}
diff --git a/domains/owl.json b/domains/owl.json
index ad32c30117..8a953d3ef2 100644
--- a/domains/owl.json
+++ b/domains/owl.json
@@ -4,6 +4,6 @@
"email": ""
},
"record": {
- "CNAME": "ksk8c0w.wdh.app"
+ "CNAME": "p2pb.dev"
}
}
diff --git a/domains/p.json b/domains/p.json
new file mode 100644
index 0000000000..6f9d794832
--- /dev/null
+++ b/domains/p.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "Priyansxu",
+ "email": "cloudypriyanshu@gmail.com"
+ },
+ "record": {
+ "CNAME": "pusxoo.onrender.com"
+ }
+}
diff --git a/domains/p2m.json b/domains/p2m.json
new file mode 100644
index 0000000000..b7e29cdbea
--- /dev/null
+++ b/domains/p2m.json
@@ -0,0 +1,13 @@
+{
+ "description": "Domain name for me and my friends for our french minecraft server",
+ "repo": "https://github.com/Philipou/register",
+ "owner": {
+ "username": "Philipou",
+ "email": "philippe.lestrohan@les4vents.eu"
+ },
+ "record": {
+ "A": [
+ "91.224.149.29"
+ ]
+ }
+}
diff --git a/domains/pancystudio.json b/domains/pancystudio.json
new file mode 100644
index 0000000000..f629e97b11
--- /dev/null
+++ b/domains/pancystudio.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "ImTurbis",
+ "email": "",
+ "discord": "711329342193664012",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.YzG5hvJGZpP7QEGLttKRRJ3aa_voQNqUebTs1wZb7kD-XVzdggqVkYzmW9nVppmqunMUZ9PumQGb_2LdjaB1UskfrxRb7z0NXdycFgZ2n44ADDhAFaYruOTLznglg02ni5htnfwmQSJtPjSMRa65foPNBGCqQFdQYCsx0DaD84havLlCvHMUdKZOgaJWgO75kfaf2toO7cbK_EXl17EN53gH54zixIKMNwSi_Ug8mEScECN_HJ7cRM5yu91IVdyQiwxemT5Ze01bAl6KmlCmJWcnO2-9qqvuv82K2WxHoKlLU-nmI77jJ_vr0w6rkxYeb1zW28LV6EKKCKfU1oYAog.B6Ik8FFPJoBvR9YZCw3dMw.xyWEoyFUZwTLIGiacwhtx0k3LJgQEd3vxuHZ9z9eAAHtSfJzeTzWvxCLiDnJ4Qwq00sDbfR0PNzvGBc9IoI002h0pBnAwp9cMDZHZk5biGo.enRsEf6i-7nlTeVgZSgGZA"
+ },
+
+ "record": {
+ "A": ["69.30.249.53"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/panel.xrap1dx.json b/domains/panel.xrap1dx.json
new file mode 100644
index 0000000000..e72f1038b6
--- /dev/null
+++ b/domains/panel.xrap1dx.json
@@ -0,0 +1,14 @@
+{
+ "description": "making my cdn!!!",
+ "repo": "https://github.com/xrap1dx?tab=repositories",
+ "owner": {
+ "username": "xrap1dx",
+ "discord": "xrap1dx",
+ "email": ""
+ },
+ "record": {
+ "A": [
+ "69.30.249.53"
+ ]
+ }
+}
diff --git a/domains/piker.json b/domains/piker.json
new file mode 100644
index 0000000000..934c5bc40d
--- /dev/null
+++ b/domains/piker.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "Piker98988",
+ "email": "piker98@tutanota.com"
+ },
+
+ "record": {
+ "CNAME": "pikerdevdomain.pages.dev"
+ }
+}
diff --git a/domains/plague.json b/domains/plague.json
index ded2d166a0..e7cbda39cf 100644
--- a/domains/plague.json
+++ b/domains/plague.json
@@ -1,12 +1,12 @@
{
"description": "My souper personal domain.",
- "repo": "https://github.com/pl4g/pl4g.github.io",
+ "repo": "https://github.com/pl4gue/pl4gue.github.io",
"owner": {
- "username": "pl4g",
+ "username": "pl4gue",
"email": "viniciuslucianocardoso@gmail.com",
"discord": "plague🥣#8408"
},
"record": {
- "CNAME": "pl4g.github.io"
+ "CNAME": "pl4gue.github.io"
}
}
diff --git a/domains/playwithbmr.json b/domains/playwithbmr.json
new file mode 100644
index 0000000000..c654b25a0c
--- /dev/null
+++ b/domains/playwithbmr.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "RXHGGAMES",
+ "email": "syedyaseerali854@gmail.com"
+ },
+ "record": {
+ "TXT": "dh=cfc3889fbceb43413a724b4e1358c080e2644716"
+ }
+}
diff --git a/domains/pog.json b/domains/pog.json
new file mode 100644
index 0000000000..0e948dbeec
--- /dev/null
+++ b/domains/pog.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "PogMaster9001",
+ "email": "",
+ "discord": "1190052608346435597"
+ },
+
+ "record": {
+ "CNAME": "projectdevs.net"
+ }
+ }
+
diff --git a/domains/pogmaster.json b/domains/pogmaster.json
new file mode 100644
index 0000000000..0e948dbeec
--- /dev/null
+++ b/domains/pogmaster.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "PogMaster9001",
+ "email": "",
+ "discord": "1190052608346435597"
+ },
+
+ "record": {
+ "CNAME": "projectdevs.net"
+ }
+ }
+
diff --git a/domains/pogmaster9001.json b/domains/pogmaster9001.json
new file mode 100644
index 0000000000..0e948dbeec
--- /dev/null
+++ b/domains/pogmaster9001.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "PogMaster9001",
+ "email": "",
+ "discord": "1190052608346435597"
+ },
+
+ "record": {
+ "CNAME": "projectdevs.net"
+ }
+ }
+
diff --git a/domains/pokey.json b/domains/pokey.json
new file mode 100644
index 0000000000..d5b90541ee
--- /dev/null
+++ b/domains/pokey.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Pokeylooted",
+ "email": "",
+ "discord": "469808869426724865",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.YwtcHwpMZkKBYbgs0mxj-7NxjIGcUOrXLTJmxRNtVUAENnuLfqfoGn0-l4CeYdFvYSxBYv2ElPgXrvmfynv5w7bUclrf8k7nc2EEKaXgddisH4nHH1EhCDZ3S7N3wVA15MN4PwBehgRJkvNU-ckVpyQ1vMzpXhbeXz8UErfp039VViBrvY5S0V-n43CkDSf3iqtsa9sMDaWh9-I3oYXeMKqCyx-OXBhaY8w9R9f6V4rthWdwu2--gYe1gqEoV29I16wXRVZqpzHgecZV8rmcamLUZUkWSYdrG7ibBjkmzn_1j8Pxe-OBWLtuVpHUnX_PYwour7OPajWzXkAPjIoQAQ.sdtAwCEcrzrn3SV-e277bA.q73Rr_IE9cxfke6WUU-HessDBZZdhUOs9Ga7IK4bWZ1ewgtV7pLzaGDoe8_ukVHf-oo5Ya-QEJaGLglkvBK1IQWUKPpSW9rxzCQSMCpxCkg.9-P9cZ5_qyjMrJ8XMP2-Pg"
+ },
+
+ "record": {
+ "CNAME": "pokeylooted.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/protoshock.gizzy.json b/domains/protoshock.gizzy.json
new file mode 100644
index 0000000000..87bbe1f5b3
--- /dev/null
+++ b/domains/protoshock.gizzy.json
@@ -0,0 +1,12 @@
+{
+ "description": "protoshock.gizzy.is-a.dev",
+ "owner": {
+ "username": "GizzyUwU",
+ "email": "nerop455@gmail.com"
+ },
+ "record": {
+ "A": [
+ "69.197.135.202"
+ ]
+ }
+}
diff --git a/domains/proxy.trung.json b/domains/proxy.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/proxy.trung.json
+++ b/domains/proxy.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/pvyas.json b/domains/pvyas.json
new file mode 100644
index 0000000000..4d54cf28e7
--- /dev/null
+++ b/domains/pvyas.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "parthvyas7",
+ "email": "",
+ "discord": "505731689788473347",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.sf0jfkbSFi9mJlIHKGJyHq6aLTTeihBVr4C24pYoXyVydhbwXIsvMjzl6EplTvtAdaaTKAeA2Mvda4Q4_FrbsBdkX3Qd56ByRc4uuLHj-IX_-2W4gJ6EFUZ67Fqx1ePQIZ50SpZw9zLZBhXmExF0bOd3c9xJaf081kgqISRjxYlfy0ITaXjvly9ye2CDAgFN-oyKtRAyoolwiGCywfl-njl-oix02Ezc3EWS0zWVTPIjTyGoAxeeexfobLV0wWQa9P27GsnKQrTfpmmWxWlPLLfUlKmotW2C9bEPWSu5dEWhvCnQDry5tJ2m9IHsoSy27YRiqQLLo-WeQNF7CU9tLg.gf0byOghlGoqNnuHgld42A.EddL6PqoWvCcmqTte698ZKtTyyt_8sqMYIvVciH4GSSbOPxsKtRZkYE73QdBSC-tC0CwX2-nxsAGOSff4VFUSCl7S8p-s8YEmLe2-0g21QmPwyXGVwi1lAMcAY0GODf4.VypDGE8qp8W364yhOfkfNA"
+ },
+
+ "record": {
+ "CNAME": "parthvyas7.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/qrcode.json b/domains/qrcode.json
new file mode 100644
index 0000000000..f721ee5223
--- /dev/null
+++ b/domains/qrcode.json
@@ -0,0 +1,12 @@
+{
+ "description": "My QRCode Webpage Project",
+ "owner": {
+ "username": "isobarsmustang0g",
+ "email": "isobars.mustang_0g@icloud.com"
+ },
+ "record": {
+ "A": [
+ "103.97.126.29"
+ ]
+ }
+}
diff --git a/domains/radim.json b/domains/radim.json
new file mode 100644
index 0000000000..1d2237fd37
--- /dev/null
+++ b/domains/radim.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "radim-codes",
+ "email": "",
+ "discord": "1136622247918972968",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.ALR6-kSY_1xcCXWeEFcN3MljHGs64i5CXNdAfaJjL76vrWcIdrbQpq1pxkJ5IUivvK6kO3glLYwGFY2aIMUAUOrNqP6kY8jwGz_jocoI6GsZrNMFG-iivMJH6KfMVflPxsi7S5Gj1h16SodeCYkSY75i_BFRzSuK2R08YAVogKYG0DCjnBy4vPmwGpDBzgvlzC1xcB3cp0xAiSAWGy1_yJ2AhSejJvJLOJjnduJKssiDQTStoh2pFJmFcegTg-d3XyEhPG2CLjlETMy5scK_7TJhfm2B_j7_WoGeqx9bYnhvezq2UL98_SApjQHYW0RqCvc2H8hDyqzz_mUSjqzdjw.twUMfQDP1UG0sSdnIjzl0Q.UlPnydKIKETIKTLQ0FDmnL_JEzfVezFXc3KkY5_Sn3aXpC0GOOhddolmTPmrxU7UX71wlhPJWcDQVVjIzf41IoN0gLSbq_T0GMuQbwq-kp8.v8huc9AakxQ0ROz0eTxxtA"
+ },
+
+ "record": {
+ "CNAME": "radim-codes.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/rblx.json b/domains/rblx.json
new file mode 100644
index 0000000000..fd934b9006
--- /dev/null
+++ b/domains/rblx.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "r-b-l-x",
+ "email": "178317246+r-b-l-x@users.noreply.github.com"
+ },
+ "record": {
+ "CNAME": "r-b-l-x.github.io"
+ }
+}
diff --git a/domains/register-bot.json b/domains/register-bot.json
index c937b2ab17..8a953d3ef2 100644
--- a/domains/register-bot.json
+++ b/domains/register-bot.json
@@ -4,6 +4,6 @@
"email": ""
},
"record": {
- "A": ["217.174.245.249"]
+ "CNAME": "p2pb.dev"
}
}
diff --git a/domains/rias.json b/domains/rias.json
new file mode 100644
index 0000000000..4fab68481b
--- /dev/null
+++ b/domains/rias.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "RiasZz",
+ "email": "",
+ "discord": "245028766387142656",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Edl4jRGMJSUFF14Y4qub1zHhEj-SrmXcG-eVgF6P_EsOjhgl6e5CDShlDkmMTAkpZBbT5s66KuSrDdmMGAJqgYP4aql0FF5cnj5yX5bM-AZnB_fzi1T1iymqiZvtJEYmKuYO-Djkge0pC5JmgVPFQGQj--AIeFbwuyQts19PrDci_kXquX_dKnXzP7_S61zM1vygbq-YcjnQw8abfRSZ1hoKVeZmDcbFi5KhxDWdgkiToyzOk5gBQ52_IwfzJesWeOtFXwiIJS7NwkIMKS70V9lu5a1C87aab9919ocqWsElrJHCdmQOIwSzmu36TIt51_RvjWsfkPjAtbrBWCiECw.R1diEo6UhieiMS9g_GiqZw.dgoN9oQuZxXM6aanZA9Gkh3Neb-hDbGh_7_vBlf79dvln503TEHDrCN-skUH8r3_uSVMSnSodFQu7rqHJa0z8CV3efig1zj2MZ2YYXMQKlc.I5t1GaMcmY2kqWqAO9yVwg"
+ },
+
+ "record": {
+ "CNAME": "riass.ir"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/rishub.json b/domains/rishub.json
index ac68707247..3b584a7183 100644
--- a/domains/rishub.json
+++ b/domains/rishub.json
@@ -4,6 +4,6 @@
"email": "itsrishub@gmail.com"
},
"record": {
- "URL": "https://rishub.cc"
+ "CNAME": "hashnode.network"
}
}
diff --git a/domains/rocky.json b/domains/rocky.json
index bd537b18b0..121ad2994e 100644
--- a/domains/rocky.json
+++ b/domains/rocky.json
@@ -4,6 +4,6 @@
"email": "prodefix.ytb@gmail.com"
},
"record": {
- "CNAME": "rockybots.betteruptime.com"
+ "CNAME": "statuspage.betteruptime.com"
}
}
diff --git a/domains/s.json b/domains/s.json
new file mode 100644
index 0000000000..7d087ad42f
--- /dev/null
+++ b/domains/s.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "Smartlinuxcoder",
+ "email": "smartcoder@linuxmail.org",
+ "discord":"987972818341888021"
+ },
+ "record": {
+ "CNAME": "proxytwo.smartlinux.xyz"
+ }
+}
diff --git a/domains/sahil.json b/domains/sahil.json
new file mode 100644
index 0000000000..8f3a82f32c
--- /dev/null
+++ b/domains/sahil.json
@@ -0,0 +1,12 @@
+{
+ "description": "For Portfolio",
+ "repo": "https://github.com/SahilShidruk/My-Portfolio",
+ "owner": {
+ "username": "SahilShidruk",
+ "discord": "1095900069095555133",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "sahilshidruk.github.io"
+ }
+}
diff --git a/domains/saxophone.json b/domains/saxophone.json
index 46ae676045..27aed633fc 100644
--- a/domains/saxophone.json
+++ b/domains/saxophone.json
@@ -1,17 +1,17 @@
{
- "description": "saxophones are the best instrument",
- "owner": {
- "username": "saxophone-guy",
- "email": "itsarchit@keemail.me"
- },
- "record": {
- "A": [
- "216.24.57.1"
- ],
- "MX": [
- "mx1.forwardemail.net",
- "mx2.forwardemail.net"
- ],
- "TXT": "forward-email=itsarchit@keemail.me"
- }
+ "description": "saxophones are the best instrument",
+ "owner": {
+ "username": "saxophone-guy",
+ "email": "itsarchit@keemail.me"
+ },
+ "record": {
+ "A": [
+ "216.24.57.1"
+ ],
+ "MX": [
+ "mx1.forwardemail.net",
+ "mx2.forwardemail.net"
+ ],
+ "TXT": "forward-email=itsarchit@keemail.me"
+ }
}
diff --git a/domains/sea-horse-with-really-long-neck-and-fabulous-legs.json b/domains/sea-horse-with-really-long-neck-and-fabulous-legs.json
new file mode 100644
index 0000000000..171d71f469
--- /dev/null
+++ b/domains/sea-horse-with-really-long-neck-and-fabulous-legs.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "sea-horse-with-really-long-neck-and-fabulous-legs.pages.dev"
+ }
+}
diff --git a/domains/secure.furqan.json b/domains/secure.furqan.json
new file mode 100644
index 0000000000..31ca794803
--- /dev/null
+++ b/domains/secure.furqan.json
@@ -0,0 +1,9 @@
+{
+"owner": {
+ "username": "rediffurqan",
+ "email": "frqnlove8765@gmail.com"
+ },
+ "record": {
+ "CNAME": "phonesme.onrender.com"
+ }
+}
diff --git a/domains/sewt.json b/domains/sewt.json
new file mode 100644
index 0000000000..62c22cdafd
--- /dev/null
+++ b/domains/sewt.json
@@ -0,0 +1,22 @@
+{
+ "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": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all",
+ "A": [
+ "185.199.108.153",
+ "185.199.109.153",
+ "185.199.110.153",
+ "185.199.111.153"
+ ]
+ }
+ }
diff --git a/domains/sf.json b/domains/sf.json
new file mode 100644
index 0000000000..cef2b6bb98
--- /dev/null
+++ b/domains/sf.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "XikiZxGS",
+ "email": "",
+ "discord": "1015654462334971925",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Zh0wnCQid9C4pOjptUVh6ESkNEKZxjJadK8auOvitr7Rx67nfqb_orGsPr9hXGdfOGzLcR1sB3v5KrB-nbqUQUUgGjs9zaKjwi99S_pwZgU3oi9cY2TePWNxM1ZvdCKptiR3C1CMtDbyPOpvsvRSEGyHZtOzdcrTV4OpnR2Hi7X7nD37wR8ZjCS60YhyPPlb8HUr6_Aq2o2RItJUYwZVB1t7BRWdHL-tYwbtZXWiOER6D1nCSj86AT3rKILr5DMbEvh1SOQIJ3pf5D9HtgIW3DgkyrutOEhxn4A8xzytPi-1api0AJJvpGv3Xaj63IttB5meuivJqqrtmL86dZxABA.hh7QLO4KsuZ7-zTiHi8GaA.6EDptXq34bfUr-OXUGTWkq1LTaLq-NNgU2EXgd-4GngxX1QzrxvUenF4wsn6DmQ1yPnmnIGdczioMxdsYk0JyUYbpHaCvOsW-xyH4a_EiMk.YYLgMoT8Z_FUJtmf9ImfRw"
+ },
+
+ "record": {
+ "CNAME": "xikizxgs.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/shy.json b/domains/shy.json
new file mode 100644
index 0000000000..1c35eb032b
--- /dev/null
+++ b/domains/shy.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "ImShyMike",
+ "email": "",
+ "discord": "582648583635992622"
+ },
+
+ "record": {
+ "CNAME": "edge.redirect.pizza"
+ }
+ }
+
diff --git a/domains/shymike.json b/domains/shymike.json
new file mode 100644
index 0000000000..71a549273c
--- /dev/null
+++ b/domains/shymike.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "ImShyMike",
+ "email": "",
+ "discord": "582648583635992622"
+ },
+
+ "record": {
+ "CNAME": "imshymike.github.io"
+ }
+ }
+
diff --git a/domains/skduck.json b/domains/skduck.json
index aee4880dbb..93a1a34e6e 100644
--- a/domains/skduck.json
+++ b/domains/skduck.json
@@ -1,8 +1,8 @@
{
"description": "my em@il forwarder",
"owner": {
- "username": "MaskDuck",
- "email": "m@skduck.is-a.dev",
+ "username": "mAskDucK",
+ "email": "",
"discord": "MaskDuck#1337",
"twitter": "MaskDuck1",
"reddit": "u/maskduck",
diff --git a/domains/sly.json b/domains/sly.json
new file mode 100644
index 0000000000..038909964e
--- /dev/null
+++ b/domains/sly.json
@@ -0,0 +1,16 @@
+{
+ "description": "Domain name for my personal portfolio website",
+ "repo": "https://github.com/SlyBouhafs/slybouhafs.github.io",
+ "owner": {
+ "username": "SlyBouhafs",
+ "email": "khmedj+github@gmail.com"
+ },
+ "record": {
+ "A": ["164.92.183.234"],
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ }
+}
diff --git a/domains/smartlinuxcoder.json b/domains/smartlinuxcoder.json
index 8034acf7f4..d6ae1c7a09 100644
--- a/domains/smartlinuxcoder.json
+++ b/domains/smartlinuxcoder.json
@@ -4,6 +4,6 @@
"email": "smartcoder@linuxmail.org"
},
"record": {
- "CNAME": "smartlinuxcoder.github.io"
+ "CNAME": "proxytwo.smartlinux.xyz"
}
}
diff --git a/domains/snbhowmik.json b/domains/snbhowmik.json
new file mode 100644
index 0000000000..ee3879be0c
--- /dev/null
+++ b/domains/snbhowmik.json
@@ -0,0 +1,15 @@
+{
+ "description": "A Portfolio site for my Academic Career",
+ "repo": "https://github.com/snbhowmik/portfolio",
+ "owner": {
+ "username": "snbhowmik",
+ "linkedin": "https://www.linkedin.com/in/snbhowmik/",
+ "reddit": "https://www.reddit.com/user/snbhowmik/",
+ "email": "snbhowmikac@proton.me"
+ },
+ "record": {
+ "A": [
+ "75.2.60.5"
+ ]
+ }
+}
diff --git a/domains/soestin.json b/domains/soestin.json
new file mode 100644
index 0000000000..ebbbce05dc
--- /dev/null
+++ b/domains/soestin.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "soestin",
+ "email": "",
+ "discord": "769813729599553567",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Eq_I4GOjlOB5tFdw0gihpb-s5mNrdbVcGGgjqD9T08EXuXhaCt9w-dzK8H12VZdP_PRzdgJe_nMkm5B6qfUrfcr9D1VdfCr_AsxPw39fH3hxmopIRJojj_t0irp-yw6rXC9wTMqdhaqQ1sEs_38sZV5Hnr4UMsuo3QIPimuDFecrVIreelu8yQzf2c0JmOEST4os6iwlK0Xx4HN_sSa2BxA_xddtLsn1LROSeqlba6r4CXfJxVmFEfqcXuW510-yVhg1O6wIVPz5la9FTgK12HYvx3qDnYnC3cJ5V1few5rJP4OeIby6dte7vtx7zuo3vbKkClFojc1Q9j1UmMReDQ.3I8N4rDWvBuPjEWKvognUA.OrICUOylQgkjUUekVYAQpHdJ5v4L68eAC6X69zwPUEZqRe33Xrjsk0OtCWfm-JDleiEIhUxsAuP_R3IMxTRwQA.cguBkKWaJpafBZkI9uKbOg"
+ },
+
+ "record": {
+ "CNAME": "soestin.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/somerand0mcat.json b/domains/somerand0mcat.json
new file mode 100644
index 0000000000..8b7bf443c1
--- /dev/null
+++ b/domains/somerand0mcat.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "somerand0mcat",
+ "email": "",
+ "discord": "1135918173959491595",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.h9JvX9g-xh8PiBroR0hXIZz17OveuKLPcbid_BhW-ZCQIzx7pWvMV8ha2ozhcHTDiuDi-m3a2Ve1yKywVfx02Vo192JpjSFlTtngTyafnPQDjSeD0x5VTqiwoHb1MA_bH9V5aXfyN3kGL9UrI3jiJVaESCvIaOKdXpWKVrbygy-Dn-AiviBcU95m-eLKcz7PN7ksKOJT_XnvOH38H4WGLpyXUGPTQZGn8XZb2H8lhj01cEZ3qFHlFLt7WFTVIFAC-i67ItX57BDBcS4LrjsAkBC46CLAwpsu9O_o4tMd-z9JBnUVOSGhTzfCSKcNw4FTvNJr4wbQ3EBO_C7nRc1A9w.-7hDX5vHvDvx3zWEsZPE6w.wCq8m-LKtwlJY10BjYmoN82763IjMNgKupRU7JFYk7Os_CGE-QoT2MkfhAiBEeOXs5EJcXFhIS6ZZixQjbtIdxGlYNgUPP-4wTpuFPdgwgm8JHKrk6z2FX5SMiDS_P2ZvBAYpaRRB6vwqhxESrnceQ.Rsy2vQVeH3fjYX0rJTpqtw"
+ },
+
+ "record": {
+ "CNAME": "somerand0mcat.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/spotify.trung.json b/domains/spotify.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/spotify.trung.json
+++ b/domains/spotify.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/sq.json b/domains/sq.json
new file mode 100644
index 0000000000..038ca396cf
--- /dev/null
+++ b/domains/sq.json
@@ -0,0 +1,12 @@
+{
+ "description": "sqec's website",
+ "owner": {
+ "username": "SquareScreamYT",
+ "repo": "https://github.com/SquareScreamYT",
+ "discord": "918475812884344852",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "squarescreamyt.github.io"
+ }
+}
diff --git a/domains/starshine.json b/domains/starshine.json
new file mode 100644
index 0000000000..98cba1276c
--- /dev/null
+++ b/domains/starshine.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "thaddeuskkr",
+ "email": "",
+ "discord": "275830234262142978",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.lLFfIW3EiPjgK-i-I5E56ERBvjl-ueM91PRyYM6wRClZzuoAj4nQyqL57dSZjhO_4Hbu4ZubbM1I_NI8Vt4_SlsFmxgL-hrvH9tf7rv-hX-TZtBWT_LQQUmhd1ZViGwELTly797M8VXZ39ER2gDmzruxjh8eQEHBCeJujWuUNicigehUgfk-Pk9rSchVlR3TUcwL-wylY58KvBLQwIeMmqUW2qs_E_iKCwk_8FQH-IUb_4W58r6wBHh6MqiP72Py9ssDbxrV59e1eGrQZXYJJM1rUZHoHzW1KX84FgT0QCGc1cSiV-Sdc3p6WceRY6Tf1akfTNjuga61kpgzluoTxg.QwFk8iYMpzefwXgErTr9cQ.kwMwAIrFDxCKfvSxx3Jpvb6ZkiFcp56BFoBg7KQMsYw4PBK60JNzjpMpgMqZ7jymnYJFTz5img3xLlxBF7UuUy_Z9MgHCHaVR3W7970smoQ.aBJoeQFaHiIyXkpQa1Gx7g"
+ },
+
+ "record": {
+ "A": ["138.2.70.1"]
+ }
+}
diff --git a/domains/stats.trung.json b/domains/stats.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/stats.trung.json
+++ b/domains/stats.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/status.6.json b/domains/status.6.json
new file mode 100644
index 0000000000..947bf4219d
--- /dev/null
+++ b/domains/status.6.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "shockbs",
+ "email": "apipherng@gmail.com"
+ },
+ "record": {
+ "URL": "https://status.shockbs.is-a.dev/"
+ }
+}
diff --git a/domains/status.shockbs.json b/domains/status.shockbs.json
index 23826e6389..e1aecf8ea6 100644
--- a/domains/status.shockbs.json
+++ b/domains/status.shockbs.json
@@ -4,6 +4,5 @@
"email": "apipherng@gmail.com"
},
"record": {
- "CNAME": "bbbsjsijb8hsbsnakkshdbfdnds.onrender.com"
- }
+ "CNAME": "bbbsjsijb8hsbsnakkshdbfdnds.onrender.com" }
}
diff --git a/domains/status.trung.json b/domains/status.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/status.trung.json
+++ b/domains/status.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/status.xrap1dx.json b/domains/status.xrap1dx.json
new file mode 100644
index 0000000000..4757027751
--- /dev/null
+++ b/domains/status.xrap1dx.json
@@ -0,0 +1,11 @@
+{
+ "description": "making my status page!!!",
+ "repo": "https://github.com/xrap1dx?tab=repositories",
+ "owner": {
+ "username": "xrap1dx",
+ "email": "sirrapid155@gmail.com"
+ },
+ "record": {
+ "CNAME": "statuspage.betteruptime.com"
+ }
+}
diff --git a/domains/sunn4room.json b/domains/sunn4room.json
new file mode 100644
index 0000000000..eb2a4835ab
--- /dev/null
+++ b/domains/sunn4room.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "sunn4room",
+ "email": "sunn4room@163.com"
+ },
+ "record": {
+ "CNAME": "blog-4ke.pages.dev"
+ }
+}
diff --git a/domains/sxinar.json b/domains/sxinar.json
deleted file mode 100644
index 27a3765d96..0000000000
--- a/domains/sxinar.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "Sxinar",
- "email": "130384567+Sxinar@users.noreply.github.com",
- "discord": "1247896918957490198"
- },
-
- "record": {
- "A": ["192.30.252.153"]
- }
-}
diff --git a/domains/szczota.json b/domains/szczota.json
index 20cfddcaf5..204e77484b 100644
--- a/domains/szczota.json
+++ b/domains/szczota.json
@@ -1,11 +1,11 @@
{
"owner": {
- "username": "riviox",
- "email": "rivioxyt@hotmail.com",
- "discord": "1200520669570539620"
+ "username": "szczotapl",
+ "email": "",
+ "discord": ".szczotapl"
},
"record": {
- "CNAME": "riviox.github.io"
+ "CNAME": "szczotapl.github.io"
}
}
diff --git a/domains/t.json b/domains/t.json
new file mode 100644
index 0000000000..fc41cce588
--- /dev/null
+++ b/domains/t.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "trollm8",
+ "email": "",
+ "discord": "1266754182082461751",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.N8Vf7tNsfTIJKNaXAqD1t4qLzIqx8ZlybnLmVGjKs6dv3uxFMpKQhznKohFUEtOQlvURIZsKDGUOyFFpo6tzJEFt9Aaocse4xF2P7ud1ZBGLaPBSM7HF7IemNsczePYM-BjzMHvfTu7ryOGlCLvRe7z7M0KzRtImIcpm_ZQf-1aGlAFljd9Gy82Jc2mE9U-gMNU5GgRteegXGeNRHb10oYXWYV4lmLTP_YhvbiCavwTRyTS3SrwzQn78eTcXgwTeGhELj9eEfwTCsGJJfsbZPWAh1QNpm6-Y7HktDiNELbw2QfK3R0gvczybCfXGzj4d7z4Qhchea5X_uXxalGGNfA.VE-Mh6fPXbz7m456qKlh5w.gg7ta9FXClk001IBFL1UiwrYTks-hWzmecKfz9XdA1js4kBarT9MdlAb4UJTyoeyVqQ1uZSe3QLt25A1Kk7pTg.ZEXUDiLNEpaUwlvsx_xiEQ"
+ },
+
+ "record": {
+ "CNAME": "trollm8-redirect.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/taskforce-bot.json b/domains/taskforce-bot.json
deleted file mode 100644
index 157395476d..0000000000
--- a/domains/taskforce-bot.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "149485703+EducatedSuddenBucket@users.noreply.github.com",
- "discord": "1167825360151380032"
- },
-
- "record": {
- "A": ["216.24.57.1"]
- }
-}
diff --git a/domains/tech4file.json b/domains/tech4file.json
new file mode 100644
index 0000000000..bfaadf4ece
--- /dev/null
+++ b/domains/tech4file.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "kubsai",
+ "email": "",
+ "discord": "477781395922485248",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.rjBMItaMqXDR5sgtxH1YnZZ9mYBhx3cbEQzddCZUiMNBR46LhAZ2AhH8wCbD6SG2zvXxFAs_37Lj-kdKpTwqvslDWBwu-USKw744-I9JSYOo5AOp07XOeMBub_hlhDzTs7c71UEp0Zn2aWcNT164tJZ9FtrrGz1cOlA1FrgOY6IiddK6Kpxc9WNfyKrFcvI36qFxp4Tb8S0Ibybm61KJbstlgbjxwB6KggPTHsywFOhw_Qefe9-QptaoPZRiruXHzvfWYoEzDVjlu7sfXbbyTfla9P6KMldZqhzfYLB1urG-iUnbE5lXWHpPUHS3Hg6-_zWzBIMn65gKfmXrp-uV7A.hW8GxTh4cATNDhwiGbFWyg.JoRpaJgGT1hqgC16L__tz931OK9opx5RmAWfsoe3QHUsiqCQM8xLkxUldZUX_UwYQWD0VZHxkk6KXYFfp2NwtQ.Q4d-6jP2DF2q_-6B8o-u5Q"
+ },
+
+ "record": {
+ "A": ["185.27.134.230"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/test.trung.json b/domains/test.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/test.trung.json
+++ b/domains/test.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/th3.json b/domains/th3.json
new file mode 100644
index 0000000000..d34330feac
--- /dev/null
+++ b/domains/th3.json
@@ -0,0 +1,11 @@
+{
+ "description": "Th3-C0der's subdomain",
+ "repo": "https://github.com/Th3-C0der/Th3-C0der.github.io",
+ "owner": {
+ "username": "Th3-C0der",
+ "email": "Th3Drag8N@proton.me"
+ },
+ "record": {
+ "CNAME": "th3-c0der.github.io"
+ }
+}
diff --git a/domains/ticketkit.json b/domains/ticketkit.json
new file mode 100644
index 0000000000..3a230ac410
--- /dev/null
+++ b/domains/ticketkit.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "blaze-099",
+ "email": "",
+ "discord": "1186691290759434350"
+ },
+ "record": {
+ "CNAME": "ticketsx.netlify.app"
+ }
+}
+
diff --git a/domains/tiyanof.json b/domains/tiyanof.json
new file mode 100644
index 0000000000..65dac000f9
--- /dev/null
+++ b/domains/tiyanof.json
@@ -0,0 +1,12 @@
+{
+ "description": "To make my website more cooler bc is-a.dev domain is cool ngl",
+ "repo": "https://github.com/tiyanof/tiyanof.github.io",
+ "owner": {
+ "username": "tiyanof",
+ "email": "hannasophia1999@gmail.com",
+ "twitter": "s00op_"
+ },
+ "record": {
+ "CNAME": "tiyanof.github.io"
+ }
+}
diff --git a/domains/tk.json b/domains/tk.json
index 2492440b37..d69fe43fe5 100644
--- a/domains/tk.json
+++ b/domains/tk.json
@@ -1,9 +1,12 @@
{
- "owner": {
- "username": "thaddeuskkr",
- "email": "thaddeuskkr@gmail.com"
- },
- "record": {
- "CNAME": "tkkr.tplinkdns.com"
- }
+ "owner": {
+ "username": "thaddeuskkr",
+ "email": "",
+ "discord": "275830234262142978",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.lLFfIW3EiPjgK-i-I5E56ERBvjl-ueM91PRyYM6wRClZzuoAj4nQyqL57dSZjhO_4Hbu4ZubbM1I_NI8Vt4_SlsFmxgL-hrvH9tf7rv-hX-TZtBWT_LQQUmhd1ZViGwELTly797M8VXZ39ER2gDmzruxjh8eQEHBCeJujWuUNicigehUgfk-Pk9rSchVlR3TUcwL-wylY58KvBLQwIeMmqUW2qs_E_iKCwk_8FQH-IUb_4W58r6wBHh6MqiP72Py9ssDbxrV59e1eGrQZXYJJM1rUZHoHzW1KX84FgT0QCGc1cSiV-Sdc3p6WceRY6Tf1akfTNjuga61kpgzluoTxg.QwFk8iYMpzefwXgErTr9cQ.kwMwAIrFDxCKfvSxx3Jpvb6ZkiFcp56BFoBg7KQMsYw4PBK60JNzjpMpgMqZ7jymnYJFTz5img3xLlxBF7UuUy_Z9MgHCHaVR3W7970smoQ.aBJoeQFaHiIyXkpQa1Gx7g"
+ },
+
+ "record": {
+ "CNAME": "tkkr.tplinkdns.com"
+ }
}
diff --git a/domains/tlowng.json b/domains/tlowng.json
new file mode 100644
index 0000000000..043584104c
--- /dev/null
+++ b/domains/tlowng.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "longathelstan",
+ "email": "longaluminium10@gmail.com"
+ },
+ "record": {
+ "URL": "https://guns.lol/longathelstan"
+ }
+}
diff --git a/domains/too-obvious-that.maskduck.json b/domains/too-obvious-that.maskduck.json
index 78c5f9e3be..dee070ebf2 100644
--- a/domains/too-obvious-that.maskduck.json
+++ b/domains/too-obvious-that.maskduck.json
@@ -1,6 +1,6 @@
{
"owner": {
- "username": "MaskDuck",
+ "username": "mAskDucK",
"email": "",
"discord": "maskduck",
"twitter": "MaskDuck1",
diff --git a/domains/trackstore.json b/domains/trackstore.json
new file mode 100644
index 0000000000..eb92f2038e
--- /dev/null
+++ b/domains/trackstore.json
@@ -0,0 +1,11 @@
+{
+ "description": "TrackStore is website where people can share and find Hill Climb Racing 2 custom tracks. It is not ready yet, but is actively under development. The email I used is a Proton Mail 'hide my email alias'. For more info on TrackStore, see https://github.com/TrackStore#README",
+ "repo": "https://github.com/TrackStore/TrackStore.github.io",
+ "owner": {
+ "username": "TrackStore",
+ "email": "imaginary_macaw058@simplelogin.com"
+ },
+ "record": {
+ "CNAME": "trackstore.github.io"
+ }
+}
diff --git a/domains/treizer.json b/domains/treizer.json
deleted file mode 100644
index d3f9600830..0000000000
--- a/domains/treizer.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "owner": {
- "username": "nexos20levrai",
- "email": "nexos.dons@gmail.com"
- },
- "record": {
- "A": ["193.160.130.98"]
- }
-}
diff --git a/domains/trollm8.json b/domains/trollm8.json
new file mode 100644
index 0000000000..28fd6b7281
--- /dev/null
+++ b/domains/trollm8.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "trollm8",
+ "email": "",
+ "discord": "1266754182082461751",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Tmidf0-ostr7SwvsJgEdvwL8GNzBRuA7akFPycL23OBl4RxlOctbY2tZJhm9AFmd1GW_2cbZs735Lc4fbPYYOqYSg5PuCmPLA1LHrDdAffwQT2nwBZkKstxOWgR9_l0DvStxpyMd86jVgRUujXL0nChFeDA2-us7I0FaQsM4ojDFI2_yovADFT5MoukCYW1GEfu5-gsETTomrovCg2dKOGem8EH1bUhe9DFa0fzkVA9WNpleK5nW-53JC4LYNAttdNTLkzk8J04JMesCpKFNsuuqWJwIyJMhatge0PzKEQr2VQ-_oR9Mf-PJs5Wfrh64HLsV4WmCEgGJfY88vmOISQ.BP-dCaDVgXkrR30NuwAsag.vkx4F6n9o6tw0EQhk_eKzK4Q3PhxZfuoUf2_8sTjakA-vlRC04qXZ9STXkZzDl6XwG8uZbM1FCob-_AhY5ASPQ.fkMZOYZWqGef_gddA379eA"
+ },
+
+ "record": {
+ "CNAME": "trollm8.pages.dev"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/trung.json b/domains/trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/trung.json
+++ b/domains/trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/u.json b/domains/u.json
new file mode 100644
index 0000000000..a1422fcd97
--- /dev/null
+++ b/domains/u.json
@@ -0,0 +1,14 @@
+{
+ "owner": {
+ "username": "ukrioo",
+ "email": "u8k50850@gmail.com"
+ },
+ "record": {
+ "URL": "https://ukrioo.github.io/",
+ "MX": [
+ "mx1.forwardemail.net",
+ "mx2.forwardemail.net"
+ ],
+ "TXT": "forward-email=u8k50850@gmail.com"
+ }
+}
diff --git a/domains/unofficial-docs.json b/domains/unofficial-docs.json
deleted file mode 100644
index b14fc31dca..0000000000
--- a/domains/unofficial-docs.json
+++ /dev/null
@@ -1,14 +0,0 @@
-{
- "owner": {
- "username": "EducatedSuddenBucket",
- "email": "educatedsuddenbucket@gmail.com"
- },
- "record": {
- "A": [
- "185.199.108.153",
- "185.199.109.153",
- "185.199.110.153",
- "185.199.111.153"
- ]
- }
-}
diff --git a/domains/uptime.acronical.json b/domains/uptime.acronical.json
new file mode 100644
index 0000000000..fa8380b237
--- /dev/null
+++ b/domains/uptime.acronical.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "AcronicalYT",
+ "email": "acronicalbusiness@gmail.com"
+ },
+ "record": {
+ "A": ["138.68.133.84"]
+ }
+}
diff --git a/domains/uptime.trung.json b/domains/uptime.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/uptime.trung.json
+++ b/domains/uptime.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/uzi.json b/domains/uzi.json
new file mode 100644
index 0000000000..b3c35ea756
--- /dev/null
+++ b/domains/uzi.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "crischutu07",
+ "email": "",
+ "discord": "1001747794954039368"
+ },
+
+ "record": {
+ "CNAME": "crischutu07.github.io"
+ }
+ }
+
diff --git a/domains/vamtic.json b/domains/vamtic.json
index 73b537fffc..0b0d9b23fa 100644
--- a/domains/vamtic.json
+++ b/domains/vamtic.json
@@ -9,6 +9,6 @@
"mx1.improvmx.com",
"mx2.improvmx.com"
],
- "TXT": "v=spf1 include:spf.improvmx.com ~all"
+ "TXT": ["v=spf1 include:spf.improvmx.com ~all", "google-site-verification=c87D0Hk4uYmuX7ztxpSafWM2aRVNibOeA7gLv7SK2ag"]
}
}
diff --git a/domains/vma.json b/domains/vma.json
new file mode 100644
index 0000000000..aebf97aeb1
--- /dev/null
+++ b/domains/vma.json
@@ -0,0 +1,11 @@
+{
+ "description": "Link for vmadev-ru personal site on GitHub pages",
+ "repo": "https://github.com/vmadev-ru/vmadev-ru.github.io",
+ "owner": {
+ "username": "vmadev-ru",
+ "email": "vmadev.ru@gmail.com"
+ },
+ "record": {
+ "CNAME": "vmadev-ru.github.io"
+ }
+}
diff --git a/domains/vulpine.json b/domains/vulpine.json
new file mode 100644
index 0000000000..f4cfb24874
--- /dev/null
+++ b/domains/vulpine.json
@@ -0,0 +1,14 @@
+{
+ "owner": {
+ "username": "VulpineFriend87",
+ "email": "",
+ "discord": "911268706112397392"
+ },
+
+ "record": {
+ "A": ["69.30.249.53"],
+ "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/w.json b/domains/w.json
new file mode 100644
index 0000000000..b8151727b2
--- /dev/null
+++ b/domains/w.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "wdhdev",
+ "email": "william@williamharrison.dev",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.SdYpx7eNqzrsSaps8ePYAkUaNG-q_yn4sIwHgBleDwBi380-SWsVjBboVLydwM6PxK1gAzRamHu9HlrccM-6EHeWhogQlRxpqh00vdm_YvY2B2GizVZyo2WL1mcz9rYmicfWso_pcVNhgxHzj3k4MtNMcVbnQmFhVg8mk3DwXQyvK347cZCRnwuQe4l0XAX9xfEPJ-A02ljxjQUrwzaIUfDuJHM5UBC7uS5I6FRl8M2Sz0VlvmiE3lqdsxphL1vOAR3guCCulNyfLo-yvLqIvxGF-L2zbuaKMpQta0wxwTE4M2TNFJ3ajawCeWtzQvtHvjonuKoLZk02mkp2c4zlCA.XEGDbkb6MearJnI0Lx3mxw.uIfclT8STiI1PQpL7HBPPduiLS89ybBNYCz-5suFAqwpeoFqmeKoYjMLKssywx_UeNfYJ8EakPpSrno7PsVPeKhixsw1XwAj2Mnb_FkYQ6S-ibd0Mh3fS6299ISEmhBK.bT1AIOehMEy6K3M7amOaVQ"
+ },
+
+ "record": {
+ "CNAME": "edge.redirect.pizza"
+ }
+}
diff --git a/domains/weeebdev.json b/domains/weeebdev.json
new file mode 100644
index 0000000000..5def706841
--- /dev/null
+++ b/domains/weeebdev.json
@@ -0,0 +1,12 @@
+
+ {
+ "owner": {
+ "username": "weeebdev",
+ "email": "mr.adil777@gmail.com"
+ },
+
+ "record": {
+ "CNAME": "weeebdev.github.io"
+ }
+ }
+
diff --git a/domains/wes.json b/domains/wes.json
new file mode 100644
index 0000000000..52ed3db039
--- /dev/null
+++ b/domains/wes.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "westhecool",
+ "email": "wesley@westhedev.xyz"
+ },
+ "record": {
+ "CNAME": "wesley-is-a-dev.pages.dev"
+ }
+}
\ No newline at end of file
diff --git a/domains/wesley.json b/domains/wesley.json
new file mode 100644
index 0000000000..52ed3db039
--- /dev/null
+++ b/domains/wesley.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "westhecool",
+ "email": "wesley@westhedev.xyz"
+ },
+ "record": {
+ "CNAME": "wesley-is-a-dev.pages.dev"
+ }
+}
\ No newline at end of file
diff --git a/domains/william.json b/domains/william.json
index b4ba3fc153..b8151727b2 100644
--- a/domains/william.json
+++ b/domains/william.json
@@ -1,7 +1,8 @@
{
"owner": {
"username": "wdhdev",
- "email": "william@williamharrison.dev"
+ "email": "william@williamharrison.dev",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.SdYpx7eNqzrsSaps8ePYAkUaNG-q_yn4sIwHgBleDwBi380-SWsVjBboVLydwM6PxK1gAzRamHu9HlrccM-6EHeWhogQlRxpqh00vdm_YvY2B2GizVZyo2WL1mcz9rYmicfWso_pcVNhgxHzj3k4MtNMcVbnQmFhVg8mk3DwXQyvK347cZCRnwuQe4l0XAX9xfEPJ-A02ljxjQUrwzaIUfDuJHM5UBC7uS5I6FRl8M2Sz0VlvmiE3lqdsxphL1vOAR3guCCulNyfLo-yvLqIvxGF-L2zbuaKMpQta0wxwTE4M2TNFJ3ajawCeWtzQvtHvjonuKoLZk02mkp2c4zlCA.XEGDbkb6MearJnI0Lx3mxw.uIfclT8STiI1PQpL7HBPPduiLS89ybBNYCz-5suFAqwpeoFqmeKoYjMLKssywx_UeNfYJ8EakPpSrno7PsVPeKhixsw1XwAj2Mnb_FkYQ6S-ibd0Mh3fS6299ISEmhBK.bT1AIOehMEy6K3M7amOaVQ"
},
"record": {
diff --git a/domains/win10sunvalley.json b/domains/win10sunvalley.json
new file mode 100644
index 0000000000..41ecc6f36f
--- /dev/null
+++ b/domains/win10sunvalley.json
@@ -0,0 +1,9 @@
+{
+ "owner": {
+ "username": "winbo-yml-exe",
+ "email": "winbo-yml-exe@outlook.com"
+ },
+ "record": {
+ "CNAME": "win10sunvalley.github.io"
+ }
+}
diff --git a/domains/wizardsword.json b/domains/wizardsword.json
new file mode 100644
index 0000000000..2543958b09
--- /dev/null
+++ b/domains/wizardsword.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "MukuJhansi",
+ "email": "",
+ "discord": "1115658967012626542"
+ },
+
+ "record": {
+ "A": ["216.24.57.1"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/workspace.trung.json b/domains/workspace.trung.json
index 0138cea655..b99730c4e9 100644
--- a/domains/workspace.trung.json
+++ b/domains/workspace.trung.json
@@ -4,6 +4,6 @@
"email": "vuthanhtrungsuper@gmail.com"
},
"record": {
- "A": ["37.114.46.15"]
+ "A": ["35.185.84.140"]
}
}
diff --git a/domains/www.json b/domains/www.json
index 359253458f..6ecfc95b28 100644
--- a/domains/www.json
+++ b/domains/www.json
@@ -1,9 +1,9 @@
{
- "description": "www.is-a.dev",
+ "description": "The is-a.dev website",
"repo": "https://github.com/is-a-dev/is-a-dev.github.io",
"owner": {
- "username": "phenax",
- "email": "phenax5@gmail.com"
+ "username": "wdhdev",
+ "email": ""
},
"record": {
"CNAME": "is-a-dev.github.io"
diff --git a/domains/x.json b/domains/x.json
new file mode 100644
index 0000000000..0f5d8195be
--- /dev/null
+++ b/domains/x.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "jvideo-sk",
+ "email": "",
+ "discord": "1030204181207859260"
+ },
+
+ "record": {
+ "CNAME": "jvideo.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/xdoxx123.json b/domains/xdoxx123.json
new file mode 100644
index 0000000000..8a426286d5
--- /dev/null
+++ b/domains/xdoxx123.json
@@ -0,0 +1,11 @@
+{
+ "description": "xdoxx123.is-a.dev",
+ "repo": "https://github.com/xdoxx123/xdoxx123.github.io",
+ "owner": {
+ "username": "xdoxx123",
+ "email": "xdoxx124@gmail.com"
+ },
+ "record": {
+ "CNAME": "xdoxx123.github.io"
+ }
+}
diff --git a/domains/xenside.json b/domains/xenside.json
index e2ba31c803..b1cb1e9078 100644
--- a/domains/xenside.json
+++ b/domains/xenside.json
@@ -1,7 +1,7 @@
{
"owner": {
"username": "XenSideNBTS",
- "email": "peskoila89@gmail.com"
+ "email": "xenside@xenside.is-a.dev"
},
"record": {
"A": [
diff --git a/domains/xgarciadevs.json b/domains/xgarciadevs.json
new file mode 100644
index 0000000000..f7dfc5d766
--- /dev/null
+++ b/domains/xgarciadevs.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "xgarciadevs",
+ "email": "",
+ "discord": "528637169544331291",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.AEE26UaHZe8_LcuhJr1lzNzgeSkXmln0mE8UcQtMR0hViboJjLWgvqFz-SjvjwIAVojRtThKqDHSrLBDL6o348iAjyq40tkt4lBdXfr99WSaQMpFpHInnZt5oR8sxeudO5qIjUHQcfS-Yc0PjmkRTVAU9Tqux3y5Aq9zDVEuijnPTWZ2K_4jx9m9yl9sBIaWmnF_IsxQ8uyqjdbetOi5SjkKyAbRFWw7oOGFtYLj6TnoX3scmzttZ3KGmWJ0ZNS13Laox2HQcCpHxxK1S7KJ6pL5pMwVUPYky4HyHehxQKFg95i3MRzWuSTkodGtBdh49Pwh69QzrJqQb8att80uBA.TlnYc1bf6FVZiUS70wP29w.xE4-Bc5esGlMAfR9OgfYmSQn-nhzZTYuwyq_CazXX9AfLoNwe_uw322aB7BVJ0Ir9q7OhuxlgHH6p_Dr-eEGcTLSVrsXffpZ59QTVCmZtIo.8O7dpgd0M33X_CoKfigNyQ"
+ },
+
+ "record": {
+ "CNAME": "xgarciadevs.github.io"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/xrap1dx.json b/domains/xrap1dx.json
new file mode 100644
index 0000000000..f11ffb0c88
--- /dev/null
+++ b/domains/xrap1dx.json
@@ -0,0 +1,21 @@
+{
+ "description": "making a cool portfolio website.",
+ "repo": "https://github.com/xrap1dx?tab=repositories",
+ "owner": {
+ "username": "xrap1dx",
+ "email": "sirrapid155@gmail.com"
+ },
+ "record": {
+ "A": [
+ "69.30.249.53"
+ ],
+ "MX": [
+ "mx1.improvmx.com",
+ "mx2.improvmx.com"
+ ],
+ "TXT": [
+ "v=spf1 include:spf.improvmx.com ~all",
+ "zoho-verification=zb43908801.zmverify.zoho.eu"
+ ]
+ }
+}
diff --git a/domains/y.json b/domains/y.json
new file mode 100644
index 0000000000..1a06bbbaf4
--- /dev/null
+++ b/domains/y.json
@@ -0,0 +1,10 @@
+{
+ "owner": {
+ "username": "yunexiz",
+ "discord": "1040303561847881729",
+ "email": ""
+ },
+ "record": {
+ "CNAME": "yunexiz.github.io"
+ }
+}
diff --git a/domains/yigit.json b/domains/yigit.json
index ecd145c3ce..731117b2de 100644
--- a/domains/yigit.json
+++ b/domains/yigit.json
@@ -1,9 +1,12 @@
{
+ "description": "My Portfolio",
+ "repo": "https://github.com/yigitdev05/yigitdev05.github.io",
"owner": {
- "username": "yigitdevv0",
- "email": "yigitkabak05@hotmail.com"
+ "username": "yigitdev05",
+ "email": "yigitkabak@proton.me",
+ "discord": "yigit.dev"
},
"record": {
- "CNAME": "yigit.xairys.com"
+ "CNAME": "yigitdev05.github.io"
}
-}
+}
diff --git a/domains/yrrahbot.acronical.json b/domains/yrrahbot.acronical.json
index bb972b6e72..fa8380b237 100644
--- a/domains/yrrahbot.acronical.json
+++ b/domains/yrrahbot.acronical.json
@@ -4,6 +4,6 @@
"email": "acronicalbusiness@gmail.com"
},
"record": {
- "A": ["209.38.167.110"]
+ "A": ["138.68.133.84"]
}
}
diff --git a/domains/yxz.json b/domains/yxz.json
index e6f890b1c7..739cbc466b 100644
--- a/domains/yxz.json
+++ b/domains/yxz.json
@@ -1,9 +1,10 @@
{
- "owner": {
- "username": "yz9551",
- "email": "yixuan0808@gmail.com"
- },
- "record": {
- "CNAME": "cobble.southeastasia.cloudapp.azure.com"
- }
-}
+ "repo": "https://github.com/yz9551/blog",
+ "owner": {
+ "username": "yz9551",
+ "email": "yixuan0808@gmail.com"
+ },
+ "record": {
+ "CNAME": "yz9551.github.io"
+ }
+}
diff --git a/domains/z.json b/domains/z.json
new file mode 100644
index 0000000000..63cb184904
--- /dev/null
+++ b/domains/z.json
@@ -0,0 +1,18 @@
+{
+ "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"
+ ]
+ }
+ }
+
diff --git a/domains/zenzoya.json b/domains/zenzoya.json
new file mode 100644
index 0000000000..7f922b704e
--- /dev/null
+++ b/domains/zenzoya.json
@@ -0,0 +1,12 @@
+{
+ "owner": {
+ "username": "ZenZoyaUDR",
+ "email": "",
+ "discord": "915228509440454707"
+ },
+
+ "record": {
+ "CNAME": "zenzoya.netlify.app"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/zeoz.json b/domains/zeoz.json
new file mode 100644
index 0000000000..7ea8094e72
--- /dev/null
+++ b/domains/zeoz.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "nysr-dev",
+ "email": "",
+ "discord": "908554139888410635",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.DzFKuCJ9aSSXdV5Zva5ADifL9VFv8bwoGWvWEIzfzZHqSPsEFxpnIhQcOPCtuvPDQRkDd11dj2zpqv9gonnte79XPhqg_PqJsW_XH6e8RyK6GBaG0DqQrVhvubLKIUg7B7FwrIdIrVKt4gDInHEUx6IrwvR3qKbWfRbwu4XLB16IBzSQq9Vz96E9SHin7GDqcPviViTouT8KF_GGkWgPvFFysHnaSdXjMPch_zXX5fPgQ58p0P7um6lDVMSykwh4gZm4i6mhgAsUxGQVHY6ifQoIWxVcuMv8_JuIEyVj8X_EUzT5gqn9BWSpOoLHbFQ8nw-ydSDUWqK91zLCahTnlg.coaoSKqOk2tuipR3_ZQaow.RemUOjorEtATO2ekibtnjk3opGgUR9d9PF1IFij9rr1tDLKGe7T_mlHMqP-ma_wf7mBI63bVZOghlj2svObhPyV5Bx1uh9s5JWhpqOiB8ms._qNk5He5L58v1darIO3xGw"
+ },
+
+ "record": {
+ "CNAME": "nysr.host"
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/zevobla.json b/domains/zevobla.json
new file mode 100644
index 0000000000..cf317bf936
--- /dev/null
+++ b/domains/zevobla.json
@@ -0,0 +1,13 @@
+{
+ "owner": {
+ "username": "Zevobla",
+ "email": "",
+ "discord": "467539292877750284",
+ "OWL": "eyJlbmMiOiJBMTI4Q0JDLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVAiLCJraWQiOiJaa1VsRmRqVThiUEstLXVVM2JJR09PVHFYYVFFS1ZINFVXOW53MTR6WTJnIn0.Yl52Rrzzsl6pjhBgVkYA_NfGUZUHIp18-pe5PQVvoVI_7U_nksgv91HNcy56xoSJ9A8WUJCeE8qwfsenu9qwHVyWlAuNuWKfEMdM4vAI0V_AuW_1YaIm-0ObrxQsOPMohv9n7e6b5vSLz3f7EKsbiqtebvwF1ebxxqN85t64ZrfCSEBATl3sCjR-vLAORej4Kj3MpgKe7Le1qsoey3u5SR1FvGezQh3PLljcKlR72g0TKvkn8WnF2JicERNDNFJYnwipt-G0HyvibpTsh7trMrcrSEfDYFxGkDLYhgHo02RvUhXer4mtCCvMUX2MgsGraqxDBdASwfk62Jn2EINU6Q.PxrZtoeRnAFNvkmvd0vAMg.xokePgy944ELwFNV_7CzH4K_ylDYFqd_rC-XnvJAt22K2dYKk5SVjftxmLJhwib-BcZh-Aqx7FkRmR3bytAKic2a_vdnmkV6c_tuDbSsJviXViBKpPDPhDF2DoWRBvTI.b2HHi1Vk1_cUmFDkZOclbw"
+ },
+
+ "record": {
+ "A": ["77.238.238.131"]
+ }
+ }
+
\ No newline at end of file
diff --git a/domains/zmail._domainkey.esb.json b/domains/zmail._domainkey.esb.json
new file mode 100644
index 0000000000..13fd799922
--- /dev/null
+++ b/domains/zmail._domainkey.esb.json
@@ -0,0 +1,11 @@
+{
+ "owner": {
+ "username": "EducatedsuddenBucket",
+ "email": "educatedsuddenbucket@gmail.com"
+ },
+ "record": {
+ "TXT": [
+ "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCOCPIlvAEZxJibdx9OiUyJHoj63GUkBafTzg5XI4kfG7LFcONNdJwjxbOipmriktgDwyltEM4ZC1kw+Vf3mSYwIqtfuMmFZXBawYW9nU7KbNqH2xLZF+7z0SkHdyB0ODm78ouiQLdr6IPc+ZSjyZD0M3eOMlXnwsBrCzhM+itKowIDAQAB"
+ ]
+ }
+}
diff --git a/domains/zmail._domainkey.juststudio.json b/domains/zmail._domainkey.juststudio.json
new file mode 100644
index 0000000000..fa533eb952
--- /dev/null
+++ b/domains/zmail._domainkey.juststudio.json
@@ -0,0 +1,10 @@
+{
+ "description": "zoho mail for juststudio.is-a.dev domain",
+ "owner": {
+ "username": "JustStudio7",
+ "email": "lk.qq@ya.ru"
+ },
+ "record": {
+ "TXT": "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCjezgYOcTrOFw6uITe2KXiQ7MTEzCI76YKzGNPCeN7ttYlbZ/+KRg+iNPNcinf96ClHDhw7fooDSkmTnsCwXdK29gidrXFljATKEB3bilriDYTdtesd+kCHVS5XqUWHKfAdhFZpQcV97DwX1mzTb17JOi8R9HJ8KqJ00/+eir+EQIDAQAB"
+ }
+}
diff --git a/domains/zwei.json b/domains/zwei.json
index e6ee5f6156..02ad53c002 100644
--- a/domains/zwei.json
+++ b/domains/zwei.json
@@ -1,9 +1,9 @@
{
"owner": {
- "username": "Vibred",
- "email": "vibred@pm.me"
+ "username": "zwei",
+ "email": "post@zwei.de.eu.org"
},
"record": {
- "CNAME": "telegraph-image2-c9p.pages.dev"
+ "CNAME": "bestzwei.github.io"
}
}
diff --git a/media/logo_circle.png b/media/logo_circle.png
new file mode 100644
index 0000000000..dae6ae51bf
Binary files /dev/null and b/media/logo_circle.png differ
diff --git a/scripts/action-utils.js b/scripts/action-utils.js
index f4fde5761e..38a33a4209 100644
--- a/scripts/action-utils.js
+++ b/scripts/action-utils.js
@@ -1,8 +1,8 @@
module.exports = {
- hasLabel: (context, label) => {
- const pr = context.payload.pull_request || context.payload.issue;
- const { labels = [] } = pr;
+ hasLabel: (context, label) => {
+ const pr = context.payload.pull_request || context.payload.issue;
+ const { labels = [] } = pr;
- return !!labels.find(({ name }) => name === label);
- },
+ return !!labels.find(({ name }) => name === label);
+ },
};
diff --git a/scripts/register-domains.js b/scripts/register-domains.js
index 20670f8afd..94bc02089b 100644
--- a/scripts/register-domains.js
+++ b/scripts/register-domains.js
@@ -1,61 +1,76 @@
-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 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, '');
+ 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 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);
+ const records = getRecords(data.record);
- return R.chain(([recordType, values]) => {
- const valueList = Array.isArray(values) ? values : [values];
+ 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)
+ 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);
+const registerDomains = async ({
+ domainService,
+ getDomains,
+ log = () => {},
+}) => {
+ const domains = await getDomains().then(toHostList);
- if (domains.length === 0)
- return Promise.reject(new Error('Nothing to register'));
+ if (domains.length === 0)
+ return Promise.reject(new Error("Nothing to register"));
- log(`${domains.length} records found`);
- return domainService.updateHosts(domains);
+ 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);
+ 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);
- });
+ main().catch((e) => {
+ console.error(e);
+ process.exit(1);
+ });
} else {
- module.exports = { toHostList, registerDomains };
+ module.exports = { toHostList, registerDomains };
}
-
diff --git a/scripts/reply.js b/scripts/reply.js
index 233f56ed44..dd4df142d1 100644
--- a/scripts/reply.js
+++ b/scripts/reply.js
@@ -1,4 +1,3 @@
-
const getInstructions = () => `
The changes have been published!! It should reflect in less than 24 hours.
@@ -35,16 +34,15 @@ 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;
+ 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(),
- });
- }
+ await github.issues.createComment({
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ issue_number: number,
+ body: getInstructions(),
+ });
+ },
};
-
diff --git a/tests/cpanel.test.js b/tests/cpanel.test.js
index 162a9a5d38..b2415f8b48 100644
--- a/tests/cpanel.test.js
+++ b/tests/cpanel.test.js
@@ -1,195 +1,210 @@
-const R = require('ramda');
-const { CpanelClient } = require('../utils/lib/cpanel');
+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 mockFetch =
+ (expectRequest, decorate = R.identity) =>
+ (reqUrl, request) => {
+ expectRequest(reqUrl, request);
+ return Promise.resolve({
+ json: async () => decorate(request),
});
- });
+ };
- const cpanel = CpanelClient({
- host: 'example.com',
- port: 2000,
- username: 'boy',
- apiKey: 'boybyebye',
- domain: 'a.b',
- dependencies: { fetch },
- });
+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,
+ });
+ });
- await cpanel.zone.fetch();
+ 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" });
+ });
});
- 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,
+ 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,
+ });
});
- });
-
- 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,
+ 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,
+ });
});
- });
-
- 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,
+ 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();
});
- });
-
- const cpanel = CpanelClient({
- host: 'example.com',
- port: 2000,
- username: 'boy',
- apiKey: 'boybyebye',
- domain: 'a.b',
- dependencies: { fetch },
- });
-
- await cpanel.zone.remove({
- line: 500,
- });
});
- });
+ 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,
+ });
+ });
- 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.add({
+ domain: "googo",
+ destination: "https://oodf.com",
+ });
});
- });
-
- 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,
+
+ 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" });
});
- });
-
- 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
index 077aa4ea27..dfd6400ed9 100644
--- a/tests/domain-service.test.js
+++ b/tests/domain-service.test.js
@@ -1,344 +1,421 @@
-const R = require('ramda');
-const { getDomainService, diffRecords } = require('../utils/domain-service');
-const { DOMAIN_DOMAIN } = require('../utils/constants');
+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),
- },
+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' },
- ];
+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' },
- ],
+ 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' },
- ];
+ 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' },
- ],
+ 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' },
- ];
+ 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' },
- ],
+ 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' },
- ];
+ 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' },
- ],
+ 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 () => ({}));
+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 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']));
+ 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' },
- ]);
+ beforeEach(() => {
+ addZone.mockClear();
+ removeZone.mockClear();
+ addRedir.mockClear();
+ removeRedir.mockClear();
+ addEmail.mockClear();
+ removeEmail.mockClear();
});
- 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();
+ 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([
- { 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' },
- ]);
- });
- });
+ expect(list).toEqual([
+ { name: "xx", type: "CNAME", address: "fck.com" },
+ { name: "xx", type: "A", address: "111.1.1212.1" },
+ ]);
+ });
- 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 = [];
+ 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();
- 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);
+ 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",
+ },
+ ]);
+ });
});
- 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 = [];
+ 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: 'googoogaga' },
- ]);
+ 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: 'b', type: 'CNAME', address: 'googoogaga' },
- ]);
- expect(removeZone).toHaveBeenCalledTimes(1);
- expect(getRecordCalls(removeZone)).toEqual([
- { line: 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}` },
+ ]);
+ });
});
-
- 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
index 0778967262..896cf017d4 100644
--- a/tests/domain-utils.test.js
+++ b/tests/domain-utils.test.js
@@ -1,9 +1,8 @@
-const { getDomains } = require('../utils/get-domain');
+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);
- });
+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
index 44c2a54229..75971b00b3 100644
--- a/tests/domains.test.js
+++ b/tests/domains.test.js
@@ -1,31 +1,37 @@
-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');
+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);
- });
+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);
- });
+ 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
index bd967a298e..6628df2118 100644
--- a/tests/register.test.js
+++ b/tests/register.test.js
@@ -1,209 +1,242 @@
-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 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,
+ 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),
- },
-})
+ 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'] } },
- ])
+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 },
- ])
- })
-})
+ 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 () => ({}))
+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,
- }),
- })
+ 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()
- })
+ 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 = []
+ 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 })
+ 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)
- })
+ 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' },
- ]
+ 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 })
+ 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(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(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(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 }],
- ])
- })
-})
+ 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
index bb2cac176a..6f71fb55f9 100644
--- a/tests/validations.test.js
+++ b/tests/validations.test.js
@@ -1,129 +1,165 @@
-const { validateDomainData, isValidDomain } = require('../utils/validations');
-const INVALID_NAMES = require('../utils/invalid-domains.json');
+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',
- },
+ name: "aaa",
+ record: {
+ A: ["121.121.121.121"],
+ },
+ owner: {
+ username: "betsy",
+ email: "betsyfuckyoassup@foobar.com",
+ },
};
-const getstroflen = len => Array(len).fill('a').join('');
+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 },
+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" },
];
- cases.forEach(({ mx, result }) => {
- expect(isValidDomain(mx)).toBe(result);
+ 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: "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([]);
+ });
});
- });
});
-
-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: 'a.b' },
- { ...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' },
- ];
-
- 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' },
- ];
-
- 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
index 19430e5bfa..b0cf0079de 100644
--- a/utils/constants.js
+++ b/utils/constants.js
@@ -1,30 +1,30 @@
-const path = require('path');
+const path = require("path");
-const { NODE_ENV: ENV = 'test' } = process.env;
+const { NODE_ENV: ENV = "test" } = process.env;
const {
- DOMAIN_USER,
- DOMAIN_API_KEY,
- DOMAIN_DOMAIN,
- DOMAIN_API_HOST,
- DOMAIN_API_PORT,
- DOMAIN_HOST_IP,
+ DOMAIN_USER,
+ DOMAIN_API_KEY,
+ DOMAIN_DOMAIN,
+ DOMAIN_API_HOST,
+ DOMAIN_API_PORT,
+ DOMAIN_HOST_IP,
} = process.env;
-const IS_TEST = ENV === 'test';
+const IS_TEST = ENV === "test";
-const DOMAINS_PATH = path.resolve('domains');
+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,
+ 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
index fe75aef046..b76eeac012 100644
--- a/utils/domain-service.js
+++ b/utils/domain-service.js
@@ -1,167 +1,206 @@
-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 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,
+ 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 } : {}),
+ 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 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
-}) =>
- ({
+ name,
+ type,
+ cname,
+ address,
+ priority,
+ preference,
+ exchange,
+ record,
+ line: id,
+}) => ({
id,
name: cleanName(name),
type: `${type}`,
- address: `${exchange || cname || address || record}`.replace(/\.$/g, '').toLowerCase(),
+ 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, ''),
+ id: domain,
+ name: cleanName(domain),
+ type: "URL",
+ address: `${destination}`.replace(/\/$/g, ""),
});
const recordToEmailMx = ({ name, address, priority }) => ({
- domain: `${name}.is-a.dev`,
- exchanger: address,
- priority,
-})
+ domain: `${name}.is-a.dev`,
+ exchanger: address,
+ priority,
+});
-const getHostKey = host =>
- `${host.name.toLowerCase()}##${host.type.toLowerCase()}##${host.address.toLowerCase()}`;
+const getHostKey = (host) =>
+ `${host.name.toLowerCase()}##${host.type.toLowerCase()}##${host.address.toLowerCase()}`;
const isReserved = (domain) =>
- domain.name.startsWith('*') || !VALID_RECORD_TYPES.includes(domain.type)
+ domain.name.startsWith("*") || !VALID_RECORD_TYPES.includes(domain.type);
const diffRecords = (oldRecords, newRecords) => {
- const isMatchingRecord = (a, b) => getHostKey(a) === getHostKey(b);
+ const isMatchingRecord = (a, b) => getHostKey(a) === getHostKey(b);
- const remove = R.differenceWith(isMatchingRecord, oldRecords, newRecords);
- const add = R.differenceWith(isMatchingRecord, newRecords, oldRecords);
+ const remove = R.differenceWith(isMatchingRecord, oldRecords, newRecords);
+ const add = R.differenceWith(isMatchingRecord, newRecords, oldRecords);
- return { add, remove };
+ 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 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 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);
+ 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));
+ log(`${values.length - failed.length}/${values.length}`);
+ failed.length && log(JSON.stringify(failed, null, 2));
- return null;
- });
-}, Promise.resolve());
+ 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 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 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 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 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}`)
+ 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 };
- };
+ await executeBatch([...removeRecords(remove), ...addRecords(add)]);
+ return { added: add.length, removed: remove.length };
+ };
- return { getHosts, get: cpanel.zone.fetch, addZoneRecord, removeZoneRecord, updateHosts };
+ return {
+ getHosts,
+ get: cpanel.zone.fetch,
+ addZoneRecord,
+ removeZoneRecord,
+ updateHosts,
+ };
};
const domainService = getDomainService({ cpanel });
module.exports = {
- getDomainService,
- domainService,
- diffRecords,
+ getDomainService,
+ domainService,
+ diffRecords,
};
diff --git a/utils/get-domain.js b/utils/get-domain.js
index d6529032de..0642403580 100644
--- a/utils/get-domain.js
+++ b/utils/get-domain.js
@@ -1,22 +1,27 @@
-const fs = require('fs');
-const path = require('path');
-const R = require('ramda');
-const {DOMAINS_PATH} = require('./constants');
+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 toDomain = (str) => path.join(DOMAINS_PATH, str);
-const parseDomain = name => str => {
- try {return JSON.parse(str);}
- catch (e) {throw new Error(`Error: Cant parse ${name} => ${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 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$/, ''),
- })));
+ fs.promises.readdir(DOMAINS_PATH, {}).then(
+ R.map((name) => ({
+ ...toDomainData(name),
+ name: name.replace(/\.json$/, ""),
+ })),
+ );
-module.exports = {getDomains};
+module.exports = { getDomains };
diff --git a/utils/helpers.js b/utils/helpers.js
index 171dce8ccb..03369f2b77 100644
--- a/utils/helpers.js
+++ b/utils/helpers.js
@@ -1,52 +1,54 @@
-const R = require('ramda');
-const { IS_TEST } = require('./constants');
+const R = require("ramda");
+const { IS_TEST } = require("./constants");
const log = IS_TEST ? () => {} : console.log;
-const print = fn => x => log(fn(x)) || x;
+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 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 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 then = (fn) => (p) => p.then(fn);
-const lazyTask = fn => data => () => fn(data);
+const lazyTask = (fn) => (data) => () => fn(data);
-const batchLazyTasks = count => tasks => tasks.reduce((batches, task) => {
- if (batches.length === 0) return [[task]];
+const batchLazyTasks = (count) => (tasks) =>
+ tasks.reduce((batches, task) => {
+ if (batches.length === 0) return [[task]];
- const full = R.init(batches);
- const last = R.last(batches);
+ const full = R.init(batches);
+ const last = R.last(batches);
- if (last.length >= count) return [...batches, [task]];
- return [...full, [...last, task]];
-}, []);
+ 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);
+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,
+ or,
+ and,
+ validate,
+ between,
+ testRegex,
+ log,
+ print,
+ then,
+ lazyTask,
+ batchLazyTasks,
+ withLengthEq,
+ withLengthGte,
};
-
diff --git a/utils/invalid-domains.json b/utils/invalid-domains.json
index 7c3a1ea1d4..1cba56e525 100644
--- a/utils/invalid-domains.json
+++ b/utils/invalid-domains.json
@@ -1,24 +1,25 @@
[
- "_acme-challenge",
- "_discord",
- "_dmarc",
- "_domainkey",
- "_gh-is-a-dev",
- "_github-challenge-is-a-dev",
- "_github-pages-challenge-is-a-dev",
- "_gitlab-pages-verification-code",
- "con",
- "help",
- "no-reply",
- "noreply",
- "notification",
- "notifications",
- "support",
- "ww",
- "ww1",
- "ww2",
- "ww3",
- "ww4",
- "wwww",
- "your-domain-name"
+ "_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",
+ "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
index e61b15a0f2..573a22e5ea 100644
--- a/utils/lib/cpanel.js
+++ b/utils/lib/cpanel.js
@@ -1,100 +1,123 @@
-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 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 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" }),
+ },
};
-
- 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);
+ 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 },
+ host: DOMAIN_API_HOST,
+ port: DOMAIN_API_PORT,
+ username: DOMAIN_USER,
+ apiKey: DOMAIN_API_KEY,
+ domain: DOMAIN_DOMAIN,
+ dependencies: { fetch },
});
module.exports = {
- cpanel,
- CpanelClient,
+ cpanel,
+ CpanelClient,
};
-
diff --git a/utils/validations.js b/utils/validations.js
index d68f6a5467..51f242b8b2 100644
--- a/utils/validations.js
+++ b/utils/validations.js
@@ -1,102 +1,128 @@
-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 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?:\/\//ig)]);
+const isValidURL = and([R.is(String), testRegex(/^https?:\/\//gi)]);
-const isValidDomain = and([R.is(String), testRegex(/^(([a-z0-9-]+)\.)+[a-z]+$/ig)]);
-
-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 isValidDomain = and([
+ R.is(String),
+ testRegex(/^(([a-z0-9-]+)\.)+[a-z]+$/gi),
]);
-const validateARecord = type => and([
- R.propIs(Array, type),
- R.propSatisfies(withLengthGte(1), type),
- R.all(testRegex(ipRegex.v4({ exact: true }))),
-]);
+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 validateMXRecord = type => and([
- R.propIs(Array, type),
- R.propSatisfies(withLengthGte(1), type),
- R.propSatisfies(R.all(isValidDomain), type),
-]);
+const validateARecord = (type) =>
+ and([
+ R.propIs(Array, type),
+ R.propSatisfies(withLengthGte(1), type),
+ R.all(testRegex(ipRegex.v4({ exact: true }))),
+ ]);
-const validateAAAARecord = R.propSatisfies(and([
- R.is(Array),
- withLengthGte(1),
- R.all(testRegex(ipRegex.v6({ exact: true }))),
-]))
+const validateMXRecord = (type) =>
+ and([
+ R.propIs(Array, type),
+ R.propSatisfies(withLengthGte(1), type),
+ R.propSatisfies(R.all(isValidDomain), type),
+ ]);
-const checkRestrictedNames = R.complement(R.includes(R.__, INVALID_NAMES))
+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), // Exception for github verification records
- R.equals('_discord'),
- R.equals('_gitlab-pages-verification-code'),
- R.equals('_acme-challenge'),
- R.equals('_dmarc'),
- R.equals('_domainkey'),
- testRegex(/^_gh-[a-z0-9-_]+$/i), // Exception for the new github org verification records
-]
+ 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"),
+ 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 more than 2 characters long',
- fn: or([
- R.equals('@'),
- and([
- R.is(String),
- checkRestrictedNames,
- R.compose(
- R.all(or([
+ 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.compose(between(2, 100), R.length),
- testRegex(/^[a-z0-9-]+$/g),
- checkRestrictedNames,
+ 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("."),
+ ),
]),
- ...extraSupportedNames,
- ])),
- R.split('.'),
- ),
- ])
- ]),
- },
- description: { reason: '', fn: R.T, },
- repo: { reason: '', fn: R.T, },
- owner: {
- reason: '`owner` 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. CNAME records have to be a host name and A records has to be a list of ips',
- 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],
- ]),
- ]),
- },
+ ]),
+ },
+ 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 };