diff --git a/.env.example b/.env.example
index 6f3567c..1be937e 100644
--- a/.env.example
+++ b/.env.example
@@ -37,7 +37,7 @@ SMTP_FROM_NAME=Ihor Kyrychenko
SMTP_FROM_EMAIL=igor@legal.org.ua
SMTP_REPLY_TO=igor@legal.org.ua
# Public base URL for unsubscribe links + secret to sign unsubscribe tokens
-PUBLIC_BASE_URL=https://selected.highfunk.uk
+PUBLIC_BASE_URL=https://crm.legal.org.ua
UNSUBSCRIBE_SECRET=change_me_to_a_long_random_string
# SES relay reputation / warm-up (mail server relays outbound through AWS SES)
diff --git a/Caddyfile b/Caddyfile
index 3b2b170..1dad21f 100644
--- a/Caddyfile
+++ b/Caddyfile
@@ -1,3 +1,3 @@
-http://selected.highfunk.uk {
+http://crm.legal.org.ua {
reverse_proxy app:3000
}
diff --git a/deploy.sh b/deploy.sh
index ef7f993..9271c23 100755
--- a/deploy.sh
+++ b/deploy.sh
@@ -19,4 +19,4 @@ rsync -avz --delete \
echo "==> Building and starting containers..."
ssh -i "$KEY" -o StrictHostKeyChecking=no "$HOST" "cd $REMOTE_DIR && docker compose -f docker-compose.prod.yml --env-file .env.prod up -d --build"
-echo "==> Done! Site: https://selected.highfunk.uk"
+echo "==> Done! Site: https://crm.legal.org.ua"
diff --git a/src/server.ts b/src/server.ts
index 1263f1e..f73e6c0 100644
--- a/src/server.ts
+++ b/src/server.ts
@@ -185,10 +185,10 @@ app.get("/blog", (req, res) => {
selected.ai — Blog
-
+
-
+
The selected.ai Blog
@@ -227,9 +227,9 @@ app.get("/blog/:slug", (req, res) => {
"headline": article.title,
"description": article.excerpt,
"datePublished": article.date,
- "author": { "@type": "Organization", "name": "selected.ai", "url": "https://selected.highfunk.uk" },
- "publisher": { "@type": "Organization", "name": "selected.ai", "url": "https://selected.highfunk.uk" },
- "mainEntityOfPage": `https://selected.highfunk.uk/blog/${article.id}`,
+ "author": { "@type": "Organization", "name": "selected.ai", "url": "https://crm.legal.org.ua" },
+ "publisher": { "@type": "Organization", "name": "selected.ai", "url": "https://crm.legal.org.ua" },
+ "mainEntityOfPage": `https://crm.legal.org.ua/blog/${article.id}`,
"keywords": article.tags.join(", "),
"articleSection": article.category,
"inLanguage": "en",
@@ -243,20 +243,20 @@ app.get("/blog/:slug", (req, res) => {
${article.title} — selected.ai Blog
-
+
-
+
-
-
-
-
-
+
+
+
+
+
diff --git a/src/web/auth.ts b/src/web/auth.ts
index 06c33c4..3f9f0ec 100644
--- a/src/web/auth.ts
+++ b/src/web/auth.ts
@@ -154,7 +154,7 @@ function getOAuth2Client(): OAuth2Client | null {
return new OAuth2Client(
appConfig.googleClientId,
appConfig.googleClientSecret,
- appConfig.googleCallbackUrl || "https://selected.highfunk.uk/auth/google/callback"
+ appConfig.googleCallbackUrl || "https://crm.legal.org.ua/auth/google/callback"
);
}
diff --git a/src/web/public/blog.html b/src/web/public/blog.html
index 349e1d9..57cb385 100644
--- a/src/web/public/blog.html
+++ b/src/web/public/blog.html
@@ -6,22 +6,22 @@
selected.ai — Blog
-
+
-
+
-
-
+
+
-
-
-
+
+
+
@@ -191,7 +191,7 @@ The selected.ai Blog
@@ -156,7 +156,7 @@
AI replaces manual prospecting. 50+ personalized messages/day.
3x higher reply rates. Zero spam.
selected.ai
- selected.highfunk.uk
+ crm.legal.org.ua
01
@@ -681,7 +681,7 @@
Volodymyr Ovcharov
CTO & Founder
-
selected.highfunk.uk
+
crm.legal.org.ua
diff --git a/src/web/public/robots.txt b/src/web/public/robots.txt
index ad402fa..3ddb731 100644
--- a/src/web/public/robots.txt
+++ b/src/web/public/robots.txt
@@ -25,4 +25,4 @@ Disallow: /pipeline
Disallow: /deals
Disallow: /follow-ups
-Sitemap: https://selected.highfunk.uk/sitemap.xml
+Sitemap: https://crm.legal.org.ua/sitemap.xml
diff --git a/src/web/public/sitemap.xml b/src/web/public/sitemap.xml
index acefbe9..36417ef 100644
--- a/src/web/public/sitemap.xml
+++ b/src/web/public/sitemap.xml
@@ -1,77 +1,77 @@
- https://selected.highfunk.uk/
+ https://crm.legal.org.ua/
monthly
1.0
- https://selected.highfunk.uk/blog
+ https://crm.legal.org.ua/blog
weekly
0.8
- https://selected.highfunk.uk/blog/linkedin-outreach-automation
+ https://crm.legal.org.ua/blog/linkedin-outreach-automation
2026-04-08
monthly
0.7
- https://selected.highfunk.uk/blog/hyperpersonalization-conversion
+ https://crm.legal.org.ua/blog/hyperpersonalization-conversion
2026-04-07
monthly
0.7
- https://selected.highfunk.uk/blog/architecture-nodejs-cloudrun
+ https://crm.legal.org.ua/blog/architecture-nodejs-cloudrun
2026-04-06
monthly
0.7
- https://selected.highfunk.uk/blog/claude-ai-linkedin-integration
+ https://crm.legal.org.ua/blog/claude-ai-linkedin-integration
2026-04-05
monthly
0.7
- https://selected.highfunk.uk/blog/follow-up-sequence-ai
+ https://crm.legal.org.ua/blog/follow-up-sequence-ai
2026-04-04
monthly
0.7
- https://selected.highfunk.uk/blog/timezone-aware-outreach
+ https://crm.legal.org.ua/blog/timezone-aware-outreach
2026-04-03
monthly
0.7
- https://selected.highfunk.uk/blog/seven-message-angles
+ https://crm.legal.org.ua/blog/seven-message-angles
2026-04-02
monthly
0.7
- https://selected.highfunk.uk/blog/rate-limiting-linkedin
+ https://crm.legal.org.ua/blog/rate-limiting-linkedin
2026-04-01
monthly
0.7
- https://selected.highfunk.uk/blog/websocket-realtime-monitoring
+ https://crm.legal.org.ua/blog/websocket-realtime-monitoring
2026-03-30
monthly
0.7
- https://selected.highfunk.uk/blog/unipile-linkedin-data-pipeline
+ https://crm.legal.org.ua/blog/unipile-linkedin-data-pipeline
2026-03-28
monthly
0.7
- https://selected.highfunk.uk/pitch-deck
+ https://crm.legal.org.ua/pitch-deck
monthly
0.6