Skip to content

Commit ac0bdf0

Browse files
committed
fix: hide onlycrabs branding
1 parent 6c7dd2e commit ac0bdf0

File tree

6 files changed

+16
-18
lines changed

6 files changed

+16
-18
lines changed

server/og/soulOgSvg.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ function wrapText(value: string, maxChars: number, maxLines: number) {
7979
}
8080

8181
export function buildSoulOgSvg(params: SoulOgSvgParams) {
82-
const rawTitle = params.title.trim() || 'onlycrabs.ai'
83-
const rawDescription = params.description.trim() || 'SOUL.md bundle on onlycrabs.ai.'
82+
const rawTitle = params.title.trim() || 'SoulHub'
83+
const rawDescription = params.description.trim() || 'SOUL.md bundle on SoulHub.'
8484

8585
const cardX = 72
8686
const cardY = 96

server/routes/og/soul.png.ts

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,10 +46,9 @@ async function ensureWasm() {
4646
await wasmInitPromise
4747
}
4848

49-
function buildFooter(host: string | null, slug: string, owner: string | null) {
50-
const base = host ? host : 'onlycrabs.ai'
51-
if (owner) return `${base}/@${owner}/${slug}`
52-
return `${base}/souls/${slug}`
49+
function buildFooter(slug: string, owner: string | null) {
50+
if (owner) return `@${owner}/${slug}`
51+
return `souls/${slug}`
5352
}
5453

5554
export default defineEventHandler(async (event) => {
@@ -75,9 +74,9 @@ export default defineEventHandler(async (event) => {
7574
const title = titleFromQuery || meta?.displayName || slug
7675
const description = descriptionFromQuery || meta?.summary || ''
7776

78-
const ownerLabel = owner ? `@${owner}` : 'onlycrabs.ai'
77+
const ownerLabel = owner ? `@${owner}` : 'SoulHub'
7978
const versionLabel = version ? `v${version}` : 'latest'
80-
const footer = buildFooter(getRequestHost(event), slug, owner || null)
79+
const footer = buildFooter(slug, owner || null)
8180

8281
const cacheKey = version ? 'public, max-age=31536000, immutable' : 'public, max-age=3600'
8382
setHeader(event, 'Cache-Control', cacheKey)

src/lib/og.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ describe('og helpers', () => {
3535
summary: 'Personal north star notes.',
3636
version: '0.1.0',
3737
})
38-
expect(meta.title).toBe('North Star — onlycrabs.ai')
38+
expect(meta.title).toBe('North Star — SoulHub')
3939
expect(meta.description).toBe('Personal north star notes.')
4040
expect(meta.url).toContain('/souls/north-star')
4141
expect(meta.owner).toBe('someone')
@@ -57,8 +57,8 @@ describe('og helpers', () => {
5757

5858
it('uses soul defaults when owner and summary are missing', () => {
5959
const meta = buildSoulMeta({ slug: 'signal' })
60-
expect(meta.title).toBe('signal — onlycrabs.ai')
61-
expect(meta.description).toMatch(/onlycrabs\.ai the home for SOUL.md/i)
60+
expect(meta.title).toBe('signal — SoulHub')
61+
expect(meta.description).toMatch(/SoulHub the home for SOUL.md/i)
6262
expect(meta.url).toContain('/souls/signal')
6363
expect(meta.owner).toBeNull()
6464
expect(meta.image).toContain('slug=signal')

src/lib/og.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,7 @@ type SoulMeta = {
3333
}
3434

3535
const DEFAULT_DESCRIPTION = 'ClawdHub — a fast skill registry for agents, with vector search.'
36-
const DEFAULT_SOUL_DESCRIPTION =
37-
'onlycrabs.ai — the home for SOUL.md bundles and personal system lore.'
36+
const DEFAULT_SOUL_DESCRIPTION = 'SoulHub — the home for SOUL.md bundles and personal system lore.'
3837
const OG_SKILL_IMAGE_LAYOUT_VERSION = '5'
3938
const OG_SOUL_IMAGE_LAYOUT_VERSION = '1'
4039

@@ -125,9 +124,9 @@ export function buildSoulMeta(source: SoulMetaSource): SoulMeta {
125124
const displayName = clean(source.displayName) || clean(source.slug)
126125
const summary = clean(source.summary)
127126
const version = clean(source.version)
128-
const title = `${displayName}onlycrabs.ai`
127+
const title = `${displayName}SoulHub`
129128
const description =
130-
summary || (owner ? `Soul by @${owner} on onlycrabs.ai.` : DEFAULT_SOUL_DESCRIPTION)
129+
summary || (owner ? `Soul by @${owner} on SoulHub.` : DEFAULT_SOUL_DESCRIPTION)
131130
const url = `${siteUrl}/souls/${source.slug}`
132131
const imageParams = new URLSearchParams()
133132
imageParams.set('v', OG_SOUL_IMAGE_LAYOUT_VERSION)

src/lib/site.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,12 +70,12 @@ export function getSiteMode(): SiteMode {
7070
}
7171

7272
export function getSiteName(mode: SiteMode = getSiteMode()) {
73-
return mode === 'souls' ? 'onlycrabs.ai' : 'ClawdHub'
73+
return mode === 'souls' ? 'SoulHub' : 'ClawdHub'
7474
}
7575

7676
export function getSiteDescription(mode: SiteMode = getSiteMode()) {
7777
return mode === 'souls'
78-
? 'onlycrabs.ai — the home for SOUL.md bundles and personal system lore.'
78+
? 'SoulHub — the home for SOUL.md bundles and personal system lore.'
7979
: 'ClawdHub — a fast skill registry for agents, with vector search.'
8080
}
8181

src/routes/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -336,7 +336,7 @@ function OnlyCrabsHome() {
336336
<div className="hero-inner">
337337
<div className="hero-copy fade-up" data-delay="1">
338338
<span className="hero-badge">SOUL.md, shared.</span>
339-
<h1 className="hero-title">onlycrabs.ai, where system lore lives.</h1>
339+
<h1 className="hero-title">SoulHub, where system lore lives.</h1>
340340
<p className="hero-subtitle">
341341
Share SOUL.md bundles, version them like docs, and keep personal system lore in one
342342
public place.

0 commit comments

Comments
 (0)