feat: added 5 blogs, refactored legals, fixed (side)menu behaviour, made pages uniform
This commit is contained in:
parent
7e37f1bbe0
commit
5f2984824d
24 changed files with 1218 additions and 600 deletions
60
deno.lock
generated
60
deno.lock
generated
|
|
@ -14,6 +14,7 @@
|
||||||
"npm:eslint-plugin-svelte@^3.13.1": "3.13.1_eslint@9.39.2_svelte@5.46.1__acorn@8.15.0_postcss@8.5.6",
|
"npm:eslint-plugin-svelte@^3.13.1": "3.13.1_eslint@9.39.2_svelte@5.46.1__acorn@8.15.0_postcss@8.5.6",
|
||||||
"npm:eslint@^9.39.2": "9.39.2",
|
"npm:eslint@^9.39.2": "9.39.2",
|
||||||
"npm:globals@^16.5.0": "16.5.0",
|
"npm:globals@^16.5.0": "16.5.0",
|
||||||
|
"npm:mdsvex@~0.12.6": "0.12.6_svelte@5.46.1__acorn@8.15.0",
|
||||||
"npm:prettier-plugin-svelte@^3.4.1": "3.4.1_prettier@3.7.4_svelte@5.46.1__acorn@8.15.0",
|
"npm:prettier-plugin-svelte@^3.4.1": "3.4.1_prettier@3.7.4_svelte@5.46.1__acorn@8.15.0",
|
||||||
"npm:prettier@^3.7.4": "3.7.4",
|
"npm:prettier@^3.7.4": "3.7.4",
|
||||||
"npm:svelte-check@^4.3.5": "4.3.5_svelte@5.46.1__acorn@8.15.0_typescript@5.9.3",
|
"npm:svelte-check@^4.3.5": "4.3.5_svelte@5.46.1__acorn@8.15.0_typescript@5.9.3",
|
||||||
|
|
@ -615,6 +616,12 @@
|
||||||
"@types/json-schema@7.0.15": {
|
"@types/json-schema@7.0.15": {
|
||||||
"integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
|
"integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA=="
|
||||||
},
|
},
|
||||||
|
"@types/mdast@4.0.4": {
|
||||||
|
"integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==",
|
||||||
|
"dependencies": [
|
||||||
|
"@types/unist"
|
||||||
|
]
|
||||||
|
},
|
||||||
"@types/node@22.19.3": {
|
"@types/node@22.19.3": {
|
||||||
"integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==",
|
"integrity": "sha512-1N9SBnWYOJTrNZCdh/yJE+t910Y128BoyY+zBLWhL3r0TYzlTmFdXrPwHL9DyFZmlEXNQQolTZh3KHV31QDhyA==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
|
|
@ -624,6 +631,9 @@
|
||||||
"@types/resolve@1.20.2": {
|
"@types/resolve@1.20.2": {
|
||||||
"integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q=="
|
"integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q=="
|
||||||
},
|
},
|
||||||
|
"@types/unist@2.0.11": {
|
||||||
|
"integrity": "sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA=="
|
||||||
|
},
|
||||||
"@typescript-eslint/eslint-plugin@8.52.0_@typescript-eslint+parser@8.52.0__eslint@9.39.2__typescript@5.9.3_eslint@9.39.2_typescript@5.9.3": {
|
"@typescript-eslint/eslint-plugin@8.52.0_@typescript-eslint+parser@8.52.0__eslint@9.39.2__typescript@5.9.3_eslint@9.39.2_typescript@5.9.3": {
|
||||||
"integrity": "sha512-okqtOgqu2qmZJ5iN4TWlgfF171dZmx2FzdOv2K/ixL2LZWDStL8+JgQerI2sa8eAEfoydG9+0V96m7V+P8yE1Q==",
|
"integrity": "sha512-okqtOgqu2qmZJ5iN4TWlgfF171dZmx2FzdOv2K/ixL2LZWDStL8+JgQerI2sa8eAEfoydG9+0V96m7V+P8yE1Q==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
|
|
@ -1252,6 +1262,18 @@
|
||||||
"@jridgewell/sourcemap-codec"
|
"@jridgewell/sourcemap-codec"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
"mdsvex@0.12.6_svelte@5.46.1__acorn@8.15.0": {
|
||||||
|
"integrity": "sha512-pupx2gzWh3hDtm/iDW4WuCpljmyHbHi34r7ktOqpPGvyiM4MyfNgdJ3qMizXdgCErmvYC9Nn/qyjePy+4ss9Wg==",
|
||||||
|
"dependencies": [
|
||||||
|
"@types/mdast",
|
||||||
|
"@types/unist",
|
||||||
|
"prism-svelte",
|
||||||
|
"prismjs",
|
||||||
|
"svelte",
|
||||||
|
"unist-util-visit",
|
||||||
|
"vfile-message"
|
||||||
|
]
|
||||||
|
},
|
||||||
"mini-svg-data-uri@1.4.4": {
|
"mini-svg-data-uri@1.4.4": {
|
||||||
"integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==",
|
"integrity": "sha512-r9deDe9p5FJUPZAk3A59wGH7Ii9YrjjWw0jmw/liSbHl2CHiyXj6FcDXDu2K3TjVAXqiJdaw3xxwlZZr9E6nHg==",
|
||||||
"bin": true
|
"bin": true
|
||||||
|
|
@ -1390,6 +1412,12 @@
|
||||||
"integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==",
|
"integrity": "sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==",
|
||||||
"bin": true
|
"bin": true
|
||||||
},
|
},
|
||||||
|
"prism-svelte@0.4.7": {
|
||||||
|
"integrity": "sha512-yABh19CYbM24V7aS7TuPYRNMqthxwbvx6FF/Rw920YbyBWO3tnyPIqRMgHuSVsLmuHkkBS1Akyof463FVdkeDQ=="
|
||||||
|
},
|
||||||
|
"prismjs@1.30.0": {
|
||||||
|
"integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw=="
|
||||||
|
},
|
||||||
"punycode@2.3.1": {
|
"punycode@2.3.1": {
|
||||||
"integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="
|
"integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg=="
|
||||||
},
|
},
|
||||||
|
|
@ -1579,6 +1607,30 @@
|
||||||
"undici-types@6.21.0": {
|
"undici-types@6.21.0": {
|
||||||
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="
|
"integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ=="
|
||||||
},
|
},
|
||||||
|
"unist-util-is@4.1.0": {
|
||||||
|
"integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg=="
|
||||||
|
},
|
||||||
|
"unist-util-stringify-position@2.0.3": {
|
||||||
|
"integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==",
|
||||||
|
"dependencies": [
|
||||||
|
"@types/unist"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"unist-util-visit-parents@3.1.1": {
|
||||||
|
"integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==",
|
||||||
|
"dependencies": [
|
||||||
|
"@types/unist",
|
||||||
|
"unist-util-is"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"unist-util-visit@2.0.3": {
|
||||||
|
"integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==",
|
||||||
|
"dependencies": [
|
||||||
|
"@types/unist",
|
||||||
|
"unist-util-is",
|
||||||
|
"unist-util-visit-parents"
|
||||||
|
]
|
||||||
|
},
|
||||||
"uri-js@4.4.1": {
|
"uri-js@4.4.1": {
|
||||||
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
|
"integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
|
|
@ -1588,6 +1640,13 @@
|
||||||
"util-deprecate@1.0.2": {
|
"util-deprecate@1.0.2": {
|
||||||
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
|
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw=="
|
||||||
},
|
},
|
||||||
|
"vfile-message@2.0.4": {
|
||||||
|
"integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==",
|
||||||
|
"dependencies": [
|
||||||
|
"@types/unist",
|
||||||
|
"unist-util-stringify-position"
|
||||||
|
]
|
||||||
|
},
|
||||||
"vite@7.3.0_@types+node@22.19.3_picomatch@4.0.3": {
|
"vite@7.3.0_@types+node@22.19.3_picomatch@4.0.3": {
|
||||||
"integrity": "sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg==",
|
"integrity": "sha512-dZwN5L1VlUBewiP6H9s2+B3e3Jg96D0vzN+Ry73sOefebhYr9f94wwkMNN/9ouoU8pV1BqA1d1zGk8928cx0rg==",
|
||||||
"dependencies": [
|
"dependencies": [
|
||||||
|
|
@ -1652,6 +1711,7 @@
|
||||||
"npm:eslint-plugin-svelte@^3.13.1",
|
"npm:eslint-plugin-svelte@^3.13.1",
|
||||||
"npm:eslint@^9.39.2",
|
"npm:eslint@^9.39.2",
|
||||||
"npm:globals@^16.5.0",
|
"npm:globals@^16.5.0",
|
||||||
|
"npm:mdsvex@~0.12.6",
|
||||||
"npm:prettier-plugin-svelte@^3.4.1",
|
"npm:prettier-plugin-svelte@^3.4.1",
|
||||||
"npm:prettier@^3.7.4",
|
"npm:prettier@^3.7.4",
|
||||||
"npm:svelte-check@^4.3.5",
|
"npm:svelte-check@^4.3.5",
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,8 @@
|
||||||
"lint": "eslint ."
|
"lint": "eslint ."
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"daisyui": "^5.5.14"
|
"daisyui": "^5.5.14",
|
||||||
|
"mdsvex": "^0.12.6"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@eslint/compat": "^1.4.1",
|
"@eslint/compat": "^1.4.1",
|
||||||
|
|
|
||||||
|
|
@ -26,10 +26,10 @@
|
||||||
</aside>
|
</aside>
|
||||||
<nav>
|
<nav>
|
||||||
<p class="footer-title">Services</p>
|
<p class="footer-title">Services</p>
|
||||||
<div>
|
<!-- <div> -->
|
||||||
<a class="link link-hover" href="/register">Register</a> /
|
<a class="link link-hover" href="/register">Register</a>
|
||||||
<a class="link link-hover" href="/login">Log in</a>
|
<a class="link link-hover" href="/login">Log in</a>
|
||||||
</div>
|
<!-- </div> -->
|
||||||
{#if auth.isAuthenticated}
|
{#if auth.isAuthenticated}
|
||||||
<a class="link link-hover" href="/dashboard/register-domain">Register a domain</a>
|
<a class="link link-hover" href="/dashboard/register-domain">Register a domain</a>
|
||||||
{:else}
|
{:else}
|
||||||
|
|
@ -42,6 +42,7 @@
|
||||||
<a class="link link-hover" href="/">Home</a>
|
<a class="link link-hover" href="/">Home</a>
|
||||||
<a class="link link-hover" href="/about">About</a>
|
<a class="link link-hover" href="/about">About</a>
|
||||||
<a class="link link-hover" href="/faq">Frequently asked questions</a>
|
<a class="link link-hover" href="/faq">Frequently asked questions</a>
|
||||||
|
<a class="link link-hover" href="/blog">Blogs</a>
|
||||||
</nav>
|
</nav>
|
||||||
<nav>
|
<nav>
|
||||||
<p class="footer-title">Legal</p>
|
<p class="footer-title">Legal</p>
|
||||||
|
|
|
||||||
|
|
@ -31,7 +31,7 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="backdrop-blur bg-white/6 fixed navbar shadow-sm top-0 z-40 py-0" id="main-navbar">
|
<div class="backdrop-blur bg-white/6 fixed navbar shadow-sm top-0 z-40 py-0" id="main-navbar">
|
||||||
<div class="navbar-start">
|
<div class="navbar-start md:min-w-60">
|
||||||
{#if auth.isAuthenticated || isMobile}
|
{#if auth.isAuthenticated || isMobile}
|
||||||
<button aria-label="toggle side menu" onclick={() => {sideMenuOpen = !sideMenuOpen}}>
|
<button aria-label="toggle side menu" onclick={() => {sideMenuOpen = !sideMenuOpen}}>
|
||||||
<ul class="menu p-0"><li>
|
<ul class="menu p-0"><li>
|
||||||
|
|
@ -43,11 +43,12 @@
|
||||||
{/if}
|
{/if}
|
||||||
<ul class="menu pl-0"><li><a href="/" class="text-xl font-semibold">HexName</a></li></ul>
|
<ul class="menu pl-0"><li><a href="/" class="text-xl font-semibold">HexName</a></li></ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="navbar m-0 w-100">
|
<div class="navbar m-0 md:min-w-50 p-0">
|
||||||
<ul class="menu menu-horizontal not-md:hidden m-auto justify-center items-center">
|
<ul class="menu menu-horizontal not-md:hidden m-auto justify-center items-center">
|
||||||
<li><a href="/">Home</a></li>
|
<li><a href="/">Home</a></li>
|
||||||
<li><a href="/about">About us</a></li>
|
<li><a href="/about">About us</a></li>
|
||||||
<li><a href="/faq">FAQ</a></li>
|
<li><a href="/faq">FAQ</a></li>
|
||||||
|
<li><a href="/blog">Blogs</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="navbar-end">
|
<div class="navbar-end">
|
||||||
|
|
@ -80,9 +81,9 @@
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
{:else}
|
{:else}
|
||||||
<div class="gap-4 flex">
|
<div class="xs:gap-4 flex">
|
||||||
<a href="/register"><button style="box-shadow: 0 0 10px rgba(0,0,0,0.6)" class="btn btn-primary break-keep whitespace-nowrap rounded-lg">Create an account</button></a>
|
<a href="/register"><button style="box-shadow: 0 0 10px rgba(0,0,0,0.6)" class="btn btn-primary break-keep whitespace-nowrap rounded-lg">Create an account</button></a>
|
||||||
<a href="/login"><button style="box-shadow: 0 0 10px rgba(0,0,0,0.6)" class="btn btn-outline btn-secondary whitespace-nowrap border-2 rounded-lg">Log in</button></a>
|
<a href="/login"><button style="box-shadow: 0 0 10px rgba(0,0,0,0.6)" class="btn btn-outline btn-secondary whitespace-nowrap border-2 rounded-lg not-xs:hidden">Log in</button></a>
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -28,6 +28,7 @@
|
||||||
<a href="/">Home</a>
|
<a href="/">Home</a>
|
||||||
<a href="/about">About us</a>
|
<a href="/about">About us</a>
|
||||||
<a href="/faq">FAQ</a>
|
<a href="/faq">FAQ</a>
|
||||||
|
<a href="/blog">Blogs</a>
|
||||||
</li>
|
</li>
|
||||||
{#if auth.isAuthenticated}
|
{#if auth.isAuthenticated}
|
||||||
<div class="sm:hidden divider m-0"></div>
|
<div class="sm:hidden divider m-0"></div>
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,107 @@
|
||||||
|
---
|
||||||
|
title: Essential DNS records for mailservers explained
|
||||||
|
subtitle: How to set up all essential DNS records for reliable mail delivery
|
||||||
|
description: Learn which DNS records are required for a functional mailserver, how to configure them, and get best-practice tips for A, AAAA, MX, SPF, DKIM, and DMARC records.
|
||||||
|
---
|
||||||
|
|
||||||
|
# All DNS records needed for a functional mailserver
|
||||||
|
|
||||||
|
Setting up your own mailserver can sound intimidating, but ensuring the right Domain Name System (DNS) records are in place is essential for making sure emails are delivered and not rejected or flagged as spam.
|
||||||
|
|
||||||
|
Here, we’ll walk through every DNS record type that’s necessary and relevant security records for a reliable and standards-compliant mail system.
|
||||||
|
|
||||||
|
## A and AAAA records: pointing to your mailserver
|
||||||
|
|
||||||
|
**A records** (Address records) map a domain or subdomain to an IPv4 address, while **AAAA records** do the same for IPv6 addresses. These are crucial, as the server where your mailserver runs must have its address resolvable.
|
||||||
|
|
||||||
|
Example A record:
|
||||||
|
```
|
||||||
|
mx.example.hexname.com. A 198.51.100.42
|
||||||
|
```
|
||||||
|
Example AAAA record:
|
||||||
|
```
|
||||||
|
mx.example.hexname.com. AAAA 2001:db8:abcd:1234::42
|
||||||
|
```
|
||||||
|
Tips:
|
||||||
|
- Use `mx.example.hexname.com` (not your root domain) to separate mailserver traffic.
|
||||||
|
- For better compatability, use both A and AAAA records.
|
||||||
|
|
||||||
|
## MX records: announcing where to deliver email
|
||||||
|
|
||||||
|
**MX records** (Mail Exchanger records) specify which hosts should receive email for your domain. The record includes a priority (lower numbers mean higher priority) and points to a hostname that must have an A or AAAA record.
|
||||||
|
|
||||||
|
Example MX record:
|
||||||
|
```
|
||||||
|
example.hexname.com. MX 10 mx.example.hexname.com.
|
||||||
|
```
|
||||||
|
- Use only hostnames (like `mx.example.hexname.com`), never direct IPs, for the value.
|
||||||
|
- You can set multiple MX records with varying priority for failover. This ensures that if your primary mailserver has downtime, the second one can take over.
|
||||||
|
|
||||||
|
> Having a backup mailserver is not *so* important since email implements retries with incremental backoffs. So if a delivery to your one and only mailserver fails, it will be retried over the course of the day and the week.
|
||||||
|
|
||||||
|
## TXT records: SPF, DKIM, and DMARC
|
||||||
|
|
||||||
|
TXT records can be used for pretty much anything. Here they're used in critical mail authentication methods: SPF, DKIM, and DMARC. These reduce spam and prevent spoofing.
|
||||||
|
|
||||||
|
### Sender Policy Framework (SPF)
|
||||||
|
|
||||||
|
SPF specifies which mailservers are authorized to send for your domain. This is useful if you're allowing other mailservers to send mail on your behalf for deliverability/marketing reasons.
|
||||||
|
|
||||||
|
Its value is placed in a TXT record:
|
||||||
|
|
||||||
|
```
|
||||||
|
example.hexname.com. TXT "v=spf1 a mx -all"
|
||||||
|
```
|
||||||
|
Meaning:
|
||||||
|
- `a` allows the A/AAAA IPs of `example.hexname.com` to send emails
|
||||||
|
- `mx` allows the MX servers for the domain (so, `mx.example.hexname.com`)
|
||||||
|
- `-all` means "fail if the previous conditioned didn't match"
|
||||||
|
|
||||||
|
> A domain can only have one SPF TXT record. The rest will be ignored.
|
||||||
|
|
||||||
|
### DomainKeys Identified Mail (DKIM)
|
||||||
|
|
||||||
|
DKIM lets your server sign outgoing emails with a cryptographic key, which recipients can verify via a public key published in your DNS (DKIM).
|
||||||
|
|
||||||
|
The exact steps for acquiring the record depend on your mail software, but here is a general example:
|
||||||
|
|
||||||
|
```
|
||||||
|
default._domainkey.example.hexname.com. TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkq..."
|
||||||
|
```
|
||||||
|
- `default` is the selector and can be any word set by your mailserver config
|
||||||
|
- The `p=` value is your public key
|
||||||
|
|
||||||
|
You can often find DKIM keys and setup instructions in your mailserver's admin panel, or CLI tools.
|
||||||
|
|
||||||
|
### Domain-based Message Authentication, Reporting, and Conformance (DMARC)
|
||||||
|
|
||||||
|
DMARC tells receiving mailservers how to handle mail that fails SPF, DKIM, or both, and can provide reporting to help you discover misconfigurations.
|
||||||
|
|
||||||
|
An example of a strong DMARC policy is:
|
||||||
|
```
|
||||||
|
_dmarc.example.hexname.com. TXT "v=DMARC1; p=reject; rua=mailto:dmarc-reports@example.hexname.com"
|
||||||
|
```
|
||||||
|
- `p=reject` can also be `none` (for testing) or `quarantine` (to send the failing emails into quarantine).
|
||||||
|
- `rua=` specifies an email address for DMARC aggregate reports. The recipient is usually not a person, but rather an automated service that provides reports in a human-readable format.
|
||||||
|
|
||||||
|
> DMARC reports usually arrive as XML file attachments, therefore they're hard to parse by humans. Plenty of free tools exist like [Cloudflare DMARC Management](https://developers.cloudflare.com/dmarc-management/) or [Postmark](https://dmarc.postmarkapp.com/) that send you summaries of the aggregate reports.
|
||||||
|
|
||||||
|
## Filling your DNS records
|
||||||
|
|
||||||
|
If using a DNS service like <a href=https://hexname.com>HexName.com</a>, you can register a subdomain (like `example.hexname.com`), create an `mx` record (such as `mx.example.hexname.com`), and add the above A, AAAA, MX, and TXT records. Ensure each record is entered precisely.
|
||||||
|
|
||||||
|
A complete (minimal) set for secure mail delivery:
|
||||||
|
- A/AAAA records pointing to your mailserver's IP
|
||||||
|
- MX record on `example.hexname.com` pointing to `mx.example.hexname.com`
|
||||||
|
- SPF TXT on `example.hexname.com` with the contents `"v=spf1 a mx -all"`
|
||||||
|
- DKIM TXT on `default._domainkey.example.hexname.com`
|
||||||
|
- DMARC TXT on `_dmarc.example.hexname.com` with the contents `v=DMARC1; p=reject; rua=mailto:dmarc-reports@example.hexname.com`
|
||||||
|
|
||||||
|
These records ensure your mail can both arrive and be accepted by most of the world.
|
||||||
|
|
||||||
|
Many free online "mailserver tester" tools exist, letting you double-check your mailserver configuration. Our recommendations are:
|
||||||
|
- [MxToolBox's SMTP diagnostic tool](https://mxtoolbox.com/diagnostic.aspx)
|
||||||
|
- [Mail Tester](https://www.mail-tester.com/) - to check the "spammyness" of your mailserver
|
||||||
|
- And many others!
|
||||||
|
|
||||||
|
After you're done with the basics, you can look into MTA-STS, TLS reporting, SPF reporting as well as methods to help ensure decent deliverability.
|
||||||
|
|
@ -0,0 +1,123 @@
|
||||||
|
---
|
||||||
|
title: What is MTA-STS and how to set it up effortlessly
|
||||||
|
subtitle: Understanding MTA strict transport security and its full syntax
|
||||||
|
description: Learn how MTA-STS works to secure email transfer. See full config syntax, real-world examples, and potential risks without it. Discover practical tips and insights for DNS and TLS reporting.
|
||||||
|
---
|
||||||
|
|
||||||
|
# What's MTA-STS, why it makes email routing safer, amd how to set it up
|
||||||
|
|
||||||
|
Modern email uses Transfer Layer Security (TLS) to keep messages safe from prying eyes as they move between mail servers. But did you know that, without additional safeguards, TLS can often be bypassed? This is where Mail Transfer Agent Strict Transport Security (MTA-STS) comes in.
|
||||||
|
|
||||||
|
## What is MTA-STS?
|
||||||
|
|
||||||
|
MTA-STS is a standard designed to protect Simple Mail Transfer Protocol (SMTP) connections between mail servers from downgrade and Man-in-the-Middle (MitM) attacks. It enforces that inbound email for your domain is only accepted over authenticated TLS connections.
|
||||||
|
|
||||||
|
Even though SMTP with STARTTLS has been around for years, it’s not foolproof - attackers can trick servers into falling back to insecure connections unless you use like MTA-STS.
|
||||||
|
|
||||||
|
## How does mail transfer between servers?
|
||||||
|
|
||||||
|
Email messages sent from one domain to another travel over the public internet. First, the sender's server looks up the recipient’s server using MX (Mail Exchange) records.
|
||||||
|
|
||||||
|
Then, optionally, both servers attempt to establish a TLS connection using STARTTLS. Without further protection, attackers can downgrade this connection, making email transfer vulnerable.
|
||||||
|
|
||||||
|
## What are the risks without MTA-STS?
|
||||||
|
|
||||||
|
Without MTA-STS, email can be silently intercepted by attackers who force a connection downgrade or present fake certificates during a MitM attack. As a result your email can be read in clear text by third parties. MTA-STS ensures the sending server verifies it is using a secure, valid TLS connection, or the transition fails.
|
||||||
|
|
||||||
|
## Full syntax explained
|
||||||
|
|
||||||
|
The MTA-STS policy is a plain text file published at a fixed location on your web server:
|
||||||
|
|
||||||
|
`https://mta-sts.example.com/.well-known/mta-sts.txt`
|
||||||
|
|
||||||
|
The minimum required fields:
|
||||||
|
|
||||||
|
```
|
||||||
|
version: STSv1
|
||||||
|
mode: enforce
|
||||||
|
mx: mx1.example.com
|
||||||
|
max_age: 86400
|
||||||
|
```
|
||||||
|
|
||||||
|
- `version`: Must be `STSv1`. As of now, there are no other versions.
|
||||||
|
- `mode`: Supported values are `enforce`, `testing`, or `none`.
|
||||||
|
- `mx`: One or more MX hostnames. Wildcards are also supported, like `*.hexname.com`.
|
||||||
|
- `max_age`: Time in seconds for which the policy is valid (86400 is one day).
|
||||||
|
|
||||||
|
You can check MTA-STS policies in the browser, e.g.: <a rel="nofollow noopener" target="_blank" href="https://mta-sts.gmail.com/.well-known/mta-sts.txt">https://mta-sts.gmail.com/.well-known/mta-sts.txt</a>
|
||||||
|
|
||||||
|
```
|
||||||
|
version: STSv1
|
||||||
|
mode: enforce
|
||||||
|
mx: gmail-smtp-in.l.google.com
|
||||||
|
mx: *.gmail-smtp-in.l.google.com
|
||||||
|
max_age: 86400
|
||||||
|
```
|
||||||
|
|
||||||
|
## DNS record for MTA-STS
|
||||||
|
|
||||||
|
A small but important TXT record in DNS tells mailservers that your domain uses MTA-STS - and which version they should check:
|
||||||
|
|
||||||
|
For Gmail at `_mta-sts.gmail.com`, it looks like this:
|
||||||
|
```
|
||||||
|
_mta-sts.gmail.com. 300 IN TXT "v=STSv1; id=20190429T010101;"
|
||||||
|
```
|
||||||
|
|
||||||
|
The `id` can be any unique string. When you update your policy file, increment the `id` to signal other providers to fetch the new policy.
|
||||||
|
> It's considered "best practice" to use a datetime in the `id` since it's guaranteed to be unique.
|
||||||
|
|
||||||
|
## TLS reporting: get feedback on failures
|
||||||
|
|
||||||
|
SMTP TLS Reporting (TLS-RPT) allows you to receive email reports if another mail server has issues delivering securely to your domain.
|
||||||
|
|
||||||
|
Gmail has this record in place for `_smtp._tls.gmail.com`:
|
||||||
|
```
|
||||||
|
_smtp._tls.gmail.com. 300 IN TXT "v=TLSRPTv1;rua=mailto:sts-reports@google.com"
|
||||||
|
```
|
||||||
|
|
||||||
|
This means the specified email address receives reports about failed or downgraded connections, as well as successful ones.
|
||||||
|
|
||||||
|
> Since the reports are in JSON, they're meant for automated reporting tools. Look up "TLS-RPT reporting" for more info.
|
||||||
|
|
||||||
|
## Practical example
|
||||||
|
|
||||||
|
If you host your DNS with <a href=https://hexname.com>HexName</a> and your mail server is `mx.example.hexname.com`. You would:
|
||||||
|
|
||||||
|
1. Publish your policy at `https://mta-sts.example.hexname.com/.well-known/mta-sts.txt`, e.g.:
|
||||||
|
|
||||||
|
```
|
||||||
|
version: STSv1
|
||||||
|
mode: enforce
|
||||||
|
mx: mx.example.hexname.com
|
||||||
|
max_age: 86400
|
||||||
|
```
|
||||||
|
|
||||||
|
> Hint: This can easily be done by your reverse-proxy or [Cloudflare Workers](https://developers.cloudflare.com/workers/) with this template:
|
||||||
|
|
||||||
|
```
|
||||||
|
export default {
|
||||||
|
async fetch(request, env, ctx) {
|
||||||
|
const body =
|
||||||
|
`version: STSv1
|
||||||
|
mode: enforce
|
||||||
|
mx: mx.example.hexname.com
|
||||||
|
max_age: 86400`;
|
||||||
|
|
||||||
|
return new Response(body);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Add the DNS TXT record at `_mta-sts.example.hexname.com.`
|
||||||
|
```
|
||||||
|
_mta-sts.example.hexname.com. 3600 IN TXT "v=STSv1; id=20240612;"
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Optionally, set up TLS-RPT for reporting:
|
||||||
|
```
|
||||||
|
_smtp._tls.example.hexname.com. 3600 IN TXT "v=TLSRPTv1; rua=mailto:tls-reports@example.hexname.com"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Summary
|
||||||
|
|
||||||
|
MTA-STS is straightforward to set up but adds much-needed security to your domain’s inbound email - so no one will be sniffing your emails.
|
||||||
|
|
@ -0,0 +1,81 @@
|
||||||
|
---
|
||||||
|
title: "All mail protocols/ports explained: SMTP, IMAP, submission, STARTTLS, JMAP"
|
||||||
|
subtitle: A practical guide to email server ports and their specific roles
|
||||||
|
description: This article outlines the most important email ports and protocols, explaining the purposes of each, their security implications, and how they fit into today's email infrastructure. Get practical information for configuring mail services and understanding the underlying protocols.
|
||||||
|
---
|
||||||
|
|
||||||
|
# Email protocols clarified: a modern look at SMTP, IMAP, and JMAP
|
||||||
|
|
||||||
|
When configuring an email server, opening the firewall or troubleshooting delivery issues, knowledge about which ports do what is essential. This guide explains the key ports for sending and retrieving email, covers both encrypted and unencrypted traffic, and clarifies how service roles have shifted over the years.
|
||||||
|
|
||||||
|
## SMTP: the backbone of email delivery
|
||||||
|
|
||||||
|
SMTP (simple mail transfer protocol) forms the core of email transmission between servers and, in some cases, from clients to servers. Its role has evolved with internet standards and rising security needs.
|
||||||
|
|
||||||
|
- **Port 25**: The original and still primary port for server-to-server SMTP traffic. When a message is relayed between a mailserver and a remote mail host, port 25 is used. The encryption extension STARTTLS can upgrade this connection, but is not always enforced.
|
||||||
|
|
||||||
|
> Due to its abuse by spammers, many ISPs deliberately block client outbound access to port 25, making its use mostly server-exclusive today.
|
||||||
|
|
||||||
|
- **Port 587**: Known as the "submission" port. Designed explicitly for end-users (email clients like Thunderbird, Roundcube, etc.) submitting outbound mail to their provider. Unlike port 25, port 587 **requires** authentication and is expected to use STARTTLS for security. Thus, everyday users typically configure their outgoing (SMTP) settings to use port 587.
|
||||||
|
|
||||||
|
- **Port 465**: Once used unofficially as "smtps" (SMTP over SSL/TLS), this port was deprecated but later reinstated by the IANA. Some providers offer it as a way for clients to connect using implicit SSL/TLS from the outset. While port 465 isn't as widely used as 587, it still offers direct, always-encrypted submission for some clients.
|
||||||
|
|
||||||
|
## IMAP and its alternatives: reading your mail
|
||||||
|
|
||||||
|
IMAP (internet message access protocol) allows mail clients to retrieve messages from a central server, maintaining synchronization across devices.
|
||||||
|
|
||||||
|
- **Port 143**: The standard IMAP port. Connections here start unencrypted and, like SMTP, can be "upgraded" to encrypted status using STARTTLS. For historical and compatibility reasons, this port still sees significant use, though encryption is strongly encouraged.
|
||||||
|
|
||||||
|
- **Port 993**: Secure IMAP (commonly called IMAPS) runs here. It uses implicit TLS, meaning the connection starts out encrypted. This is the go-to for secure email retrieval in most client software today.
|
||||||
|
|
||||||
|
### Email client configuration
|
||||||
|
|
||||||
|
A typical configuration for fetching your mail from the mailserver `mx.example.com` looks like:
|
||||||
|
|
||||||
|
```
|
||||||
|
Incoming IMAP server: mx.example.com
|
||||||
|
Port: 993
|
||||||
|
Security: SSL/TLS
|
||||||
|
Username: you@example.com
|
||||||
|
Password: your-super-secure-password
|
||||||
|
```
|
||||||
|
|
||||||
|
The config for sending emails:
|
||||||
|
```
|
||||||
|
Outgoing SMTP server: mx.example.com
|
||||||
|
Port: 587
|
||||||
|
Security: STARTTLS (or "require encryption")
|
||||||
|
Username: you@example.com
|
||||||
|
Password: your-super-secure-password
|
||||||
|
```
|
||||||
|
|
||||||
|
## JMAP: a modern approach
|
||||||
|
|
||||||
|
[JMAP](https://jmap.io/) (JSON meta application protocol) is a greatly simplified protocol by Fastmail that has not yet seen widespread adoption. Despite it similifying APIs, overly complicated exchange/upgrade protocols, increasing flexibility, and requiring encryption from the start, it hasn't been adopted by the email giants like Gmail, Outlook, etc.
|
||||||
|
|
||||||
|
JMAP isn’t tied to traditional email ports - it leverages HTTPS for communication, allows clients to manage messages, calendars, and contacts using JSON formatting. JMAP adoption would reduce bandwidth and simplify multi-device synchronization, especially over mobile networks.
|
||||||
|
|
||||||
|
> Regardless, the open-source mailserver <a href="https://stalw.art/">Stalwart Mail</a> supports JMAP out of the box. This is also the mailserver we recommend for self-hosters because of privacy and security reasons, as well as ease of use and flexibility.
|
||||||
|
|
||||||
|
[It is speculated that JMAP will never see widespread adoption](https://news.ycombinator.com/item?id=42493172) and suffers from its flaws, but a modern email protocol that's not plagued by past bad design decisions is long overdue.
|
||||||
|
|
||||||
|
Providers supporting JMAP typically direct you to a URL such as:
|
||||||
|
|
||||||
|
```
|
||||||
|
https://example.hexname.com/jmap
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
## Summary
|
||||||
|
|
||||||
|
| Port | Protocol | Use Case | Encryption |
|
||||||
|
|------|------------|---------------------------------|----------------------------|
|
||||||
|
| 25 | SMTP | Server-to-server mail delivery | STARTTLS optional |
|
||||||
|
| 587 | Submission | Client outgoing mail | STARTTLS required |
|
||||||
|
| 465 | SSMTPS | Legacy/alternate encrypted SMTP | SSL/TLS required |
|
||||||
|
| 143 | IMAP | Client mail retrieval | STARTTLS optional |
|
||||||
|
| 993 | IMAPS | Secure mail retrieval | SSL/TLS required |
|
||||||
|
| 443 | JMAP/HTTPS | Modern mail access (web API) | SSL required |
|
||||||
|
|
||||||
|
|
||||||
|
If you need to set up DNS records for your mailserver without nonsense, and fast, you can use a service like <a href=https://hexname.com>HexName</a> to own your mail infrastructure.
|
||||||
|
|
@ -0,0 +1,41 @@
|
||||||
|
---
|
||||||
|
title: "DDNS explained: Tutorial, usage, and importance for homelabs"
|
||||||
|
subtitle: Understanding DDNS, CGNAT, and network accessibility for homelabbers
|
||||||
|
description: Learn how DDNS helps homelab enthusiasts with external IPv4 addresses, why Carrier-Grade NAT blocks DDNS, and how to check your network setup and troubleshoot accessibility issues.
|
||||||
|
---
|
||||||
|
|
||||||
|
# Why Dynamic DNS is essential for homelab setups with a public IPv4
|
||||||
|
|
||||||
|
Homelabbers running self-hosted services like game servers, file shares, or mail often face the challenge of connecting reliably from outside their home network. This is where DDNS (Dynamic Domain Name System, or DynDNS) becomes a key tool - especially for those with public IPv4 addresses. However, DDNS does not work the same for everyone, and Carrier-Grade NATs (CGNAT) often create limitations.
|
||||||
|
|
||||||
|
## What is DDNS?
|
||||||
|
|
||||||
|
DDNS allows you to automatically update DNS records with your dynamic external IPv4 address, so you can access your services easily using a domain name instead of memorizing IPs. If your home ISP gives you a non-static (dynamic) IP and you want to access `server.example.hexname.com`, DDNS providers keep this domain pointed to your current public IP.
|
||||||
|
|
||||||
|
For example, by creating an A record for `home.example.hexname.com` at a service like <a href="https://hexname.com">HexName</a>, and by periodically running a simple script on your home network, anyone connecting to this hostname will reach your actual home server - even if your IP changes every day.
|
||||||
|
|
||||||
|
## How CGNATs prevents DDNS from working
|
||||||
|
|
||||||
|
Many ISPs now use Carrier-Grade NATs to conserve limited IPv4 space. Instead of assigning a unique public address to each customer, ISPs put many users behind a single external IP. Your router gets a local address (like `100.64.0.15`), and only the ISP’s shared gateway gets a publically routable IP address.
|
||||||
|
|
||||||
|
Because of this extra layer, DDNS updates the DNS record to point to your ISP’s shared IP. Connections from the outside will never reach your router directly, since the ISP's router won't know which host is meant by the packet. This is why DDNS is ineffective behind CGNAT, and cannot open inbound connections for you, no matter the DNS configuration.
|
||||||
|
|
||||||
|
## How to check if you have a public IPv4
|
||||||
|
|
||||||
|
To confirm you’re not behind CGNAT:
|
||||||
|
|
||||||
|
1. Log in to your router’s web interface. This is usually at `192.168.1.1` or `192.168.0.1`.
|
||||||
|
2. Find the section labeled "Status," "Internet," or "WAN" (Wide Area Network).
|
||||||
|
3. Look for your displayed "external IPv4 address".
|
||||||
|
|
||||||
|
To verify, look up “What is my IP” online and compare it with the router’s external IPv4. If they match, you have a "real" publically routable IP and DDNS will work as expected.
|
||||||
|
|
||||||
|
> Otherwise if the external IP in the router's interface is in the private range (e.g., `100.64.0.0/10`, `10.0.0.0/8`, `192.168.0.0/16`, or `172.16.0.0/12`), this also means that you're behind some sort of CGNAT.
|
||||||
|
|
||||||
|
> Some ISPs offer public IPs as a paid feature, so it’s worth asking them if you'd benefit from DDNS.
|
||||||
|
|
||||||
|
## Example DDNS usage in a homelab
|
||||||
|
|
||||||
|
If you have a true public IPv4, register a subdomain like `example.hexname.com` on <a href="https://hexname.com">HexName</a>, and set up a DDNS script to keep your record updated. This makes it possible to access your homelab remotely, run services, or even share files with friends securely, without worrying about changing IPs, proxying, or complicated URL sharing.
|
||||||
|
|
||||||
|
Homelabbing is the backbone of private cloud, self-hosted apps, and learning real-world networking—knowing your IP setup is the first step to an accessible, flexible lab.
|
||||||
|
|
@ -0,0 +1,37 @@
|
||||||
|
---
|
||||||
|
title: Why VPS providers block outgoing email ports by default
|
||||||
|
subtitle: Understanding default SMTP port restrictions on VPS hosting
|
||||||
|
description: Many VPS providers block outgoing email ports to mitigate spam and prevent IP blacklisting. This article explains the technical reasons, real-world consequences, and industry best practices for managing email delivery on virtual servers.
|
||||||
|
---
|
||||||
|
|
||||||
|
# Why VPS providers block outgoing email ports by default due to spam
|
||||||
|
|
||||||
|
Email remains a core method of internet communication. Its original technical design predates many modern safeguards, making it simple to send - but also easily abused for spam. This article covers why VPS (virtual private server) hosting companies commonly restrict outgoing ports related to email, like `25`, `465`, and `587`, and what users can do about it.
|
||||||
|
|
||||||
|
## How email spam developed
|
||||||
|
|
||||||
|
The Simple Mail Transfer Protocol (SMTP) forms the backbone of email and was designed decades ago with minimal barriers to sending messages. Because of this, automated tools can send massive volumes of unsolicited emails with little technical difficulty or computational cost.
|
||||||
|
|
||||||
|
Historically, this resulted in abuse by senders distributing unwanted advertising, scams, and phishing attempts to every address they could find. This, in turn, led developers and administrators to invent anti-spam mechanisms to preserve the reliability and usability of email.
|
||||||
|
|
||||||
|
Ironically, the [first-ever email spam](https://www.templetons.com/brad/spam/spam25.html) was sent by an MIT sysadmin of CTSS in 1971 to hundreds of ARPANET users warning about email spam that began with the sentence:
|
||||||
|
> "There is no way to peace. Peace is the way."
|
||||||
|
|
||||||
|
## Spam blocklists and mailserver reputation
|
||||||
|
|
||||||
|
To fight junk mail, the industry relies on publicly available blocklists. If a mailserver's IP address is reported or detected as sending spam, it is added to these lists and may be denied by receiving servers. Some key features:
|
||||||
|
|
||||||
|
- **Reputation systems**: Large email providers (Gmail, Outlook, iCloud Mail, Yahoo, etc.) maintain internal tracking of sender reputation, making delivery difficult for servers with histories of abuse.
|
||||||
|
- **Blocklist checks**: Publically available spam blocklists maintain a list of IPs that send out unwanted emails in large amounts. You can use free online services to check if your server's IP is on these lists. They usually include options to appeal to the block.
|
||||||
|
|
||||||
|
For example, after obtaining an IP address from your hosting provider, you can check your mailserver's IP reputation with the popular lists such as [Spamhaus](https://www.spamhaus.org/ip-reputation/) or [MXToolBox's free tool](https://mxtoolbox.com/blacklists.aspx) and appeal to the blocklists directly.
|
||||||
|
|
||||||
|
## VPS providers and port restrictions
|
||||||
|
|
||||||
|
Due to the ease of obtaining new IPs and cheap temrporary servers, spammers have historically used them to launch mass email campaigns. Nowadays, to limit abuse, most VPS providers block outgoing traffic on SMTP standard ports (such as `25`, `465`) by default.
|
||||||
|
|
||||||
|
If your server needs to send legitimate email, contact your VPS provider to request port unblocking.
|
||||||
|
|
||||||
|
You can also use an SMTP relay service, which handles hosting the mailserver for you. This isn't really a viable option though if you're looking to self-host your mailserver, and learn about the intricacies of email.
|
||||||
|
|
||||||
|
For users needing to get a mailserver up and running simply and fast, free DNS hosting services like <a href="https://hexname.com">HexName</a> allow registration of subdomains (like `example.hexname.com`) and creation of necessary DNS entries such as MX records for mail handling, TXT for SPF/DKIM, SRV, and so on.
|
||||||
|
|
@ -9,12 +9,15 @@
|
||||||
import { getSubdomains, getBaseDomains } from '$lib/domains.svelte';
|
import { getSubdomains, getBaseDomains } from '$lib/domains.svelte';
|
||||||
import Footer from '$lib/Footer.svelte';
|
import Footer from '$lib/Footer.svelte';
|
||||||
import { page } from '$app/state';
|
import { page } from '$app/state';
|
||||||
import { afterNavigate } from '$app/navigation';
|
import { afterNavigate, goto } from '$app/navigation';
|
||||||
|
|
||||||
let { children } = $props();
|
let { children } = $props();
|
||||||
|
|
||||||
onMount(async () => {
|
onMount(async () => {
|
||||||
await initUserAuthStatus();
|
await initUserAuthStatus();
|
||||||
|
if (isDashboard && !auth.isAuthenticated) {
|
||||||
|
goto("/login");
|
||||||
|
}
|
||||||
getBaseDomains();
|
getBaseDomains();
|
||||||
|
|
||||||
if (auth.isAuthenticated) {
|
if (auth.isAuthenticated) {
|
||||||
|
|
|
||||||
|
|
@ -110,12 +110,12 @@
|
||||||
|
|
||||||
<div class="grid grid-cols-1 lg:grid-cols-[1fr_auto_1fr] overflow-none -mt-4 lg:my-8 justify-items-center items-center not-lg:max-w-120 max-w-full justify-items-stretch">
|
<div class="grid grid-cols-1 lg:grid-cols-[1fr_auto_1fr] overflow-none -mt-4 lg:my-8 justify-items-center items-center not-lg:max-w-120 max-w-full justify-items-stretch">
|
||||||
<div use:slideIn class="flex flex-col stats w-50 max-w-72 h-100 not-lg:-mt-14 lg:pt-10 opacity-0 -translate-x-30 lg:-translate-x-60 ease-out transition-[transform, opacity] will-change-transform duration-1300 not-lg:order-1">
|
<div use:slideIn class="flex flex-col stats w-50 max-w-72 h-100 not-lg:-mt-14 lg:pt-10 opacity-0 -translate-x-30 lg:-translate-x-60 ease-out transition-[transform, opacity] will-change-transform duration-1300 not-lg:order-1">
|
||||||
<div class="stat place-items-center">
|
<div class="stat place-items-center border-none">
|
||||||
<div class="stat-title">Our domains</div>
|
<div class="stat-title">Our domains</div>
|
||||||
<div class="stat-value">3</div>
|
<div class="stat-value">3</div>
|
||||||
<div class="stat-desc">Owned and operated</div>
|
<div class="stat-desc">Owned and operated</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="stat place-items-center pt-1">
|
<div class="stat place-items-center pt-1 border-none">
|
||||||
<div class="stat-title translate-y-3">Available subdomains</div>
|
<div class="stat-title translate-y-3">Available subdomains</div>
|
||||||
<div class="stat-value text-secondary text-6xl">∞</div>
|
<div class="stat-value text-secondary text-6xl">∞</div>
|
||||||
<div class="stat-desc text-secondary">Per domain</div>
|
<div class="stat-desc text-secondary">Per domain</div>
|
||||||
|
|
@ -154,12 +154,12 @@
|
||||||
</figure>
|
</figure>
|
||||||
|
|
||||||
<div use:slideIn class="flex flex-col stats w-50 max-w-72 h-100 not-lg:-mt-14 lg:pt-10 opacity-0 translate-x-30 lg:translate-x-60 ease-out transition-[transform, opacity] will-change-transform duration-1300 not-lg:order-1">
|
<div use:slideIn class="flex flex-col stats w-50 max-w-72 h-100 not-lg:-mt-14 lg:pt-10 opacity-0 translate-x-30 lg:translate-x-60 ease-out transition-[transform, opacity] will-change-transform duration-1300 not-lg:order-1">
|
||||||
<div class="stat place-items-center">
|
<div class="stat place-items-center border-none">
|
||||||
<div class="stat-title">Cost</div>
|
<div class="stat-title">Cost</div>
|
||||||
<div class="stat-value">0$</div>
|
<div class="stat-value">0$</div>
|
||||||
<div class="stat-desc">Forever free!</div>
|
<div class="stat-desc">Forever free!</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="stat place-items-center">
|
<div class="stat place-items-center border-none">
|
||||||
<div class="stat-title">DDNS support</div>
|
<div class="stat-title">DDNS support</div>
|
||||||
<div class="stat-value text-secondary">Yes</div>
|
<div class="stat-value text-secondary">Yes</div>
|
||||||
<div class="stat-desc text-secondary">A, AAAA records</div>
|
<div class="stat-desc text-secondary">A, AAAA records</div>
|
||||||
|
|
|
||||||
55
src/routes/blog/+page.svelte
Normal file
55
src/routes/blog/+page.svelte
Normal file
|
|
@ -0,0 +1,55 @@
|
||||||
|
<script lang="ts">
|
||||||
|
export let data;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<svelte:head>
|
||||||
|
<title>FAQ | HexName - Free, uncomplicated DNS management</title>
|
||||||
|
<meta property="og:title" content="FAQ | HexName - Free, uncomplicated DNS management">
|
||||||
|
<meta name="twitter:title" content="FAQ | HexName - Free, uncomplicated DNS management">
|
||||||
|
<meta name="description" content="Get answers for the most commonly asked questions about DNS/DynDNS/our services - so you can focus on what truly matters.">
|
||||||
|
<meta property="og:description" content="Get answers for the most commonly asked questions about DNS/DynDNS/our services - so you can focus on what truly matters.">
|
||||||
|
<meta name="twitter:description" content="Get answers for the most commonly asked questions about DNS/DynDNS/our services - so you can focus on what truly matters.">
|
||||||
|
<meta name="robots" content="index, follow">
|
||||||
|
</svelte:head>
|
||||||
|
|
||||||
|
<div class="flex flex-col items-center">
|
||||||
|
<div class="max-w-4xl m-4">
|
||||||
|
|
||||||
|
<div class="hero bg-base-200">
|
||||||
|
<div class="hero-content flex-col sm:flex-row">
|
||||||
|
<div class="w-full">
|
||||||
|
<h1 class="text-3xl font-bold">List of blogs</h1>
|
||||||
|
<div class="flex flex-col sm:flex-row items-center justify-center">
|
||||||
|
<div class="py-6 leading-8">
|
||||||
|
Learn about DNS/DynDNS records, email, mailservers, the internet, security, our services, and more!
|
||||||
|
</div>
|
||||||
|
<div class="mockup-code max-w-60 min-w-60 mx-4 not-sm:mb-6">
|
||||||
|
<pre data-prefix="$"><code>Question?</code></pre>
|
||||||
|
<pre data-prefix=">" class="text-warning"><code>Answering...</code></pre>
|
||||||
|
<pre data-prefix=">" class="text-success"><code>Done!</code></pre>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a href="/register" class="btn btn-primary w-full sm:w-40">Get started</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="divider"></div>
|
||||||
|
<h2 class="legend text-2xl font-bold p-4 m-4">Discover articles</h2>
|
||||||
|
|
||||||
|
<ul class="bg-base-200 rounded-box shadow-md">
|
||||||
|
{#each data.posts as post}
|
||||||
|
<li class="flex flex-col rounded-xl p-6 sm:p-8 border-b-5 border-primary">
|
||||||
|
<div class="mb-8 sm:mb-12">
|
||||||
|
<h3 class="text-xl mb-4">{post.title}</h3>
|
||||||
|
<div class="font-semibold opacity-60">{post.subtitle}</div>
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-col items-center sm:flex-row w-full">
|
||||||
|
<p class="list-col-wrap sm:mr-4">{post.description}</p>
|
||||||
|
<button class="btn btn-primary not-sm:mt-4 w-full ml-auto sm:w-35"><a href="/blog/{post.slug}">Read more...</a></button>
|
||||||
|
</div>
|
||||||
|
</li>
|
||||||
|
{/each}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
18
src/routes/blog/+page.ts
Normal file
18
src/routes/blog/+page.ts
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
import type { PageLoad } from './$types';
|
||||||
|
|
||||||
|
export const load: PageLoad = async () => {
|
||||||
|
const posts = Object.entries(
|
||||||
|
import.meta.glob('/src/lib/posts/*.md', { eager: true })
|
||||||
|
).map(([path, post]: any) => {
|
||||||
|
const slug = path.split('/').pop().replace('.md', '');
|
||||||
|
|
||||||
|
return {
|
||||||
|
slug,
|
||||||
|
title: post.metadata.title,
|
||||||
|
subtitle: post.metadata.subtitle,
|
||||||
|
description: post.metadata.description
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
return { posts };
|
||||||
|
};
|
||||||
45
src/routes/blog/[slug]/+page.svelte
Normal file
45
src/routes/blog/[slug]/+page.svelte
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
<script>
|
||||||
|
import Phone from '$lib/Phone.svelte';
|
||||||
|
|
||||||
|
export let data;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<svelte:head>
|
||||||
|
<title>{data.meta.title} | HexName</title>
|
||||||
|
<meta property="og:title" content="{data.meta.title} | HexName">
|
||||||
|
<meta name="twitter:title" content="{data.meta.title} | HexName">
|
||||||
|
<meta name="description" content="{data.meta.description}">
|
||||||
|
<meta property="og:description" content="{data.meta.description}">
|
||||||
|
<meta name="twitter:description" content="{data.meta.description}">
|
||||||
|
<meta name="robots" content="index, follow">
|
||||||
|
</svelte:head>
|
||||||
|
|
||||||
|
<div class="w-full">
|
||||||
|
<div class="flex flex-col justify-center items-center">
|
||||||
|
<article class="prose prose-blockquote:[&>p]:first-of-type:before:content-none prose-blockquote:[&>p]:last-of-type:after:content-none prose-a:text-accent prose-h1:bg-primary prose-h1:p-4 prose-h1:rounded-3xl prose-h1:text-center max-w-4xl m-4 p-4 sm:p-8 rounded bg-base-200">
|
||||||
|
<svelte:component this={data.content} />
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<div class="max-w-4xl mt-12 mb-0 m-4">
|
||||||
|
<div class="hero bg-base-200">
|
||||||
|
<div class="hero-content flex-col sm:flex-row">
|
||||||
|
<div class="w-full">
|
||||||
|
<h2 class="text-3xl font-bold">Like what you see?</h2>
|
||||||
|
<div class="flex flex-col sm:flex-row items-center justify-center">
|
||||||
|
<div class="py-6 leading-8">
|
||||||
|
Sign up now, register our premium domains, and manage DNS records - all forever for $0.00/month.
|
||||||
|
</div>
|
||||||
|
<div class="flex flex-row items-center px-38 sm:ml-12 sm:pl-35 not-sm:-mt-8 not-sm:translate-x-3 my-4 sm:-my-16">
|
||||||
|
<div class="scale-48 -m-45">
|
||||||
|
<Phone isRotated={true}/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<a href="/register" class="btn btn-primary w-full sm:w-40">Get started</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
18
src/routes/blog/[slug]/+page.ts
Normal file
18
src/routes/blog/[slug]/+page.ts
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
import { error } from '@sveltejs/kit';
|
||||||
|
|
||||||
|
export const load = async ({ params }) => {
|
||||||
|
const posts = import.meta.glob('/src/lib/posts/*.md');
|
||||||
|
|
||||||
|
const post = posts[`/src/lib/posts/${params.slug}.md`];
|
||||||
|
|
||||||
|
if (!post) {
|
||||||
|
throw error(404, 'Post not found');
|
||||||
|
}
|
||||||
|
|
||||||
|
const resolvedPost: any = await post();
|
||||||
|
|
||||||
|
return {
|
||||||
|
content: resolvedPost.default,
|
||||||
|
meta: resolvedPost.metadata
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
@ -8,12 +8,11 @@
|
||||||
<meta name="robots" content="noindex, nofollow">
|
<meta name="robots" content="noindex, nofollow">
|
||||||
</svelte:head>
|
</svelte:head>
|
||||||
|
|
||||||
<div class="text-primary-content max-w-7/9 sm:max-w-2/3 m-auto">
|
<div class="w-full">
|
||||||
<div class="m-8">
|
<div class="flex flex-col justify-center items-center">
|
||||||
<h1 class="text-4xl">Cookie policy</h1>
|
<article class="prose prose-blockquote:[&>p]:first-of-type:before:content-none prose-blockquote:[&>p]:last-of-type:after:content-none prose-a:text-accent prose-h1:bg-primary prose-h1:p-4 prose-h1:rounded-3xl prose-h1:text-center max-w-4xl m-4 p-4 sm:p-8 rounded bg-base-200">
|
||||||
|
<h1>Cookie policy</h1>
|
||||||
<p>Last updated January 09, 2026</p>
|
<p>Last updated January 09, 2026</p>
|
||||||
<hr>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
This Cookie Policy explains how HexName ("<strong>Company</strong>", "<strong>we</strong>", "<strong>us</strong>", or "<strong>our</strong>") uses cookies when you visit our website at <strong>hexname.com</strong> (the "<strong>Website</strong>").
|
This Cookie Policy explains how HexName ("<strong>Company</strong>", "<strong>we</strong>", "<strong>us</strong>", or "<strong>our</strong>") uses cookies when you visit our website at <strong>hexname.com</strong> (the "<strong>Website</strong>").
|
||||||
|
|
@ -23,17 +22,17 @@
|
||||||
We are committed to protecting your privacy. Our Website uses <strong>only one strictly necessary cookie</strong> and does <strong>not</strong> use cookies for analytics, marketing, advertising, tracking, or personalization purposes.
|
We are committed to protecting your privacy. Our Website uses <strong>only one strictly necessary cookie</strong> and does <strong>not</strong> use cookies for analytics, marketing, advertising, tracking, or personalization purposes.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">What are cookies?</h2>
|
<h2>What are cookies?</h2>
|
||||||
<p>
|
<p>
|
||||||
Cookies are small data files that are placed on your computer or mobile device when you visit a website. They are commonly used to enable core website functionality, such as user authentication and security.
|
Cookies are small data files that are placed on your computer or mobile device when you visit a website. They are commonly used to enable core website functionality, such as user authentication and security.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">Cookies we use</h2>
|
<h2>Cookies we use</h2>
|
||||||
<p>
|
<p>
|
||||||
We use a single first-party, essential cookie that is required for the secure operation of user accounts.
|
We use a single first-party, essential cookie that is required for the secure operation of user accounts.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Essential authentication cookie</h3>
|
<h3>Essential authentication cookie</h3>
|
||||||
<table>
|
<table>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
@ -61,7 +60,7 @@
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">Cookies we do not use</h2>
|
<h2>Cookies we do not use</h2>
|
||||||
<p>
|
<p>
|
||||||
HexName does <strong>not</strong> use:
|
HexName does <strong>not</strong> use:
|
||||||
</p>
|
</p>
|
||||||
|
|
@ -73,19 +72,21 @@
|
||||||
<li>Tracking pixels, web beacons, or similar technologies</li>
|
<li>Tracking pixels, web beacons, or similar technologies</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">How can I control cookies?</h2>
|
<h2>How can I control cookies?</h2>
|
||||||
<p>
|
<p>
|
||||||
Because we only use a strictly necessary cookie, it cannot be disabled through our Website. If you disable cookies entirely through your browser settings, you may not be able to log in or use authenticated features of the Website.
|
Because we only use a strictly necessary cookie, it cannot be disabled through our Website. If you disable cookies entirely through your browser settings, you may not be able to log in or use authenticated features of the Website.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">Updates to this Cookie Policy</h2>
|
<h2>Updates to this Cookie Policy</h2>
|
||||||
<p>
|
<p>
|
||||||
We may update this Cookie Policy from time to time to reflect operational, legal, or regulatory changes. Any updates will be posted on this page, and the “Last updated” date will be revised accordingly.
|
We may update this Cookie Policy from time to time to reflect operational, legal, or regulatory changes. Any updates will be posted on this page, and the “Last updated” date will be revised accordingly.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">Contact us</h2>
|
<h2>Contact us</h2>
|
||||||
<p>
|
<p>
|
||||||
If you have any questions about our use of cookies, please contact us at
|
If you have any questions about our use of cookies, please contact us at
|
||||||
<a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a>.
|
<a href="mailto:privacy@hexname.com">privacy@hexname.com</a>.
|
||||||
</p>
|
</p>
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,4 @@
|
||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { page } from "$app/state";
|
|
||||||
|
|
||||||
let copied = $state(false);
|
let copied = $state(false);
|
||||||
let resetTimer: NodeJS.Timeout | undefined;
|
let resetTimer: NodeJS.Timeout | undefined;
|
||||||
|
|
||||||
|
|
@ -57,7 +55,14 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
<h2 class="legend text-xl font-bold p-4 m-4">Questions about our services</h2>
|
<h2 class="legend text-2xl font-bold p-4 m-4">Questions about our services</h2>
|
||||||
|
|
||||||
|
<!-- <div class="flex justify-center p-4 m-4">
|
||||||
|
<h2 class="text-4xl font-semibold max-w-2xl">
|
||||||
|
<span class="bg-gradient-to-t from-primary to-base-300">Questions</span> about our services
|
||||||
|
</h2>
|
||||||
|
</div> -->
|
||||||
|
|
||||||
|
|
||||||
<div class="collapse collapse-arrow bg-base-200 border border-base-300">
|
<div class="collapse collapse-arrow bg-base-200 border border-base-300">
|
||||||
<input type="radio"/>
|
<input type="radio"/>
|
||||||
|
|
@ -70,7 +75,7 @@
|
||||||
<div class="collapse-title font-semibold">Where can I learn more about using HexName?</div>
|
<div class="collapse-title font-semibold">Where can I learn more about using HexName?</div>
|
||||||
<div class="collapse-content text-sm">
|
<div class="collapse-content text-sm">
|
||||||
<div class="p-2">
|
<div class="p-2">
|
||||||
The easiest way to learn how to use HexName is to <a href="/register" class="link link-secondary">sign up</a>, which takes less than 1 minute.
|
The easiest way to learn how to use HexName is to <a href="/register" class="link link-accent">sign up</a>, which takes less than 1 minute.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -171,14 +176,14 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
<h2 class="legend text-xl font-bold p-4 m-4">Questions about your account</h2>
|
<h2 class="legend text-2xl font-bold p-4 m-4">Questions about your account</h2>
|
||||||
|
|
||||||
<div class="collapse collapse-arrow bg-base-200 border border-base-300">
|
<div class="collapse collapse-arrow bg-base-200 border border-base-300">
|
||||||
<input type="radio"/>
|
<input type="radio"/>
|
||||||
<div class="collapse-title font-semibold">I forgot my password. What should I do?</div>
|
<div class="collapse-title font-semibold">I forgot my password. What should I do?</div>
|
||||||
<div class="collapse-content text-sm">
|
<div class="collapse-content text-sm">
|
||||||
<div class="p-2">
|
<div class="p-2">
|
||||||
Click <a class="link link-secondary" href="/forgot-password">here</a> or on "Forgot password" on the login page and follow the instructions sent to your email.
|
Click <a class="link link-accent" href="/forgot-password">here</a> or on "Forgot password" on the login page and follow the instructions sent to your email.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -188,7 +193,7 @@
|
||||||
<div class="collapse-title font-semibold">How do I delete my account?</div>
|
<div class="collapse-title font-semibold">How do I delete my account?</div>
|
||||||
<div class="collapse-content text-sm">
|
<div class="collapse-content text-sm">
|
||||||
<div class="p-2">
|
<div class="p-2">
|
||||||
Click <a class="link link-secondary" href="/delete-account">here</a> or the profile icon in the top right corner, then "Delete account", and you'll be prompted to the confirmation page.
|
Click <a class="link link-accent" href="/delete-account">here</a> or the profile icon in the top right corner, then "Delete account", and you'll be prompted to the confirmation page.
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -204,7 +209,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="divider"></div>
|
<div class="divider"></div>
|
||||||
<h2 class="legend text-xl font-bold p-4 m-4">Miscellaneous questions</h2>
|
<h2 class="legend text-2xl font-bold p-4 m-4">Miscellaneous questions</h2>
|
||||||
|
|
||||||
<div class="collapse collapse-arrow bg-base-200 border border-base-300">
|
<div class="collapse collapse-arrow bg-base-200 border border-base-300">
|
||||||
<input type="radio"/>
|
<input type="radio"/>
|
||||||
|
|
|
||||||
|
|
@ -75,6 +75,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
@theme {
|
@theme {
|
||||||
|
--breakpoint-xs: 410px;
|
||||||
|
|
||||||
--animate-fadeInDown: fadeInDown 1s ease-in;
|
--animate-fadeInDown: fadeInDown 1s ease-in;
|
||||||
@keyframes fadeInDown {
|
@keyframes fadeInDown {
|
||||||
from {
|
from {
|
||||||
|
|
|
||||||
|
|
@ -8,12 +8,13 @@
|
||||||
<meta name="robots" content="noindex, nofollow">
|
<meta name="robots" content="noindex, nofollow">
|
||||||
</svelte:head>
|
</svelte:head>
|
||||||
|
|
||||||
<div class="text-primary-content max-w-7/9 sm:max-w-2/3 m-auto">
|
<div class="w-full">
|
||||||
<div class="m-8">
|
<div class="flex flex-col justify-center items-center">
|
||||||
<h1 class="text-4xl">Privacy policy</h1>
|
<article class="prose prose-blockquote:[&>p]:first-of-type:before:content-none prose-blockquote:[&>p]:last-of-type:after:content-none prose-a:text-accent prose-h1:bg-primary prose-h1:p-4 prose-h1:rounded-3xl prose-h1:text-center max-w-4xl m-4 p-4 sm:p-8 rounded bg-base-200">
|
||||||
|
|
||||||
|
<h1>Privacy policy</h1>
|
||||||
<p>Last updated January 09, 2026</p>
|
<p>Last updated January 09, 2026</p>
|
||||||
<hr>
|
|
||||||
</div>
|
|
||||||
<p>This Privacy Notice for HexName ( " <strong>we</strong> ," " <strong>us</strong> ," or " <strong>our</strong> " ), describes how and why we might access, collect, store, use, and/or share ( " <strong>process</strong> " ) your personal information when you use our services ( " <strong>Services</strong> " ), including when you:</p>
|
<p>This Privacy Notice for HexName ( " <strong>we</strong> ," " <strong>us</strong> ," or " <strong>our</strong> " ), describes how and why we might access, collect, store, use, and/or share ( " <strong>process</strong> " ) your personal information when you use our services ( " <strong>Services</strong> " ), including when you:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>Visit our website at hexname.com or any website of ours that links to this Privacy Notice</li>
|
<li>Visit our website at hexname.com or any website of ours that links to this Privacy Notice</li>
|
||||||
|
|
@ -21,34 +22,34 @@
|
||||||
<ul>
|
<ul>
|
||||||
<li>Engage with us in other related ways, including any marketing or events</li>
|
<li>Engage with us in other related ways, including any marketing or events</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><strong>Questions or concerns? </strong> Reading this Privacy Notice will help you understand your privacy rights and choices. We are responsible for making decisions about how your personal information is processed. If you do not agree with our policies and practices, please do not use our Services. If you still have any questions or concerns, please contact us at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a> .</p>
|
<p><strong>Questions or concerns? </strong> Reading this Privacy Notice will help you understand your privacy rights and choices. We are responsible for making decisions about how your personal information is processed. If you do not agree with our policies and practices, please do not use our Services. If you still have any questions or concerns, please contact us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a> .</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">SUMMARY OF KEY POINTS</h2>
|
<h2>SUMMARY OF KEY POINTS</h2>
|
||||||
<p><strong>This summary provides key points from our Privacy Notice, but you can find out more details about any of these topics by clicking the link following each key point or by using our </strong> <a class="link text-accent italic" href="#toc"><strong>table of contents</strong></a> <strong> below to find the section you are looking for.</strong></p>
|
<p><strong>This summary provides key points from our Privacy Notice, but you can find out more details about any of these topics by clicking the link following each key point or by using our </strong> <a href="#toc"><strong>table of contents</strong></a> <strong> below to find the section you are looking for.</strong></p>
|
||||||
<p><strong>What personal information do we process?</strong> When you visit, use, or navigate our Services, we may process personal information depending on how you interact with us and the Services, the choices you make, and the products and features you use. Learn more about <a class="link text-accent italic" href="#personalinfo">personal information you disclose to us</a> .</p>
|
<p><strong>What personal information do we process?</strong> When you visit, use, or navigate our Services, we may process personal information depending on how you interact with us and the Services, the choices you make, and the products and features you use. Learn more about <a href="#personalinfo">personal information you disclose to us</a> .</p>
|
||||||
<p><strong>Do we process any sensitive personal information? </strong> Some of the information may be considered "special" or "sensitive" in certain jurisdictions, for example your racial or ethnic origins, sexual orientation, and religious beliefs. We do not process sensitive personal information.</p>
|
<p><strong>Do we process any sensitive personal information? </strong> Some of the information may be considered "special" or "sensitive" in certain jurisdictions, for example your racial or ethnic origins, sexual orientation, and religious beliefs. We do not process sensitive personal information.</p>
|
||||||
<p><strong>Do we collect any information from third parties?</strong> We do not collect any information from third parties.</p>
|
<p><strong>Do we collect any information from third parties?</strong> We do not collect any information from third parties.</p>
|
||||||
<p><strong>How do we process your information?</strong> We process your information to provide, improve, and administer our Services, communicate with you, for security and fraud prevention, and to comply with law. We may also process your information for other purposes with your consent. We process your information only when we have a valid legal reason to do so. Learn more about <a class="link text-accent italic" href="#infouse">how we process your information</a> .</p>
|
<p><strong>How do we process your information?</strong> We process your information to provide, improve, and administer our Services, communicate with you, for security and fraud prevention, and to comply with law. We may also process your information for other purposes with your consent. We process your information only when we have a valid legal reason to do so. Learn more about <a href="#infouse">how we process your information</a> .</p>
|
||||||
<p><strong>In what situations and with which parties do we share personal information?</strong> We may share information in specific situations and with specific third parties. Learn more about <a class="link text-accent italic" href="#whoshare">when and with whom we share your personal information</a> .</p>
|
<p><strong>In what situations and with which parties do we share personal information?</strong> We may share information in specific situations and with specific third parties. Learn more about <a href="#whoshare">when and with whom we share your personal information</a> .</p>
|
||||||
<p><strong>How do we keep your information safe?</strong> We have adequate organizational and technical processes and procedures in place to protect your personal information. However, no electronic transmission over the internet or information storage technology can be guaranteed to be 100% secure, so we cannot promise or guarantee that hackers, cybercriminals, or other unauthorized third parties will not be able to defeat our security and improperly collect, access, steal, or modify your information. Learn more about <a class="link text-accent italic" href="#infosafe">how we keep your information safe</a> .</p>
|
<p><strong>How do we keep your information safe?</strong> We have adequate organizational and technical processes and procedures in place to protect your personal information. However, no electronic transmission over the internet or information storage technology can be guaranteed to be 100% secure, so we cannot promise or guarantee that hackers, cybercriminals, or other unauthorized third parties will not be able to defeat our security and improperly collect, access, steal, or modify your information. Learn more about <a href="#infosafe">how we keep your information safe</a> .</p>
|
||||||
<p><strong>What are your rights?</strong> Depending on where you are located geographically, the applicable privacy law may mean you have certain rights regarding your personal information. Learn more about <a class="link text-accent italic" href="#privacyrights">your privacy rights</a> .</p>
|
<p><strong>What are your rights?</strong> Depending on where you are located geographically, the applicable privacy law may mean you have certain rights regarding your personal information. Learn more about <a href="#privacyrights">your privacy rights</a> .</p>
|
||||||
<p><strong>How do you exercise your rights?</strong> The easiest way to exercise your rights is by writing us an email.</p>
|
<p><strong>How do you exercise your rights?</strong> The easiest way to exercise your rights is by writing us an email.</p>
|
||||||
<p>Want to learn more about what we do with any information we collect? <a class="link text-accent italic" href="#toc">Review the Privacy Notice in full</a> .</p>
|
<p>Want to learn more about what we do with any information we collect? <a href="#toc">Review the Privacy Notice in full</a> .</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">TABLE OF CONTENTS</h2>
|
<h2>TABLE OF CONTENTS</h2>
|
||||||
<p><a class="link text-accent italic" href="#infocollect">1. WHAT INFORMATION DO WE COLLECT?</a></p>
|
<p><a href="#infocollect">1. WHAT INFORMATION DO WE COLLECT?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#infouse">2. HOW DO WE PROCESS YOUR INFORMATION?</a></p>
|
<p><a href="#infouse">2. HOW DO WE PROCESS YOUR INFORMATION?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#legalbases">3. WHAT LEGAL BASES DO WE RELY ON TO PROCESS YOUR PERSONAL INFORMATION?</a></p>
|
<p><a href="#legalbases">3. WHAT LEGAL BASES DO WE RELY ON TO PROCESS YOUR PERSONAL INFORMATION?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#whoshare">4. WHEN AND WITH WHOM DO WE SHARE YOUR PERSONAL INFORMATION?</a></p>
|
<p><a href="#whoshare">4. WHEN AND WITH WHOM DO WE SHARE YOUR PERSONAL INFORMATION?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#inforetain">5. HOW LONG DO WE KEEP YOUR INFORMATION?</a></p>
|
<p><a href="#inforetain">5. HOW LONG DO WE KEEP YOUR INFORMATION?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#infosafe">6. HOW DO WE KEEP YOUR INFORMATION SAFE?</a></p>
|
<p><a href="#infosafe">6. HOW DO WE KEEP YOUR INFORMATION SAFE?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#infominors">7. DO WE COLLECT INFORMATION FROM MINORS?</a></p>
|
<p><a href="#infominors">7. DO WE COLLECT INFORMATION FROM MINORS?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#privacyrights">8. WHAT ARE YOUR PRIVACY RIGHTS?</a></p>
|
<p><a href="#privacyrights">8. WHAT ARE YOUR PRIVACY RIGHTS?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#DNT">9. CONTROLS FOR DO-NOT-TRACK FEATURES</a></p>
|
<p><a href="#DNT">9. CONTROLS FOR DO-NOT-TRACK FEATURES</a></p>
|
||||||
<p><a class="link text-accent italic" href="#uslaws">10. DO UNITED STATES RESIDENTS HAVE SPECIFIC PRIVACY RIGHTS?</a></p>
|
<p><a href="#uslaws">10. DO UNITED STATES RESIDENTS HAVE SPECIFIC PRIVACY RIGHTS?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#policyupdates">11. DO WE MAKE UPDATES TO THIS NOTICE?</a></p>
|
<p><a href="#policyupdates">11. DO WE MAKE UPDATES TO THIS NOTICE?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#contact">12. HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a></p>
|
<p><a href="#contact">12. HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a></p>
|
||||||
<p><a class="link text-accent italic" href="#request">13. HOW CAN YOU REVIEW, UPDATE, OR DELETE THE DATA WE COLLECT FROM YOU?</a></p>
|
<p><a href="#request">13. HOW CAN YOU REVIEW, UPDATE, OR DELETE THE DATA WE COLLECT FROM YOU?</a></p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">1. WHAT INFORMATION DO WE COLLECT?</h2>
|
<h2>1. WHAT INFORMATION DO WE COLLECT?</h2>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Personal information you disclose to us</h3><strong>In Short:</strong> We collect personal information that you provide to us.
|
<h3>Personal information you disclose to us</h3><strong>In Short:</strong> We collect personal information that you provide to us.
|
||||||
<p>We collect personal information that you voluntarily provide to us when you register on the Services, express an interest in obtaining information about us or our products and Services, when you participate in activities on the Services, or otherwise when you contact us.</p>
|
<p>We collect personal information that you voluntarily provide to us when you register on the Services, express an interest in obtaining information about us or our products and Services, when you participate in activities on the Services, or otherwise when you contact us.</p>
|
||||||
<p><strong>Personal Information Provided by You.</strong> The personal information that we collect depends on the context of your interactions with us and the Services, the choices you make, and the products and features you use. The personal information we collect may include the following:</p>
|
<p><strong>Personal Information Provided by You.</strong> The personal information that we collect depends on the context of your interactions with us and the Services, the choices you make, and the products and features you use. The personal information we collect may include the following:</p>
|
||||||
<ul>
|
<ul>
|
||||||
|
|
@ -59,7 +60,7 @@
|
||||||
</ul>
|
</ul>
|
||||||
<p><strong>Sensitive Information.</strong> We do not process sensitive information.</p>
|
<p><strong>Sensitive Information.</strong> We do not process sensitive information.</p>
|
||||||
<p>All personal information that you provide to us must be true, complete, and accurate, and you must notify us of any changes to such personal information.</p>
|
<p>All personal information that you provide to us must be true, complete, and accurate, and you must notify us of any changes to such personal information.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">2. HOW DO WE PROCESS YOUR INFORMATION?</h2><strong>In Short: </strong> We process your information to provide, improve, and administer our Services, communicate with you, for security and fraud prevention, and to comply with law. We process the personal information for the following purposes listed below. We may also process your information for other purposes only with your prior explicit consent.
|
<h2>2. HOW DO WE PROCESS YOUR INFORMATION?</h2><strong>In Short: </strong> We process your information to provide, improve, and administer our Services, communicate with you, for security and fraud prevention, and to comply with law. We process the personal information for the following purposes listed below. We may also process your information for other purposes only with your prior explicit consent.
|
||||||
<p><strong>We process your personal information for a variety of reasons, depending on how you interact with our Services, including:</strong></p>
|
<p><strong>We process your personal information for a variety of reasons, depending on how you interact with our Services, including:</strong></p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>To facilitate account creation and authentication and otherwise manage user accounts. </strong> We may process your information so you can create and log in to your account, as well as keep your account in working order.</li>
|
<li><strong>To facilitate account creation and authentication and otherwise manage user accounts. </strong> We may process your information so you can create and log in to your account, as well as keep your account in working order.</li>
|
||||||
|
|
@ -70,12 +71,12 @@
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>To save or protect an individual's vital interest.</strong> We may process your information when necessary to save or protect an individual's vital interest, such as to prevent harm.</li>
|
<li><strong>To save or protect an individual's vital interest.</strong> We may process your information when necessary to save or protect an individual's vital interest, such as to prevent harm.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">3. WHAT LEGAL BASES DO WE RELY ON TO PROCESS YOUR INFORMATION?</h2><strong>In Short: </strong> We only process your personal information when we believe it is necessary and we have a valid legal reason (i.e. , legal basis) to do so under applicable law, like with your consent, to comply with laws, to provide you with services to enter into or fulfill our contractual obligations, to protect your rights, or to fulfill our legitimate business interests.
|
<h2>3. WHAT LEGAL BASES DO WE RELY ON TO PROCESS YOUR INFORMATION?</h2><strong>In Short: </strong> We only process your personal information when we believe it is necessary and we have a valid legal reason (i.e. , legal basis) to do so under applicable law, like with your consent, to comply with laws, to provide you with services to enter into or fulfill our contractual obligations, to protect your rights, or to fulfill our legitimate business interests.
|
||||||
<p><strong>If you are located in the EU or UK, this section applies to you.</strong></p>
|
<p><strong>If you are located in the EU or UK, this section applies to you.</strong></p>
|
||||||
<p>The General Data Protection Regulation (GDPR) and UK GDPR require us to explain the valid legal bases we rely on in order to process your personal information. As such, we may rely on the following legal bases to process your personal information:</p>
|
<p>The General Data Protection Regulation (GDPR) and UK GDPR require us to explain the valid legal bases we rely on in order to process your personal information. As such, we may rely on the following legal bases to process your personal information:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<strong>Consent. </strong> We may process your information if you have given us permission (i.e. , consent) to use your personal information for a specific purpose. You can withdraw your consent at any time. Learn more about <a class="link text-accent italic" href="#withdrawconsent">withdrawing your consent</a> .
|
<strong>Consent. </strong> We may process your information if you have given us permission (i.e. , consent) to use your personal information for a specific purpose. You can withdraw your consent at any time. Learn more about <a href="#withdrawconsent">withdrawing your consent</a> .
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul>
|
<ul>
|
||||||
|
|
@ -88,7 +89,7 @@
|
||||||
<li><strong>Vital Interests.</strong> We may process your information where we believe it is necessary to protect your vital interests or the vital interests of a third party, such as situations involving potential threats to the safety of any person.</li>
|
<li><strong>Vital Interests.</strong> We may process your information where we believe it is necessary to protect your vital interests or the vital interests of a third party, such as situations involving potential threats to the safety of any person.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p><strong>If you are located in Canada, this section applies to you.</strong></p>
|
<p><strong>If you are located in Canada, this section applies to you.</strong></p>
|
||||||
<p>We may process your information if you have given us specific permission (i.e. , express consent) to use your personal information for a specific purpose, or in situations where your permission can be inferred (i.e. , implied consent). You can <a class="link text-accent italic" href="#withdrawconsent">withdraw your consent</a> at any time.</p>
|
<p>We may process your information if you have given us specific permission (i.e. , express consent) to use your personal information for a specific purpose, or in situations where your permission can be inferred (i.e. , implied consent). You can <a href="#withdrawconsent">withdraw your consent</a> at any time.</p>
|
||||||
<p>In some exceptional cases, we may be legally permitted under applicable law to process your information without your consent, including, for example:</p>
|
<p>In some exceptional cases, we may be legally permitted under applicable law to process your information without your consent, including, for example:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>If collection is clearly in the interests of an individual and consent cannot be obtained in a timely way</li>
|
<li>If collection is clearly in the interests of an individual and consent cannot be obtained in a timely way</li>
|
||||||
|
|
@ -126,35 +127,35 @@
|
||||||
<ul>
|
<ul>
|
||||||
<li>We may disclose de-identified information for approved research or statistics projects, subject to ethics oversight and confidentiality commitments</li>
|
<li>We may disclose de-identified information for approved research or statistics projects, subject to ethics oversight and confidentiality commitments</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">4. WHEN AND WITH WHOM DO WE SHARE YOUR PERSONAL INFORMATION?</h2><strong>In Short:</strong> We may share information in specific situations described in this section and/or with the following third parties.
|
<h2>4. WHEN AND WITH WHOM DO WE SHARE YOUR PERSONAL INFORMATION?</h2><strong>In Short:</strong> We may share information in specific situations described in this section and/or with the following third parties.
|
||||||
<p>We may need to share your personal information in the following situations:</p>
|
<p>We may need to share your personal information in the following situations:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>Business Transfers.</strong> We may share or transfer your information in connection with, or during negotiations of, any merger, sale of company assets, financing, or acquisition of all or a portion of our business to another company.</li>
|
<li><strong>Business Transfers.</strong> We may share or transfer your information in connection with, or during negotiations of, any merger, sale of company assets, financing, or acquisition of all or a portion of our business to another company.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">5. HOW LONG DO WE KEEP YOUR INFORMATION?</h2><strong>In Short: </strong> We keep your information for as long as necessary to fulfill the purposes outlined in this Privacy Notice unless otherwise required by law.
|
<h2>5. HOW LONG DO WE KEEP YOUR INFORMATION?</h2><strong>In Short: </strong> We keep your information for as long as necessary to fulfill the purposes outlined in this Privacy Notice unless otherwise required by law.
|
||||||
<p>We will only keep your personal information for as long as it is necessary for the purposes set out in this Privacy Notice, unless a longer retention period is required or permitted by law (such as tax, accounting, or other legal requirements). No purpose in this notice will require us keeping your personal information for longer than the period of time in which users have an account with us .</p>
|
<p>We will only keep your personal information for as long as it is necessary for the purposes set out in this Privacy Notice, unless a longer retention period is required or permitted by law (such as tax, accounting, or other legal requirements). No purpose in this notice will require us keeping your personal information for longer than the period of time in which users have an account with us .</p>
|
||||||
<p>When we have no ongoing legitimate business need to process your personal information, we will either delete or anonymize such information, or, if this is not possible (for example, because your personal information has been stored in backup archives), then we will securely store your personal information and isolate it from any further processing until deletion is possible.</p>
|
<p>When we have no ongoing legitimate business need to process your personal information, we will either delete or anonymize such information, or, if this is not possible (for example, because your personal information has been stored in backup archives), then we will securely store your personal information and isolate it from any further processing until deletion is possible.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">6. HOW DO WE KEEP YOUR INFORMATION SAFE?</h2><strong>In Short: </strong> We aim to protect your personal information through a system of organizational and technical security measures.
|
<h2>6. HOW DO WE KEEP YOUR INFORMATION SAFE?</h2><strong>In Short: </strong> We aim to protect your personal information through a system of organizational and technical security measures.
|
||||||
<p>We have implemented appropriate and reasonable technical and organizational security measures designed to protect the security of any personal information we process. However, despite our safeguards and efforts to secure your information, no electronic transmission over the Internet or information storage technology can be guaranteed to be 100% secure, so we cannot promise or guarantee that hackers, cybercriminals, or other unauthorized third parties will not be able to defeat our security and improperly collect, access, steal, or modify your information. Although we will do our best to protect your personal information, transmission of personal information to and from our Services is at your own risk. You should only access the Services within a secure environment.</p>
|
<p>We have implemented appropriate and reasonable technical and organizational security measures designed to protect the security of any personal information we process. However, despite our safeguards and efforts to secure your information, no electronic transmission over the Internet or information storage technology can be guaranteed to be 100% secure, so we cannot promise or guarantee that hackers, cybercriminals, or other unauthorized third parties will not be able to defeat our security and improperly collect, access, steal, or modify your information. Although we will do our best to protect your personal information, transmission of personal information to and from our Services is at your own risk. You should only access the Services within a secure environment.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">7. DO WE COLLECT INFORMATION FROM MINORS?</h2><strong>In Short:</strong> We do not knowingly collect data from or market to children under 18 years of age or the equivalent age as specified by law in your jurisdiction .
|
<h2>7. DO WE COLLECT INFORMATION FROM MINORS?</h2><strong>In Short:</strong> We do not knowingly collect data from or market to children under 18 years of age or the equivalent age as specified by law in your jurisdiction .
|
||||||
<p>We do not knowingly collect, solicit data from, or market to children under 18 years of age or the equivalent age as specified by law in your jurisdiction , nor do we knowingly sell such personal information. By using the Services, you represent that you are at least 18 or the equivalent age as specified by law in your jurisdiction or that you are the parent or guardian of such a minor and consent to such minor dependent's use of the Services. If we learn that personal information from users less than 18 years of age or the equivalent age as specified by law in your jurisdiction has been collected, we will deactivate the account and take reasonable measures to promptly delete such data from our records. If you become aware of any data we may have collected from children under age 18 or the equivalent age as specified by law in your jurisdiction , please contact us at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a> .</p>
|
<p>We do not knowingly collect, solicit data from, or market to children under 18 years of age or the equivalent age as specified by law in your jurisdiction , nor do we knowingly sell such personal information. By using the Services, you represent that you are at least 18 or the equivalent age as specified by law in your jurisdiction or that you are the parent or guardian of such a minor and consent to such minor dependent's use of the Services. If we learn that personal information from users less than 18 years of age or the equivalent age as specified by law in your jurisdiction has been collected, we will deactivate the account and take reasonable measures to promptly delete such data from our records. If you become aware of any data we may have collected from children under age 18 or the equivalent age as specified by law in your jurisdiction , please contact us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a> .</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">8. WHAT ARE YOUR PRIVACY RIGHTS?</h2><strong>In Short:</strong> Depending on your state of residence in the US or in some regions, such as the European Economic Area (EEA), United Kingdom (UK), Switzerland, and Canada , you have rights that allow you greater access to and control over your personal information. You may review, change, or terminate your account at any time, depending on your country, province, or state of residence.
|
<h2>8. WHAT ARE YOUR PRIVACY RIGHTS?</h2><strong>In Short:</strong> Depending on your state of residence in the US or in some regions, such as the European Economic Area (EEA), United Kingdom (UK), Switzerland, and Canada , you have rights that allow you greater access to and control over your personal information. You may review, change, or terminate your account at any time, depending on your country, province, or state of residence.
|
||||||
<p>In some regions (like the EEA, UK, Switzerland, and Canada ), you have certain rights under applicable data protection laws. These may include the right (i) to request access and obtain a copy of your personal information, (ii) to request rectification or erasure; (iii) to restrict the processing of your personal information; (iv) if applicable, to data portability; and (v) not to be subject to automated decision-making. If a decision that produces legal or similarly significant effects is made solely by automated means, we will inform you, explain the main factors, and offer a simple way to request human review. In certain circumstances, you may also have the right to object to the processing of your personal information. You can make such a request by contacting us by using the contact details provided in the section " <a class="link text-accent italic" href="#contact">HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a> " below.</p>
|
<p>In some regions (like the EEA, UK, Switzerland, and Canada ), you have certain rights under applicable data protection laws. These may include the right (i) to request access and obtain a copy of your personal information, (ii) to request rectification or erasure; (iii) to restrict the processing of your personal information; (iv) if applicable, to data portability; and (v) not to be subject to automated decision-making. If a decision that produces legal or similarly significant effects is made solely by automated means, we will inform you, explain the main factors, and offer a simple way to request human review. In certain circumstances, you may also have the right to object to the processing of your personal information. You can make such a request by contacting us by using the contact details provided in the section " <a href="#contact">HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a> " below.</p>
|
||||||
<p>We will consider and act upon any request in accordance with applicable data protection laws.</p>
|
<p>We will consider and act upon any request in accordance with applicable data protection laws.</p>
|
||||||
<p>If you are located in the EEA or UK and you believe we are unlawfully processing your personal information, you also have the right to complain to your <a class="link text-accent italic" href="https://ec.europa.eu/justice/data-protection/bodies/authorities/index_en.htm">Member State data protection authority</a> or <a href="https://ico.org.uk/make-a-complaint/data-protection-complaints/data-protection-complaints/">UK data protection authority</a> .</p>
|
<p>If you are located in the EEA or UK and you believe we are unlawfully processing your personal information, you also have the right to complain to your <a rel="nofollow" href="https://ec.europa.eu/justice/data-protection/bodies/authorities/index_en.htm">Member State data protection authority</a> or <a rel="nofollow" href="https://ico.org.uk/make-a-complaint/data-protection-complaints/data-protection-complaints/">UK data protection authority</a> .</p>
|
||||||
<p>If you are located in Switzerland, you may contact the <a class="link text-accent italic" href="https://www.edoeb.admin.ch/edoeb/en/home.html">Federal Data Protection and Information Commissioner</a> .</p>
|
<p>If you are located in Switzerland, you may contact the <a rel="nofollow" href="https://www.edoeb.admin.ch/edoeb/en/home.html">Federal Data Protection and Information Commissioner</a> .</p>
|
||||||
<p><strong>Withdrawing your consent:</strong> If we are relying on your consent to process your personal information, which may be express and/or implied consent depending on the applicable law, you have the right to withdraw your consent at any time. You can withdraw your consent at any time by contacting us by using the contact details provided in the section " <a class="link text-accent italic" href="#contact">HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a> " below .</p>
|
<p><strong>Withdrawing your consent:</strong> If we are relying on your consent to process your personal information, which may be express and/or implied consent depending on the applicable law, you have the right to withdraw your consent at any time. You can withdraw your consent at any time by contacting us by using the contact details provided in the section " <a href="#contact">HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a> " below .</p>
|
||||||
<p>However, please note that this will not affect the lawfulness of the processing before its withdrawal nor, when applicable law allows, will it affect the processing of your personal information conducted in reliance on lawful processing grounds other than consent.</p>
|
<p>However, please note that this will not affect the lawfulness of the processing before its withdrawal nor, when applicable law allows, will it affect the processing of your personal information conducted in reliance on lawful processing grounds other than consent.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Account Information</h3>If you would at any time like to review or change the information in your account or terminate your account, you can:
|
<h3>Account Information</h3>If you would at any time like to review or change the information in your account or terminate your account, you can:
|
||||||
<ul>
|
<ul>
|
||||||
<li>Log in to your account settings and update your user account.</li>
|
<li>Log in to your account settings and update your user account.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>Upon your request to terminate your account, we will deactivate or delete your account and information from our active databases. However, we may retain some information in our files to prevent fraud, troubleshoot problems, assist with any investigations, enforce our legal terms and/or comply with applicable legal requirements.</p>
|
<p>Upon your request to terminate your account, we will deactivate or delete your account and information from our active databases. However, we may retain some information in our files to prevent fraud, troubleshoot problems, assist with any investigations, enforce our legal terms and/or comply with applicable legal requirements.</p>
|
||||||
<p>If you have questions or comments about your privacy rights, you may email us at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a> .</p>
|
<p>If you have questions or comments about your privacy rights, you may email us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a> .</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">9. CONTROLS FOR DO-NOT-TRACK FEATURES</h2>Most web browsers and some mobile operating systems and mobile applications include a Do-Not-Track ( "DNT" ) feature or setting you can activate to signal your privacy preference not to have data about your online browsing activities monitored and collected. At this stage, no uniform technology standard for recognizing and implementing DNT signals has been finalized . As such, we do not currently respond to DNT browser signals or any other mechanism that automatically communicates your choice not to be tracked online. If a standard for online tracking is adopted that we must follow in the future, we will inform you about that practice in a revised version of this Privacy Notice.
|
<h2>9. CONTROLS FOR DO-NOT-TRACK FEATURES</h2>Most web browsers and some mobile operating systems and mobile applications include a Do-Not-Track ( "DNT" ) feature or setting you can activate to signal your privacy preference not to have data about your online browsing activities monitored and collected. At this stage, no uniform technology standard for recognizing and implementing DNT signals has been finalized . As such, we do not currently respond to DNT browser signals or any other mechanism that automatically communicates your choice not to be tracked online. If a standard for online tracking is adopted that we must follow in the future, we will inform you about that practice in a revised version of this Privacy Notice.
|
||||||
<p>California law requires us to let you know how we respond to web browser DNT signals. Because there currently is not an industry or legal standard for recognizing or honoring DNT signals, we do not respond to them at this time.</p>
|
<p>California law requires us to let you know how we respond to web browser DNT signals. Because there currently is not an industry or legal standard for recognizing or honoring DNT signals, we do not respond to them at this time.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">10. DO UNITED STATES RESIDENTS HAVE SPECIFIC PRIVACY RIGHTS?</h2><strong>In Short: </strong> If you are a resident of California, Colorado, Connecticut, Delaware, Florida, Indiana, Iowa, Kentucky, Maryland, Minnesota, Montana, Nebraska, New Hampshire, New Jersey, Oregon, Rhode Island, Tennessee, Texas, Utah, or Virginia , you may have the right to request access to and receive details about the personal information we maintain about you and how we have processed it, correct inaccuracies, get a copy of, or delete your personal information. You may also have the right to withdraw your consent to our processing of your personal information. These rights may be limited in some circumstances by applicable law. More information is provided below.
|
<h2>10. DO UNITED STATES RESIDENTS HAVE SPECIFIC PRIVACY RIGHTS?</h2><strong>In Short: </strong> If you are a resident of California, Colorado, Connecticut, Delaware, Florida, Indiana, Iowa, Kentucky, Maryland, Minnesota, Montana, Nebraska, New Hampshire, New Jersey, Oregon, Rhode Island, Tennessee, Texas, Utah, or Virginia , you may have the right to request access to and receive details about the personal information we maintain about you and how we have processed it, correct inaccuracies, get a copy of, or delete your personal information. You may also have the right to withdraw your consent to our processing of your personal information. These rights may be limited in some circumstances by applicable law. More information is provided below.
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Categories of Personal Information We Collect</h3>The table below shows the categories of personal information we have collected in the past twelve (12) months. The table includes illustrative examples of each category and does not reflect the personal information we collect from you. For a comprehensive inventory of all personal information we process, please refer to the section " <a class="link text-accent italic" href="#infocollect">WHAT INFORMATION DO WE COLLECT?</a> "
|
<h3>Categories of Personal Information We Collect</h3>The table below shows the categories of personal information we have collected in the past twelve (12) months. The table includes illustrative examples of each category and does not reflect the personal information we collect from you. For a comprehensive inventory of all personal information we process, please refer to the section " <a href="#infocollect">WHAT INFORMATION DO WE COLLECT?</a> "
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
@ -311,13 +312,13 @@
|
||||||
<ul>
|
<ul>
|
||||||
<li>Facilitation in the delivery of our Services and to respond to your inquiries.</li>
|
<li>Facilitation in the delivery of our Services and to respond to your inquiries.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Sources of Personal Information</h3>Learn more about the sources of personal information we collect in " <a class="link text-accent italic" href="#infocollect">WHAT INFORMATION DO WE COLLECT?</a> "
|
<h3>Sources of Personal Information</h3>Learn more about the sources of personal information we collect in " <a href="#infocollect">WHAT INFORMATION DO WE COLLECT?</a> "
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">How We Use and Share Personal Information</h3>Learn more about how we use your personal information in the section, " <a class="link text-accent italic" href="#infouse">HOW DO WE PROCESS YOUR INFORMATION?</a> "
|
<h3>How We Use and Share Personal Information</h3>Learn more about how we use your personal information in the section, " <a href="#infouse">HOW DO WE PROCESS YOUR INFORMATION?</a> "
|
||||||
<p><strong>Will your information be shared with anyone else?</strong></p>
|
<p><strong>Will your information be shared with anyone else?</strong></p>
|
||||||
<p>We may disclose your personal information with our service providers pursuant to a written contract between us and each service provider. Learn more about how we disclose personal information to in the section, " <a class="link text-accent italic" href="#whoshare">WHEN AND WITH WHOM DO WE SHARE YOUR PERSONAL INFORMATION?</a> "</p>
|
<p>We may disclose your personal information with our service providers pursuant to a written contract between us and each service provider. Learn more about how we disclose personal information to in the section, " <a href="#whoshare">WHEN AND WITH WHOM DO WE SHARE YOUR PERSONAL INFORMATION?</a> "</p>
|
||||||
<p>We may use your personal information for our own business purposes, such as for undertaking internal research for technological development and demonstration. This is not considered to be "selling" of your personal information.</p>
|
<p>We may use your personal information for our own business purposes, such as for undertaking internal research for technological development and demonstration. This is not considered to be "selling" of your personal information.</p>
|
||||||
<p>We have not disclosed, sold, or shared any personal information to third parties for a business or commercial purpose in the preceding twelve (12) months. Wewill not sell or share personal information in the future belonging to website visitors, users, and other consumers.</p>
|
<p>We have not disclosed, sold, or shared any personal information to third parties for a business or commercial purpose in the preceding twelve (12) months. Wewill not sell or share personal information in the future belonging to website visitors, users, and other consumers.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Your Rights</h3>You have rights under certain US state data protection laws. However, these rights are not absolute, and in certain cases, we may decline your request as permitted by law. These rights include:
|
<h3>Your Rights</h3>You have rights under certain US state data protection laws. However, these rights are not absolute, and in certain cases, we may decline your request as permitted by law. These rights include:
|
||||||
<ul>
|
<ul>
|
||||||
<li><strong>Right to know</strong> whether or not we are processing your personal data</li>
|
<li><strong>Right to know</strong> whether or not we are processing your personal data</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
@ -361,14 +362,16 @@
|
||||||
<ul>
|
<ul>
|
||||||
<li>Right to opt out of the collection of sensitive data and personal data collected through the operation of a voice or facial recognition feature (as permitted by applicable law, including the privacy law in Florida)</li>
|
<li>Right to opt out of the collection of sensitive data and personal data collected through the operation of a voice or facial recognition feature (as permitted by applicable law, including the privacy law in Florida)</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">How to Exercise Your Rights</h3>To exercise these rights, you can contact us by emailing us at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a> .
|
<h3>How to Exercise Your Rights</h3>To exercise these rights, you can contact us by emailing us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a> .
|
||||||
<p>Under certain US state data protection laws, you can designate an authorized agent to make a request on your behalf. We may deny a request from an authorized agent that does not submit proof that they have been validly authorized to act on your behalf in accordance with applicable laws.</p>
|
<p>Under certain US state data protection laws, you can designate an authorized agent to make a request on your behalf. We may deny a request from an authorized agent that does not submit proof that they have been validly authorized to act on your behalf in accordance with applicable laws.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Request Verification</h3>Upon receiving your request, we will need to verify your identity to determine you are the same person about whom we have the information in our system. We will only use personal information provided in your request to verify your identity or authority to make the request. However, if we cannot verify your identity from the information already maintained by us, we may request that you provide additional information for the purposes of verifying your identity and for security or fraud-prevention purposes.
|
<h3>Request Verification</h3>Upon receiving your request, we will need to verify your identity to determine you are the same person about whom we have the information in our system. We will only use personal information provided in your request to verify your identity or authority to make the request. However, if we cannot verify your identity from the information already maintained by us, we may request that you provide additional information for the purposes of verifying your identity and for security or fraud-prevention purposes.
|
||||||
<p>If you submit the request through an authorized agent, we may need to collect additional information to verify your identity before processing your request and the agent will need to provide a written and signed permission from you to submit such request on your behalf.</p>
|
<p>If you submit the request through an authorized agent, we may need to collect additional information to verify your identity before processing your request and the agent will need to provide a written and signed permission from you to submit such request on your behalf.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">Appeals</h3>Under certain US state data protection laws, if we decline to take action regarding your request, you may appeal our decision by emailing us at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a> . We will inform you in writing of any action taken or not taken in response to the appeal, including a written explanation of the reasons for the decisions. If your appeal is denied, you may submit a complaint to your state attorney general.
|
<h3>Appeals</h3>Under certain US state data protection laws, if we decline to take action regarding your request, you may appeal our decision by emailing us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a> . We will inform you in writing of any action taken or not taken in response to the appeal, including a written explanation of the reasons for the decisions. If your appeal is denied, you may submit a complaint to your state attorney general.
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold">California "Shine The Light" Law</h3>California Civil Code Section 1798.83, also known as the "Shine The Light" law, permits our users who are California residents to request and obtain from us, once a year and free of charge, information about categories of personal information (if any) we disclosed to third parties for direct marketing purposes and the names and addresses of all third parties with which we shared personal information in the immediately preceding calendar year. If you are a California resident and would like to make such a request, please submit your request in writing to us by using the contact details provided in the section " <a class="link text-accent italic" href="#contact">HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a> "
|
<h3>California "Shine The Light" Law</h3>California Civil Code Section 1798.83, also known as the "Shine The Light" law, permits our users who are California residents to request and obtain from us, once a year and free of charge, information about categories of personal information (if any) we disclosed to third parties for direct marketing purposes and the names and addresses of all third parties with which we shared personal information in the immediately preceding calendar year. If you are a California resident and would like to make such a request, please submit your request in writing to us by using the contact details provided in the section " <a href="#contact">HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</a> "
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">11. DO WE MAKE UPDATES TO THIS NOTICE?</h2><strong>In Short: </strong> Yes, we will update this notice as necessary to stay compliant with relevant laws.
|
<h2>11. DO WE MAKE UPDATES TO THIS NOTICE?</h2><strong>In Short: </strong> Yes, we will update this notice as necessary to stay compliant with relevant laws.
|
||||||
<p>We may update this Privacy Notice from time to time. The updated version will be indicated by an updated "Revised" date at the top of this Privacy Notice. If we make material changes to this Privacy Notice, we may notify you either by prominently posting a notice of such changes or by directly sending you a notification. We encourage you to review this Privacy Notice frequently to be informed of how we are protecting your information.</p>
|
<p>We may update this Privacy Notice from time to time. The updated version will be indicated by an updated "Revised" date at the top of this Privacy Notice. If we make material changes to this Privacy Notice, we may notify you either by prominently posting a notice of such changes or by directly sending you a notification. We encourage you to review this Privacy Notice frequently to be informed of how we are protecting your information.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">12. HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</h2>If you have questions or comments about this notice, you may email us at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a>
|
<h2>12. HOW CAN YOU CONTACT US ABOUT THIS NOTICE?</h2>If you have questions or comments about this notice, you may email us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold">13. HOW CAN YOU REVIEW, UPDATE, OR DELETE THE DATA WE COLLECT FROM YOU?</h2>Based on the applicable laws of your country or state of residence in the US , you may have the right to request access to the personal information we collect from you, details about how we have processed it, correct inaccuracies, or delete your personal information. You may also have the right to withdraw your consent to our processing of your personal information. These rights may be limited in some circumstances by applicable law. To request to review, update, or delete your personal information, please email us at privacy@hexname.com.
|
<h2>13. HOW CAN YOU REVIEW, UPDATE, OR DELETE THE DATA WE COLLECT FROM YOU?</h2>Based on the applicable laws of your country or state of residence in the US , you may have the right to request access to the personal information we collect from you, details about how we have processed it, correct inaccuracies, or delete your personal information. You may also have the right to withdraw your consent to our processing of your personal information. These rights may be limited in some circumstances by applicable law. To request to review, update, or delete your personal information, please email us at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a>.
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -8,73 +8,75 @@
|
||||||
<meta name="robots" content="noindex, nofollow">
|
<meta name="robots" content="noindex, nofollow">
|
||||||
</svelte:head>
|
</svelte:head>
|
||||||
|
|
||||||
<div class="text-primary-content max-w-7/9 sm:max-w-2/3 m-auto">
|
<div class="w-full">
|
||||||
<div class="m-8">
|
<div class="flex flex-col justify-center items-center">
|
||||||
<h1 class="text-4xl">Terms of use</h1>
|
<article class="prose prose-blockquote:[&>p]:first-of-type:before:content-none prose-blockquote:[&>p]:last-of-type:after:content-none prose-a:text-accent prose-h1:bg-primary prose-h1:p-4 prose-h1:rounded-3xl prose-h1:text-center max-w-4xl m-4 p-4 sm:p-8 rounded bg-base-200">
|
||||||
|
<h1>Terms of service</h1>
|
||||||
<p>Last updated January 09, 2026</p>
|
<p>Last updated January 09, 2026</p>
|
||||||
<hr>
|
|
||||||
</div>
|
<h2><strong>AGREEMENT TO OUR LEGAL TERMS</strong></h2>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>AGREEMENT TO OUR LEGAL TERMS</strong></h2>
|
|
||||||
<p>We are HexName ("<strong>Company</strong>," "<strong>we</strong>," "<strong>us</strong>," "<strong>our</strong>").</p>
|
<p>We are HexName ("<strong>Company</strong>," "<strong>we</strong>," "<strong>us</strong>," "<strong>our</strong>").</p>
|
||||||
<p>We operate, as well as any other related products and services that refer or link to these legal terms (the "<strong>Legal Terms</strong>") (collectively, the "<strong>Services</strong>").</p>
|
<p>We operate, as well as any other related products and services that refer or link to these legal terms (the "<strong>Legal Terms</strong>") (collectively, the "<strong>Services</strong>").</p>
|
||||||
<p>You can contact us by email at <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a></p>
|
<p>You can contact us by email at <a href="mailto:privacy@hexname.com">privacy@hexname.com</a></p>
|
||||||
<p>These Legal Terms constitute a legally binding agreement made between you, whether personally or on behalf of an entity ("<strong>you</strong>"), and HexName, concerning your access to and use of the Services. You agree that by accessing the Services, you have read, understood, and agreed to be bound by all of these Legal Terms. IF YOU DO NOT AGREE WITH ALL OF THESE LEGAL TERMS, THEN YOU ARE EXPRESSLY PROHIBITED FROM USING THE SERVICES AND YOU MUST DISCONTINUE USE IMMEDIATELY.</p>
|
<p>These Legal Terms constitute a legally binding agreement made between you, whether personally or on behalf of an entity ("<strong>you</strong>"), and HexName, concerning your access to and use of the Services. You agree that by accessing the Services, you have read, understood, and agreed to be bound by all of these Legal Terms. IF YOU DO NOT AGREE WITH ALL OF THESE LEGAL TERMS, THEN YOU ARE EXPRESSLY PROHIBITED FROM USING THE SERVICES AND YOU MUST DISCONTINUE USE IMMEDIATELY.</p>
|
||||||
<p>Supplemental terms and conditions or documents that may be posted on the Services from time to time are hereby expressly incorporated herein by reference. We reserve the right, in our sole discretion, to make changes or modifications to these Legal Terms at any time and for any reason. We will alert you about any changes by updating the "Last updated" date of these Legal Terms, and you waive any right to receive specific notice of each such change. It is your responsibility to periodically review these Legal Terms to stay informed of updates. You will be subject to, and will be deemed to have been made aware of and to have accepted, the changes in any revised Legal Terms by your continued use of the Services after the date such revised Legal Terms are posted.</p>
|
<p>Supplemental terms and conditions or documents that may be posted on the Services from time to time are hereby expressly incorporated herein by reference. We reserve the right, in our sole discretion, to make changes or modifications to these Legal Terms at any time and for any reason. We will alert you about any changes by updating the "Last updated" date of these Legal Terms, and you waive any right to receive specific notice of each such change. It is your responsibility to periodically review these Legal Terms to stay informed of updates. You will be subject to, and will be deemed to have been made aware of and to have accepted, the changes in any revised Legal Terms by your continued use of the Services after the date such revised Legal Terms are posted.</p>
|
||||||
<p>We recommend that you print a copy of these Legal Terms for your records.</p>
|
<p>We recommend that you print a copy of these Legal Terms for your records.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>TABLE OF CONTENTS</strong></h2>
|
<h2><strong>TABLE OF CONTENTS</strong></h2>
|
||||||
<p><a class="link text-accent italic" href="#services">1. OUR SERVICES</a></p>
|
|
||||||
<p><a class="link text-accent italic" href="#ip">2. INTELLECTUAL PROPERTY RIGHTS</a></p>
|
<p><a href="#services">1. OUR SERVICES</a></p>
|
||||||
<p><a class="link text-accent italic" href="#userreps">3. USER REPRESENTATIONS</a></p>
|
<p><a href="#ip">2. INTELLECTUAL PROPERTY RIGHTS</a></p>
|
||||||
<p><a class="link text-accent italic" href="#prohibited">4. PROHIBITED ACTIVITIES</a> </p>
|
<p><a href="#userreps">3. USER REPRESENTATIONS</a></p>
|
||||||
<p><a class="link text-accent italic" href="#ugc">5. USER GENERATED CONTRIBUTIONS</a> </p>
|
<p><a href="#prohibited">4. PROHIBITED ACTIVITIES</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#license">6. CONTRIBUTION LICENSE</a> </p>
|
<p><a href="#ugc">5. USER GENERATED CONTRIBUTIONS</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#sitemanage">7. SERVICES MANAGEMENT</a> </p>
|
<p><a href="#license">6. CONTRIBUTION LICENSE</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#terms">8. TERM AND TERMINATION</a> </p>
|
<p><a href="#sitemanage">7. SERVICES MANAGEMENT</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#modifications">9. MODIFICATIONS AND INTERRUPTIONS</a> </p>
|
<p><a href="#terms">8. TERM AND TERMINATION</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#law">10. GOVERNING LAW</a> </p>
|
<p><a href="#modifications">9. MODIFICATIONS AND INTERRUPTIONS</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#disputes">11. DISPUTE RESOLUTION</a> </p>
|
<p><a href="#law">10. GOVERNING LAW</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#corrections">12. CORRECTIONS</a> </p>
|
<p><a href="#disputes">11. DISPUTE RESOLUTION</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#disclaimer">13. DISCLAIMER</a> </p>
|
<p><a href="#corrections">12. CORRECTIONS</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#liability">14. LIMITATIONS OF LIABILITY</a> </p>
|
<p><a href="#disclaimer">13. DISCLAIMER</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#indemnification">15. INDEMNIFICATION</a> </p>
|
<p><a href="#liability">14. LIMITATIONS OF LIABILITY</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#userdata">16. USER DATA</a> </p>
|
<p><a href="#indemnification">15. INDEMNIFICATION</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#electronic">17. ELECTRONIC COMMUNICATIONS, TRANSACTIONS, AND SIGNATURES</a> </p>
|
<p><a href="#userdata">16. USER DATA</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#misc">18. MISCELLANEOUS</a> </p>
|
<p><a href="#electronic">17. ELECTRONIC COMMUNICATIONS, TRANSACTIONS, AND SIGNATURES</a> </p>
|
||||||
<p><a class="link text-accent italic" href="#contact">19. CONTACT US</a></p>
|
<p><a href="#misc">18. MISCELLANEOUS</a> </p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>1. OUR SERVICES</strong></h2>
|
<p><a href="#contact">19. CONTACT US</a></p>
|
||||||
|
|
||||||
|
<h2><strong>1. OUR SERVICES</strong></h2>
|
||||||
<p>The information provided when using the Services is not intended for distribution to or use by any person or entity in any jurisdiction or country where such distribution or use would be contrary to law or regulation or which would subject us to any registration requirement within such jurisdiction or country. Accordingly, those persons who choose to access the Services from other locations do so on their own initiative and are solely responsible for compliance with local laws, if and to the extent local laws are applicable.</p>
|
<p>The information provided when using the Services is not intended for distribution to or use by any person or entity in any jurisdiction or country where such distribution or use would be contrary to law or regulation or which would subject us to any registration requirement within such jurisdiction or country. Accordingly, those persons who choose to access the Services from other locations do so on their own initiative and are solely responsible for compliance with local laws, if and to the extent local laws are applicable.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>2. INTELLECTUAL PROPERTY RIGHTS</strong></h2>
|
<h2><strong>2. INTELLECTUAL PROPERTY RIGHTS</strong></h2>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Our intellectual property</strong></h3>
|
<h3><strong>Our intellectual property</strong></h3>
|
||||||
<p>We are the owner or the licensee of all intellectual property rights in our Services, including all source code, databases, functionality, software, website designs, audio, video, text, photographs, and graphics in the Services (collectively, the "Content"), as well as the trademarks, service marks, and logos contained therein (the "Marks").</p>
|
<p>We are the owner or the licensee of all intellectual property rights in our Services, including all source code, databases, functionality, software, website designs, audio, video, text, photographs, and graphics in the Services (collectively, the "Content"), as well as the trademarks, service marks, and logos contained therein (the "Marks").</p>
|
||||||
<p>Our Content and Marks are protected by copyright and trademark laws (and various other intellectual property rights and unfair competition laws) and treaties around the world.</p>
|
<p>Our Content and Marks are protected by copyright and trademark laws (and various other intellectual property rights and unfair competition laws) and treaties around the world.</p>
|
||||||
<p>The Content and Marks are provided in or through the Services "AS IS" for your personal, non-commercial use or internal business purpose only.</p>
|
<p>The Content and Marks are provided in or through the Services "AS IS" for your personal, non-commercial use or internal business purpose only.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Your use of our Services</strong></h3>
|
<h3><strong>Your use of our Services</strong></h3>
|
||||||
<p>Subject to your compliance with these Legal Terms, including the "<a class="link text-accent italic" href="#prohibited">PROHIBITED ACTIVITIES</a>" section below, we grant you a non-exclusive, non-transferable, revocable license to:</p>
|
<p>Subject to your compliance with these Legal Terms, including the "<a href="#prohibited">PROHIBITED ACTIVITIES</a>" section below, we grant you a non-exclusive, non-transferable, revocable license to:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>access the Services; and</li>
|
<li>access the Services; and</li>
|
||||||
<li>download or print a copy of any portion of the Content to which you have properly gained access,</li>
|
<li>download or print a copy of any portion of the Content to which you have properly gained access,</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>solely for your personal, non-commercial use or internal business purpose.</p>
|
<p>solely for your personal, non-commercial use or internal business purpose.</p>
|
||||||
<p>Except as set out in this section or elsewhere in our Legal Terms, no part of the Services and no Content or Marks may be copied, reproduced, aggregated, republished, uploaded, posted, publicly displayed, encoded, translated, transmitted, distributed, sold, licensed, or otherwise exploited for any commercial purpose whatsoever, without our express prior written permission.</p>
|
<p>Except as set out in this section or elsewhere in our Legal Terms, no part of the Services and no Content or Marks may be copied, reproduced, aggregated, republished, uploaded, posted, publicly displayed, encoded, translated, transmitted, distributed, sold, licensed, or otherwise exploited for any commercial purpose whatsoever, without our express prior written permission.</p>
|
||||||
<p>If you wish to make any use of the Services, Content, or Marks other than as set out in this section or elsewhere in our Legal Terms, please address your request to: <a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a>. If we ever grant you the permission to post, reproduce, or publicly display any part of our Services or Content, you must identify us as the owners or licensors of the Services, Content, or Marks and ensure that any copyright or proprietary notice appears or is visible on posting, reproducing, or displaying our Content.</p>
|
<p>If you wish to make any use of the Services, Content, or Marks other than as set out in this section or elsewhere in our Legal Terms, please address your request to: <a href="mailto:privacy@hexname.com">privacy@hexname.com</a>. If we ever grant you the permission to post, reproduce, or publicly display any part of our Services or Content, you must identify us as the owners or licensors of the Services, Content, or Marks and ensure that any copyright or proprietary notice appears or is visible on posting, reproducing, or displaying our Content.</p>
|
||||||
<p>We reserve all rights not expressly granted to you in and to the Services, Content, and Marks.</p>
|
<p>We reserve all rights not expressly granted to you in and to the Services, Content, and Marks.</p>
|
||||||
<p>Any breach of these Intellectual Property Rights will constitute a material breach of our Legal Terms and your right to use our Services will terminate immediately.</p>
|
<p>Any breach of these Intellectual Property Rights will constitute a material breach of our Legal Terms and your right to use our Services will terminate immediately.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Your submissions</strong></h3>
|
<h3><strong>Your submissions</strong></h3>
|
||||||
<p>Please review this section and the "<a class="link text-accent italic" href="#prohibited">PROHIBITED ACTIVITIES</a>" section carefully prior to using our Services to understand the (a) rights you give us and (b) obligations you have when you post or upload any content through the Services.</p>
|
<p>Please review this section and the "<a href="#prohibited">PROHIBITED ACTIVITIES</a>" section carefully prior to using our Services to understand the (a) rights you give us and (b) obligations you have when you post or upload any content through the Services.</p>
|
||||||
<p><strong>Submissions:</strong> By directly sending us any question, comment, suggestion, idea, feedback, or other information about the Services ("Submissions"), you agree to assign to us all intellectual property rights in such Submission. You agree that we shall own this Submission and be entitled to its unrestricted use and dissemination for any lawful purpose, commercial or otherwise, without acknowledgment or compensation to you.</p>
|
<p><strong>Submissions:</strong> By directly sending us any question, comment, suggestion, idea, feedback, or other information about the Services ("Submissions"), you agree to assign to us all intellectual property rights in such Submission. You agree that we shall own this Submission and be entitled to its unrestricted use and dissemination for any lawful purpose, commercial or otherwise, without acknowledgment or compensation to you.</p>
|
||||||
<p><strong>You are responsible for what you post or upload:</strong> By sending us Submissions through any part of the Services you:</p>
|
<p><strong>You are responsible for what you post or upload:</strong> By sending us Submissions through any part of the Services you:</p>
|
||||||
<ul>
|
<ul>
|
||||||
<li>confirm that you have read and agree with our "<a class="link text-accent italic" href="#prohibited">PROHIBITED ACTIVITIES</a>" and will not post, send, publish, upload, or transmit through the Services any Submission that is illegal, harassing, hateful, harmful, defamatory, obscene, bullying, abusive, discriminatory, threatening to any person or group, sexually explicit, false, inaccurate, deceitful, or misleading;
|
<li>confirm that you have read and agree with our "<a href="#prohibited">PROHIBITED ACTIVITIES</a>" and will not post, send, publish, upload, or transmit through the Services any Submission that is illegal, harassing, hateful, harmful, defamatory, obscene, bullying, abusive, discriminatory, threatening to any person or group, sexually explicit, false, inaccurate, deceitful, or misleading;
|
||||||
</li>
|
</li>
|
||||||
<li>to the extent permissible by applicable law, waive any and all moral rights to any such Submission;</li>
|
<li>to the extent permissible by applicable law, waive any and all moral rights to any such Submission;</li>
|
||||||
<li>warrant that any such Submission are original to you or that you have the necessary rights and licenses to submit such Submissions and that you have full authority to grant us the above-mentioned rights in relation to your Submissions; and</li>
|
<li>warrant that any such Submission are original to you or that you have the necessary rights and licenses to submit such Submissions and that you have full authority to grant us the above-mentioned rights in relation to your Submissions; and</li>
|
||||||
<li>warrant and represent that your Submissions do not constitute confidential information.</li>
|
<li>warrant and represent that your Submissions do not constitute confidential information.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<p>You are solely responsible for your Submissions and you expressly agree to reimburse us for any and all losses that we may suffer because of your breach of (a) this section, (b) any third party's intellectual property rights, or (c) applicable law.</p>
|
<p>You are solely responsible for your Submissions and you expressly agree to reimburse us for any and all losses that we may suffer because of your breach of (a) this section, (b) any third party's intellectual property rights, or (c) applicable law.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>3. USER REPRESENTATIONS</strong></h2>
|
<h2><strong>3. USER REPRESENTATIONS</strong></h2>
|
||||||
<p>By using the Services, you represent and warrant that: (1) you have the legal capacity and you agree to comply with these Legal Terms; (2) you are not a minor in the jurisdiction in which you reside; (3) you will not access the Services through automated or non-human means, whether through a bot, script or otherwise; (4) you will not use the Services for any illegal or unauthorized purpose; and (5) your use of the Services will not violate any applicable law or regulation.</p>
|
<p>By using the Services, you represent and warrant that: (1) you have the legal capacity and you agree to comply with these Legal Terms; (2) you are not a minor in the jurisdiction in which you reside; (3) you will not access the Services through automated or non-human means, whether through a bot, script or otherwise; (4) you will not use the Services for any illegal or unauthorized purpose; and (5) your use of the Services will not violate any applicable law or regulation.</p>
|
||||||
<p>If you provide any information that is untrue, inaccurate, not current, or incomplete, we have the right to suspend or terminate your account and refuse any and all current or future use of the Services (or any portion thereof).</p>
|
<p>If you provide any information that is untrue, inaccurate, not current, or incomplete, we have the right to suspend or terminate your account and refuse any and all current or future use of the Services (or any portion thereof).</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>4. PROHIBITED ACTIVITIES</strong></h2>
|
<h2><strong>4. PROHIBITED ACTIVITIES</strong></h2>
|
||||||
<p>You may not access or use the Services for any purpose other than that for which we make the Services available. The Services may not be used in connection with any commercial endeavors except those that are specifically endorsed or approved by us.</p>
|
<p>You may not access or use the Services for any purpose other than that for which we make the Services available. The Services may not be used in connection with any commercial endeavors except those that are specifically endorsed or approved by us.</p>
|
||||||
<p>As a user of the Services, you agree not to:</p>
|
<p>As a user of the Services, you agree not to:</p>
|
||||||
<ul>
|
<ul>
|
||||||
|
|
@ -101,46 +103,48 @@
|
||||||
<li>Make any unauthorized use of the Services, including collecting usernames and/or email addresses of users by electronic or other means for the purpose of sending unsolicited email, or creating user accounts by automated means or under false pretenses.</li>
|
<li>Make any unauthorized use of the Services, including collecting usernames and/or email addresses of users by electronic or other means for the purpose of sending unsolicited email, or creating user accounts by automated means or under false pretenses.</li>
|
||||||
<li>Use the Services as part of any effort to compete with us or otherwise use the Services and/or the Content for any revenue-generating endeavor or commercial enterprise.</li>
|
<li>Use the Services as part of any effort to compete with us or otherwise use the Services and/or the Content for any revenue-generating endeavor or commercial enterprise.</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>5. USER GENERATED CONTRIBUTIONS</strong></h2>
|
<h2><strong>5. USER GENERATED CONTRIBUTIONS</strong></h2>
|
||||||
<p>The Services does not offer users to submit or post content. We may provide you with the opportunity to create, submit, post, display, transmit, perform, publish, distribute, or broadcast content and materials to us or on the Services, including but not limited to text, writings, video, audio, photographs, graphics, comments, suggestions, or personal information or other material (collectively, "Contributions"). Contributions may be viewable by other users of the Services and through third-party websites. When you create or make available any Contributions, you thereby represent and warrant that:</p>
|
<p>The Services does not offer users to submit or post content. We may provide you with the opportunity to create, submit, post, display, transmit, perform, publish, distribute, or broadcast content and materials to us or on the Services, including but not limited to text, writings, video, audio, photographs, graphics, comments, suggestions, or personal information or other material (collectively, "Contributions"). Contributions may be viewable by other users of the Services and through third-party websites. When you create or make available any Contributions, you thereby represent and warrant that:</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>6. CONTRIBUTION LICENSE</strong></h2>
|
<h2><strong>6. CONTRIBUTION LICENSE</strong></h2>
|
||||||
<p>You and Services agree that we may access, store, process, and use any information and personal data that you provide and your choices (including settings).</p>
|
<p>You and Services agree that we may access, store, process, and use any information and personal data that you provide and your choices (including settings).</p>
|
||||||
<p>By submitting suggestions or other feedback regarding the Services, you agree that we can use and share such feedback for any purpose without compensation to you.</p>
|
<p>By submitting suggestions or other feedback regarding the Services, you agree that we can use and share such feedback for any purpose without compensation to you.</p>
|
||||||
<p>We do not assert any ownership over your Contributions. You retain full ownership of all of your Contributions and any intellectual property rights or other proprietary rights associated with your Contributions. We are not liable for any statements or representations in your Contributions provided by you in any area on the Services. You are solely responsible for your Contributions to the Services and you expressly agree to exonerate us from any and all responsibility and to refrain from any legal action against us regarding your Contributions.</p>
|
<p>We do not assert any ownership over your Contributions. You retain full ownership of all of your Contributions and any intellectual property rights or other proprietary rights associated with your Contributions. We are not liable for any statements or representations in your Contributions provided by you in any area on the Services. You are solely responsible for your Contributions to the Services and you expressly agree to exonerate us from any and all responsibility and to refrain from any legal action against us regarding your Contributions.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>7. SERVICES MANAGEMENT</strong></h2>
|
<h2><strong>7. SERVICES MANAGEMENT</strong></h2>
|
||||||
<p>We reserve the right, but not the obligation, to: (1) monitor the Services for violations of these Legal Terms; (2) take appropriate legal action against anyone who, in our sole discretion, violates the law or these Legal Terms, including without limitation, reporting such user to law enforcement authorities; (3) in our sole discretion and without limitation, refuse, restrict access to, limit the availability of, or disable (to the extent technologically feasible) any of your Contributions or any portion thereof; (4) in our sole discretion and without limitation, notice, or liability, to remove from the Services or otherwise disable all files and content that are excessive in size or are in any way burdensome to our systems; and (5) otherwise manage the Services in a manner designed to protect our rights and property and to facilitate the proper functioning of the Services.</p>
|
<p>We reserve the right, but not the obligation, to: (1) monitor the Services for violations of these Legal Terms; (2) take appropriate legal action against anyone who, in our sole discretion, violates the law or these Legal Terms, including without limitation, reporting such user to law enforcement authorities; (3) in our sole discretion and without limitation, refuse, restrict access to, limit the availability of, or disable (to the extent technologically feasible) any of your Contributions or any portion thereof; (4) in our sole discretion and without limitation, notice, or liability, to remove from the Services or otherwise disable all files and content that are excessive in size or are in any way burdensome to our systems; and (5) otherwise manage the Services in a manner designed to protect our rights and property and to facilitate the proper functioning of the Services.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>8. TERM AND TERMINATION</strong></h2>
|
<h2><strong>8. TERM AND TERMINATION</strong></h2>
|
||||||
<p>These Legal Terms shall remain in full force and effect while you use the Services. WITHOUT LIMITING ANY OTHER PROVISION OF THESE LEGAL TERMS, WE RESERVE THE RIGHT TO, IN OUR SOLE DISCRETION AND WITHOUT NOTICE OR LIABILITY, DENY ACCESS TO AND USE OF THE SERVICES (INCLUDING BLOCKING CERTAIN IP ADDRESSES), TO ANY PERSON FOR ANY REASON OR FOR NO REASON, INCLUDING WITHOUT LIMITATION FOR BREACH OF ANY REPRESENTATION, WARRANTY, OR COVENANT CONTAINED IN THESE LEGAL TERMS OR OF ANY APPLICABLE LAW OR REGULATION. WE MAY TERMINATE YOUR USE OR PARTICIPATION IN THE SERVICES OR DELETE ANY CONTENT OR INFORMATION THAT YOU POSTED AT ANY TIME, WITHOUT WARNING, IN OUR SOLE DISCRETION.</p>
|
<p>These Legal Terms shall remain in full force and effect while you use the Services. WITHOUT LIMITING ANY OTHER PROVISION OF THESE LEGAL TERMS, WE RESERVE THE RIGHT TO, IN OUR SOLE DISCRETION AND WITHOUT NOTICE OR LIABILITY, DENY ACCESS TO AND USE OF THE SERVICES (INCLUDING BLOCKING CERTAIN IP ADDRESSES), TO ANY PERSON FOR ANY REASON OR FOR NO REASON, INCLUDING WITHOUT LIMITATION FOR BREACH OF ANY REPRESENTATION, WARRANTY, OR COVENANT CONTAINED IN THESE LEGAL TERMS OR OF ANY APPLICABLE LAW OR REGULATION. WE MAY TERMINATE YOUR USE OR PARTICIPATION IN THE SERVICES OR DELETE ANY CONTENT OR INFORMATION THAT YOU POSTED AT ANY TIME, WITHOUT WARNING, IN OUR SOLE DISCRETION.</p>
|
||||||
<p>If we terminate or suspend your account for any reason, you are prohibited from registering and creating a new account under your name, a fake or borrowed name, or the name of any third party, even if you may be acting on behalf of the third party. In addition to terminating or suspending your account, we reserve the right to take appropriate legal action, including without limitation pursuing civil, criminal, and injunctive redress.</p>
|
<p>If we terminate or suspend your account for any reason, you are prohibited from registering and creating a new account under your name, a fake or borrowed name, or the name of any third party, even if you may be acting on behalf of the third party. In addition to terminating or suspending your account, we reserve the right to take appropriate legal action, including without limitation pursuing civil, criminal, and injunctive redress.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>9. MODIFICATIONS AND INTERRUPTIONS</strong></h2>
|
<h2><strong>9. MODIFICATIONS AND INTERRUPTIONS</strong></h2>
|
||||||
<p>We reserve the right to change, modify, or remove the contents of the Services at any time or for any reason at our sole discretion without notice. However, we have no obligation to update any information on our Services. We will not be liable to you or any third party for any modification, price change, suspension, or discontinuance of the Services.</p>
|
<p>We reserve the right to change, modify, or remove the contents of the Services at any time or for any reason at our sole discretion without notice. However, we have no obligation to update any information on our Services. We will not be liable to you or any third party for any modification, price change, suspension, or discontinuance of the Services.</p>
|
||||||
<p>We cannot guarantee the Services will be available at all times. We may experience hardware, software, or other problems or need to perform maintenance related to the Services, resulting in interruptions, delays, or errors. We reserve the right to change, revise, update, suspend, discontinue, or otherwise modify the Services at any time or for any reason without notice to you. You agree that we have no liability whatsoever for any loss, damage, or inconvenience caused by your inability to access or use the Services during any downtime or discontinuance of the Services. Nothing in these Legal Terms will be construed to obligate us to maintain and support the Services or to supply any corrections, updates, or releases in connection therewith.</p>
|
<p>We cannot guarantee the Services will be available at all times. We may experience hardware, software, or other problems or need to perform maintenance related to the Services, resulting in interruptions, delays, or errors. We reserve the right to change, revise, update, suspend, discontinue, or otherwise modify the Services at any time or for any reason without notice to you. You agree that we have no liability whatsoever for any loss, damage, or inconvenience caused by your inability to access or use the Services during any downtime or discontinuance of the Services. Nothing in these Legal Terms will be construed to obligate us to maintain and support the Services or to supply any corrections, updates, or releases in connection therewith.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>10. GOVERNING LAW</strong></h2>
|
<h2><strong>10. GOVERNING LAW</strong></h2>
|
||||||
<p>These Legal Terms shall be governed by and defined following the laws of Germany. HexName and yourself irrevocably consent that the courts of Germany shall have exclusive jurisdiction to resolve any dispute which may arise in connection with these Legal Terms.</p>
|
<p>These Legal Terms shall be governed by and defined following the laws of Germany. HexName and yourself irrevocably consent that the courts of Germany shall have exclusive jurisdiction to resolve any dispute which may arise in connection with these Legal Terms.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>11. DISPUTE RESOLUTION</strong></h2>
|
<h2><strong>11. DISPUTE RESOLUTION</strong></h2>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Informal Negotiations</strong></h3>
|
<h3><strong>Informal Negotiations</strong></h3>
|
||||||
<p>To expedite resolution and control the cost of any dispute, controversy, or claim related to these Legal Terms (each a "Dispute" and collectively, the "Disputes") brought by either you or us (individually, a "Party" and collectively, the "Parties"), the Parties agree to first attempt to negotiate any Dispute (except those Disputes expressly provided below) informally for at least 30 days before initiating arbitration. Such informal negotiations commence upon written notice from one Party to the other Party.</p>
|
<p>To expedite resolution and control the cost of any dispute, controversy, or claim related to these Legal Terms (each a "Dispute" and collectively, the "Disputes") brought by either you or us (individually, a "Party" and collectively, the "Parties"), the Parties agree to first attempt to negotiate any Dispute (except those Disputes expressly provided below) informally for at least 30 days before initiating arbitration. Such informal negotiations commence upon written notice from one Party to the other Party.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Binding Arbitration</strong></h3>
|
<h3><strong>Binding Arbitration</strong></h3>
|
||||||
<p>Any dispute arising out of or in connection with these Legal Terms, including any question regarding its existence, validity, or termination, shall be referred to and finally resolved by the International Commercial Arbitration Court under the European Arbitration Chamber (Belgium, Brussels, Avenue Louise, 146) according to the Rules of this ICAC, which, as a result of referring to it, is considered as the part of this clause. The number of arbitrators shall be 1. The seat, or legal place, or arbitration shall be Germany. The language of the proceedings shall be English. The governing law of these Legal Terms shall be substantive law of Germany.</p>
|
<p>Any dispute arising out of or in connection with these Legal Terms, including any question regarding its existence, validity, or termination, shall be referred to and finally resolved by the International Commercial Arbitration Court under the European Arbitration Chamber (Belgium, Brussels, Avenue Louise, 146) according to the Rules of this ICAC, which, as a result of referring to it, is considered as the part of this clause. The number of arbitrators shall be 1. The seat, or legal place, or arbitration shall be Germany. The language of the proceedings shall be English. The governing law of these Legal Terms shall be substantive law of Germany.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Restrictions</strong></h3>
|
<h3><strong>Restrictions</strong></h3>
|
||||||
<p>The Parties agree that any arbitration shall be limited to the Dispute between the Parties individually. To the full extent permitted by law, (a) no arbitration shall be joined with any other proceeding; (b) there is no right or authority for any Dispute to be arbitrated on a class-action basis or to utilize class action procedures; and (c) there is no right or authority for any Dispute to be brought in a purported representative capacity on behalf of the general public or any other persons.</p>
|
<p>The Parties agree that any arbitration shall be limited to the Dispute between the Parties individually. To the full extent permitted by law, (a) no arbitration shall be joined with any other proceeding; (b) there is no right or authority for any Dispute to be arbitrated on a class-action basis or to utilize class action procedures; and (c) there is no right or authority for any Dispute to be brought in a purported representative capacity on behalf of the general public or any other persons.</p>
|
||||||
<h3 class="text-xl text-secondary p-4 font-bold"><strong>Exceptions to Informal Negotiations and Arbitration</strong></h3>
|
<h3><strong>Exceptions to Informal Negotiations and Arbitration</strong></h3>
|
||||||
<p>The Parties agree that the following Disputes are not subject to the above provisions concerning informal negotiations binding arbitration: (a) any Disputes seeking to enforce or protect, or concerning the validity of, any of the intellectual property rights of a Party; (b) any Dispute related to, or arising from, allegations of theft, piracy, invasion of privacy, or unauthorized use; and (c) any claim for injunctive relief. If this provision is found to be illegal or unenforceable, then neither Party will elect to arbitrate any Dispute falling within that portion of this provision found to be illegal or unenforceable and such Dispute shall be decided by a court of competent jurisdiction within the courts listed for jurisdiction above, and the Parties agree to submit to the personal jurisdiction of that court.</p>
|
<p>The Parties agree that the following Disputes are not subject to the above provisions concerning informal negotiations binding arbitration: (a) any Disputes seeking to enforce or protect, or concerning the validity of, any of the intellectual property rights of a Party; (b) any Dispute related to, or arising from, allegations of theft, piracy, invasion of privacy, or unauthorized use; and (c) any claim for injunctive relief. If this provision is found to be illegal or unenforceable, then neither Party will elect to arbitrate any Dispute falling within that portion of this provision found to be illegal or unenforceable and such Dispute shall be decided by a court of competent jurisdiction within the courts listed for jurisdiction above, and the Parties agree to submit to the personal jurisdiction of that court.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>12. CORRECTIONS</strong></h2>
|
<h2><strong>12. CORRECTIONS</strong></h2>
|
||||||
<p>There may be information on the Services that contains typographical errors, inaccuracies, or omissions, including descriptions, pricing, availability, and various other information. We reserve the right to correct any errors, inaccuracies, or omissions and to change or update the information on the Services at any time, without prior notice.</p>
|
<p>There may be information on the Services that contains typographical errors, inaccuracies, or omissions, including descriptions, pricing, availability, and various other information. We reserve the right to correct any errors, inaccuracies, or omissions and to change or update the information on the Services at any time, without prior notice.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>13. DISCLAIMER</strong></h2>
|
<h2><strong>13. DISCLAIMER</strong></h2>
|
||||||
<p>THE SERVICES ARE PROVIDED ON AN AS-IS AND AS-AVAILABLE BASIS. YOU AGREE THAT YOUR USE OF THE SERVICES WILL BE AT YOUR SOLE RISK. TO THE FULLEST EXTENT PERMITTED BY LAW, WE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, IN CONNECTION WITH THE SERVICES AND YOUR USE THEREOF, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. WE MAKE NO WARRANTIES OR REPRESENTATIONS ABOUT THE ACCURACY OR COMPLETENESS OF THE SERVICES' CONTENT OR THE CONTENT OF ANY WEBSITES OR MOBILE APPLICATIONS LINKED TO THE SERVICES AND WE WILL ASSUME NO LIABILITY OR RESPONSIBILITY FOR ANY (1) ERRORS, MISTAKES, OR INACCURACIES OF CONTENT AND MATERIALS, (2) PERSONAL INJURY OR PROPERTY DAMAGE, OF ANY NATURE WHATSOEVER, RESULTING FROM YOUR ACCESS TO AND USE OF THE SERVICES, (3) ANY UNAUTHORIZED ACCESS TO OR USE OF OUR SECURE SERVERS AND/OR ANY AND ALL PERSONAL INFORMATION AND/OR FINANCIAL INFORMATION STORED THEREIN, (4) ANY INTERRUPTION OR CESSATION OF TRANSMISSION TO OR FROM THE SERVICES, (5) ANY BUGS, VIRUSES, TROJAN HORSES, OR THE LIKE WHICH MAY BE TRANSMITTED TO OR THROUGH THE SERVICES BY ANY THIRD PARTY, AND/OR (6) ANY ERRORS OR OMISSIONS IN ANY CONTENT AND MATERIALS OR FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF ANY CONTENT POSTED, TRANSMITTED, OR OTHERWISE MADE AVAILABLE VIA THE SERVICES. WE DO NOT WARRANT, ENDORSE, GUARANTEE, OR ASSUME RESPONSIBILITY FOR ANY PRODUCT OR SERVICE ADVERTISED OR OFFERED BY A THIRD PARTY THROUGH THE SERVICES, ANY HYPERLINKED WEBSITE, OR ANY WEBSITE OR MOBILE APPLICATION FEATURED IN ANY BANNER OR OTHER ADVERTISING, AND WE WILL NOT BE A PARTY TO OR IN ANY WAY BE RESPONSIBLE FOR MONITORING ANY TRANSACTION BETWEEN YOU AND ANY THIRD-PARTY PROVIDERS OF PRODUCTS OR SERVICES. AS WITH THE PURCHASE OF A PRODUCT OR SERVICE THROUGH ANY MEDIUM OR IN ANY ENVIRONMENT, YOU SHOULD USE YOUR BEST JUDGMENT AND EXERCISE CAUTION WHERE APPROPRIATE.</p>
|
<p>THE SERVICES ARE PROVIDED ON AN AS-IS AND AS-AVAILABLE BASIS. YOU AGREE THAT YOUR USE OF THE SERVICES WILL BE AT YOUR SOLE RISK. TO THE FULLEST EXTENT PERMITTED BY LAW, WE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, IN CONNECTION WITH THE SERVICES AND YOUR USE THEREOF, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. WE MAKE NO WARRANTIES OR REPRESENTATIONS ABOUT THE ACCURACY OR COMPLETENESS OF THE SERVICES' CONTENT OR THE CONTENT OF ANY WEBSITES OR MOBILE APPLICATIONS LINKED TO THE SERVICES AND WE WILL ASSUME NO LIABILITY OR RESPONSIBILITY FOR ANY (1) ERRORS, MISTAKES, OR INACCURACIES OF CONTENT AND MATERIALS, (2) PERSONAL INJURY OR PROPERTY DAMAGE, OF ANY NATURE WHATSOEVER, RESULTING FROM YOUR ACCESS TO AND USE OF THE SERVICES, (3) ANY UNAUTHORIZED ACCESS TO OR USE OF OUR SECURE SERVERS AND/OR ANY AND ALL PERSONAL INFORMATION AND/OR FINANCIAL INFORMATION STORED THEREIN, (4) ANY INTERRUPTION OR CESSATION OF TRANSMISSION TO OR FROM THE SERVICES, (5) ANY BUGS, VIRUSES, TROJAN HORSES, OR THE LIKE WHICH MAY BE TRANSMITTED TO OR THROUGH THE SERVICES BY ANY THIRD PARTY, AND/OR (6) ANY ERRORS OR OMISSIONS IN ANY CONTENT AND MATERIALS OR FOR ANY LOSS OR DAMAGE OF ANY KIND INCURRED AS A RESULT OF THE USE OF ANY CONTENT POSTED, TRANSMITTED, OR OTHERWISE MADE AVAILABLE VIA THE SERVICES. WE DO NOT WARRANT, ENDORSE, GUARANTEE, OR ASSUME RESPONSIBILITY FOR ANY PRODUCT OR SERVICE ADVERTISED OR OFFERED BY A THIRD PARTY THROUGH THE SERVICES, ANY HYPERLINKED WEBSITE, OR ANY WEBSITE OR MOBILE APPLICATION FEATURED IN ANY BANNER OR OTHER ADVERTISING, AND WE WILL NOT BE A PARTY TO OR IN ANY WAY BE RESPONSIBLE FOR MONITORING ANY TRANSACTION BETWEEN YOU AND ANY THIRD-PARTY PROVIDERS OF PRODUCTS OR SERVICES. AS WITH THE PURCHASE OF A PRODUCT OR SERVICE THROUGH ANY MEDIUM OR IN ANY ENVIRONMENT, YOU SHOULD USE YOUR BEST JUDGMENT AND EXERCISE CAUTION WHERE APPROPRIATE.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>14. LIMITATIONS OF LIABILITY</strong></h2>
|
<h2><strong>14. LIMITATIONS OF LIABILITY</strong></h2>
|
||||||
<p>IN NO EVENT WILL WE OR OUR DIRECTORS, EMPLOYEES, OR AGENTS BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, SPECIAL, OR PUNITIVE DAMAGES, INCLUDING LOST PROFIT, LOST REVENUE, LOSS OF DATA, OR OTHER DAMAGES ARISING FROM YOUR USE OF THE SERVICES, EVEN IF WE HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED HEREIN, OUR LIABILITY TO YOU FOR ANY CAUSE WHATSOEVER AND REGARDLESS OF THE FORM OF THE ACTION, WILL AT ALL TIMES BE LIMITED TO THE LESSER OF THE AMOUNT PAID, IF ANY, BY YOU TO US OR . CERTAIN US STATE LAWS AND INTERNATIONAL LAWS DO NOT ALLOW LIMITATIONS ON IMPLIED WARRANTIES OR THE EXCLUSION OR LIMITATION OF CERTAIN DAMAGES. IF THESE LAWS APPLY TO YOU, SOME OR ALL OF THE ABOVE DISCLAIMERS OR LIMITATIONS MAY NOT APPLY TO YOU, AND YOU MAY HAVE ADDITIONAL RIGHTS.</p>
|
<p>IN NO EVENT WILL WE OR OUR DIRECTORS, EMPLOYEES, OR AGENTS BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY DIRECT, INDIRECT, CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, SPECIAL, OR PUNITIVE DAMAGES, INCLUDING LOST PROFIT, LOST REVENUE, LOSS OF DATA, OR OTHER DAMAGES ARISING FROM YOUR USE OF THE SERVICES, EVEN IF WE HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED HEREIN, OUR LIABILITY TO YOU FOR ANY CAUSE WHATSOEVER AND REGARDLESS OF THE FORM OF THE ACTION, WILL AT ALL TIMES BE LIMITED TO THE LESSER OF THE AMOUNT PAID, IF ANY, BY YOU TO US OR . CERTAIN US STATE LAWS AND INTERNATIONAL LAWS DO NOT ALLOW LIMITATIONS ON IMPLIED WARRANTIES OR THE EXCLUSION OR LIMITATION OF CERTAIN DAMAGES. IF THESE LAWS APPLY TO YOU, SOME OR ALL OF THE ABOVE DISCLAIMERS OR LIMITATIONS MAY NOT APPLY TO YOU, AND YOU MAY HAVE ADDITIONAL RIGHTS.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>15. INDEMNIFICATION</strong></h2>
|
<h2><strong>15. INDEMNIFICATION</strong></h2>
|
||||||
<p>You agree to defend, indemnify, and hold us harmless, including our subsidiaries, affiliates, and all of our respective officers, agents, partners, and employees, from and against any loss, damage, liability, claim, or demand, including reasonable attorneys' fees and expenses, made by any third party due to or arising out of: (1) use of the Services; (2) breach of these Legal Terms; (3) any breach of your representations and warranties set forth in these Legal Terms; (4) your violation of the rights of a third party, including but not limited to intellectual property rights; or (5) any overt harmful act toward any other user of the Services with whom you connected via the Services. Notwithstanding the foregoing, we reserve the right, at your expense, to assume the exclusive defense and control of any matter for which you are required to indemnify us, and you agree to cooperate, at your expense, with our defense of such claims. We will use reasonable efforts to notify you of any such claim, action, or proceeding which is subject to this indemnification upon becoming aware of it.</p>
|
<p>You agree to defend, indemnify, and hold us harmless, including our subsidiaries, affiliates, and all of our respective officers, agents, partners, and employees, from and against any loss, damage, liability, claim, or demand, including reasonable attorneys' fees and expenses, made by any third party due to or arising out of: (1) use of the Services; (2) breach of these Legal Terms; (3) any breach of your representations and warranties set forth in these Legal Terms; (4) your violation of the rights of a third party, including but not limited to intellectual property rights; or (5) any overt harmful act toward any other user of the Services with whom you connected via the Services. Notwithstanding the foregoing, we reserve the right, at your expense, to assume the exclusive defense and control of any matter for which you are required to indemnify us, and you agree to cooperate, at your expense, with our defense of such claims. We will use reasonable efforts to notify you of any such claim, action, or proceeding which is subject to this indemnification upon becoming aware of it.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>16. USER DATA</strong></h2>
|
<h2><strong>16. USER DATA</strong></h2>
|
||||||
<p>We will maintain certain data that you transmit to the Services for the purpose of managing the performance of the Services, as well as data relating to your use of the Services. Although we perform regular routine backups of data, you are solely responsible for all data that you transmit or that relates to any activity you have undertaken using the Services. You agree that we shall have no liability to you for any loss or corruption of any such data, and you hereby waive any right of action against us arising from any such loss or corruption of such data.</p>
|
<p>We will maintain certain data that you transmit to the Services for the purpose of managing the performance of the Services, as well as data relating to your use of the Services. Although we perform regular routine backups of data, you are solely responsible for all data that you transmit or that relates to any activity you have undertaken using the Services. You agree that we shall have no liability to you for any loss or corruption of any such data, and you hereby waive any right of action against us arising from any such loss or corruption of such data.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>17. ELECTRONIC COMMUNICATIONS, TRANSACTIONS, AND SIGNATURES</strong></h2>
|
<h2><strong>17. ELECTRONIC COMMUNICATIONS, TRANSACTIONS, AND SIGNATURES</strong></h2>
|
||||||
<p>Visiting the Services, sending us emails, and completing online forms constitute electronic communications. You consent to receive electronic communications, and you agree that all agreements, notices, disclosures, and other communications we provide to you electronically, via email and on the Services, satisfy any legal requirement that such communication be in writing. YOU HEREBY AGREE TO THE USE OF ELECTRONIC SIGNATURES, CONTRACTS, ORDERS, AND OTHER RECORDS, AND TO ELECTRONIC DELIVERY OF NOTICES, POLICIES, AND RECORDS OF TRANSACTIONS INITIATED OR COMPLETED BY US OR VIA THE SERVICES. You hereby waive any rights or requirements under any statutes, regulations, rules, ordinances, or other laws in any jurisdiction which require an original signature or delivery or retention of non-electronic records, or to payments or the granting of credits by any means other than electronic means.</p>
|
<p>Visiting the Services, sending us emails, and completing online forms constitute electronic communications. You consent to receive electronic communications, and you agree that all agreements, notices, disclosures, and other communications we provide to you electronically, via email and on the Services, satisfy any legal requirement that such communication be in writing. YOU HEREBY AGREE TO THE USE OF ELECTRONIC SIGNATURES, CONTRACTS, ORDERS, AND OTHER RECORDS, AND TO ELECTRONIC DELIVERY OF NOTICES, POLICIES, AND RECORDS OF TRANSACTIONS INITIATED OR COMPLETED BY US OR VIA THE SERVICES. You hereby waive any rights or requirements under any statutes, regulations, rules, ordinances, or other laws in any jurisdiction which require an original signature or delivery or retention of non-electronic records, or to payments or the granting of credits by any means other than electronic means.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>18. MISCELLANEOUS</strong></h2>
|
<h2><strong>18. MISCELLANEOUS</strong></h2>
|
||||||
<p>These Legal Terms and any policies or operating rules posted by us on the Services or in respect to the Services constitute the entire agreement and understanding between you and us. Our failure to exercise or enforce any right or provision of these Legal Terms shall not operate as a waiver of such right or provision. These Legal Terms operate to the fullest extent permissible by law. We may assign any or all of our rights and obligations to others at any time. We shall not be responsible or liable for any loss, damage, delay, or failure to act caused by any cause beyond our reasonable control. If any provision or part of a provision of these Legal Terms is determined to be unlawful, void, or unenforceable, that provision or part of the provision is deemed severable from these Legal Terms and does not affect the validity and enforceability of any remaining provisions. There is no joint venture, partnership, employment or agency relationship created between you and us as a result of these Legal Terms or use of the Services. You agree that these Legal Terms will not be construed against us by virtue of having drafted them. You hereby waive any and all defenses you may have based on the electronic form of these Legal Terms and the lack of signing by the parties hereto to execute these Legal Terms.</p>
|
<p>These Legal Terms and any policies or operating rules posted by us on the Services or in respect to the Services constitute the entire agreement and understanding between you and us. Our failure to exercise or enforce any right or provision of these Legal Terms shall not operate as a waiver of such right or provision. These Legal Terms operate to the fullest extent permissible by law. We may assign any or all of our rights and obligations to others at any time. We shall not be responsible or liable for any loss, damage, delay, or failure to act caused by any cause beyond our reasonable control. If any provision or part of a provision of these Legal Terms is determined to be unlawful, void, or unenforceable, that provision or part of the provision is deemed severable from these Legal Terms and does not affect the validity and enforceability of any remaining provisions. There is no joint venture, partnership, employment or agency relationship created between you and us as a result of these Legal Terms or use of the Services. You agree that these Legal Terms will not be construed against us by virtue of having drafted them. You hereby waive any and all defenses you may have based on the electronic form of these Legal Terms and the lack of signing by the parties hereto to execute these Legal Terms.</p>
|
||||||
<h2 class="text-2xl text-secondary p-4 font-bold"><strong>19. CONTACT US</strong></h2>
|
<h2><strong>19. CONTACT US</strong></h2>
|
||||||
<p>In order to resolve a complaint regarding the Services or to receive further information regarding use of the Services, please contact us at:</p>
|
<p>In order to resolve a complaint regarding the Services or to receive further information regarding use of the Services, please contact us at:</p>
|
||||||
<p><strong><a class="link text-accent italic" href="mailto:privacy@hexname.com">privacy@hexname.com</a></strong></p>
|
<p><strong><a href="mailto:privacy@hexname.com">privacy@hexname.com</a></strong></p>
|
||||||
|
</article>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -1,12 +1,22 @@
|
||||||
import adapter from "@sveltejs/adapter-node";
|
import adapter from "@sveltejs/adapter-node";
|
||||||
import { vitePreprocess } from "@sveltejs/vite-plugin-svelte";
|
import { vitePreprocess } from "@sveltejs/vite-plugin-svelte";
|
||||||
|
import { mdsvex } from 'mdsvex';
|
||||||
|
|
||||||
/** @type {import('@sveltejs/kit').Config} */
|
/** @type {import('@sveltejs/kit').Config} */
|
||||||
const config = {
|
const config = {
|
||||||
// Consult https://svelte.dev/docs/kit/integrations
|
// Consult https://svelte.dev/docs/kit/integrations
|
||||||
// for more information about preprocessors
|
// for more information about preprocessors
|
||||||
preprocess: vitePreprocess(),
|
extensions: ['.svelte', '.md'],
|
||||||
|
|
||||||
|
preprocess: [
|
||||||
|
vitePreprocess(),
|
||||||
|
mdsvex({
|
||||||
|
extensions: ['.md']
|
||||||
|
})
|
||||||
|
],
|
||||||
|
|
||||||
kit: { adapter: adapter() },
|
kit: { adapter: adapter() },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
export default config;
|
export default config;
|
||||||
|
|
|
||||||
|
|
@ -5,3 +5,4 @@ import { defineConfig } from "vite";
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
plugins: [tailwindcss(), sveltekit()],
|
plugins: [tailwindcss(), sveltekit()],
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue