JavaScript-optional public web frontend for Bluesky anartia.kelinci.net
sveltekit atcute bluesky typescript svelte

refactor: don't use bsky.app as canonical

sharing the page on Chrome Android would copy the canonical URL

mary.my.id 12d021f7 aeedd58d

verified
Changed files
+7 -7
src
routes
(app)
(profile)
[actor=didOrHandle]
[actor=didOrHandle]
[rkey=tid]
feeds
[rkey=rkey]
lists
[rkey=rkey]
packs
[rkey=rkey]
[actor=did]
[rkey=tid]
unroll
search
+1 -1
src/routes/(app)/(profile)/[actor=didOrHandle]/+layout.svelte
··· 18 18 </script> 19 19 20 20 <svelte:head> 21 - <link rel="canonical" href="https://bsky.app/profile/{data.profile.did}" /> 21 + <link rel="canonical" href="{base}/{data.profile.did}" /> 22 22 <link rel="alternate" href="{base}/{data.profile.did}/rss" type="application/rss+xml" /> 23 23 <link rel="alternate" href="at://{data.profile.did}/app.bsky.actor.profile/self" /> 24 24 </svelte:head>
+1 -1
src/routes/(app)/[actor=didOrHandle]/[rkey=tid]/+page.svelte
··· 40 40 41 41 <svelte:head> 42 42 <title>{title}</title> 43 - <link rel="canonical" href="https://bsky.app/profile/{uri.repo}/post/{uri.rkey}" /> 43 + <link rel="canonical" href="{base}/{uri.repo}/{uri.rkey}" /> 44 44 <link rel="alternate" href={main.uri} /> 45 45 </svelte:head> 46 46
+1 -1
src/routes/(app)/[actor=didOrHandle]/feeds/[rkey=rkey]/+page.svelte
··· 23 23 24 24 <svelte:head> 25 25 <title>{data.feed.displayName} by @{data.feed.creator.handle} — {PUBLIC_APP_NAME}</title> 26 - <link rel="canonical" href="https://bsky.app/profile/{data.feed.creator.did}/feed/{rkey}" /> 26 + <link rel="canonical" href="{base}/{data.feed.creator.did}/feeds/{rkey}" /> 27 27 <link rel="alternate" href={data.feed.uri} /> 28 28 </svelte:head> 29 29
+1 -1
src/routes/(app)/[actor=didOrHandle]/lists/[rkey=rkey]/+layout.svelte
··· 26 26 </script> 27 27 28 28 <svelte:head> 29 - <link rel="canonical" href="https://bsky.app/profile/{uri.repo}/lists/{uri.rkey}" /> 29 + <link rel="canonical" href="{base}/{uri.repo}/lists/{uri.rkey}" /> 30 30 <link rel="alternate" href={data.list.uri} /> 31 31 </svelte:head> 32 32
+1 -1
src/routes/(app)/[actor=didOrHandle]/packs/[rkey=rkey]/+layout.svelte
··· 32 32 33 33 <svelte:head> 34 34 <title>{record.name.trim()} by @{data.pack.creator.handle} — {PUBLIC_APP_NAME}</title> 35 - <link rel="canonical" href="https://bsky.app/starter-pack/{uri.repo}/{uri.rkey}" /> 35 + <link rel="canonical" href="{base}/{uri.repo}/packs/{uri.rkey}" /> 36 36 <link rel="alternate" href={data.pack.uri} /> 37 37 </svelte:head> 38 38
+1 -1
src/routes/(app)/[actor=did]/[rkey=tid]/unroll/+page.svelte
··· 51 51 52 52 <svelte:head> 53 53 <title>{title}</title> 54 - <link rel="canonical" href="https://bsky.app/profile/{uri.repo}/post/{uri.rkey}" /> 54 + <link rel="canonical" href="{base}/{uri.repo}/{uri.rkey}" /> 55 55 <link rel="alternate" href={main.uri} /> 56 56 </svelte:head> 57 57
+1 -1
src/routes/(app)/search/+layout.svelte
··· 20 20 </script> 21 21 22 22 <svelte:head> 23 - <link rel="canonical" href="https://bsky.app/search?q={query}" /> 23 + <link rel="canonical" href="{base}/search?q={query}" /> 24 24 </svelte:head> 25 25 26 26 <PageContainer>