diff options
author | Caidan Williams <caidan@internet.dev> | 2025-09-09 20:03:50 -0700 |
---|---|---|
committer | Caidan Williams <caidan@internet.dev> | 2025-09-09 20:03:50 -0700 |
commit | f5079b8158d87073222f834dfb40039b99650a27 (patch) | |
tree | 291336ab6aa34febd7687e0ad28a3b50e3ed0083 /bskyweb/templates/feed.html | |
parent | c7591ef058be0456f9fe122b686aa1c1f1c6e966 (diff) | |
download | voidsky-f5079b8158d87073222f834dfb40039b99650a27.tar.zst |
feat: add OpenGraph metadata for feed URLs in bskyweb
Enable rich link previews when feed URLs are shared in iMessage, Slack, and other social platforms. Adds feed title, description, creator info, and avatar images to improve sharing experience.
Diffstat (limited to 'bskyweb/templates/feed.html')
-rw-r--r-- | bskyweb/templates/feed.html | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/bskyweb/templates/feed.html b/bskyweb/templates/feed.html new file mode 100644 index 000000000..716a2c65c --- /dev/null +++ b/bskyweb/templates/feed.html @@ -0,0 +1,54 @@ +{% extends "base.html" %} + +{% block head_title %} +{%- if feedView -%} + {{ feedView.DisplayName }} by @{{ feedView.Creator.Handle }} | Bluesky Feed +{%- else -%} + Bluesky +{%- endif -%} +{% endblock %} + +{% block html_head_extra -%} +{%- if feedView -%} + <meta property="og:site_name" content="Bluesky Social"> + <meta property="og:type" content="website"> + {%- if requestURI %} + <meta property="og:url" content="{{ requestURI }}"> + <link rel="canonical" href="{{ requestURI|canonicalize_url }}" /> + {% endif -%} + + {%- if feedView.DisplayName %} + <meta property="og:title" content="{{ feedView.DisplayName }} by @{{ feedView.Creator.Handle }}"> + {% else %} + <meta property="og:title" content="Feed by @{{ feedView.Creator.Handle }}"> + {% endif -%} + + {%- if feedView.Description %} + <meta name="description" content="{{ feedView.Description }}"> + <meta property="og:description" content="{{ feedView.Description }}"> + <meta property="twitter:description" content="{{ feedView.Description }}"> + {% endif -%} + + {%- if feedView.Avatar %} + <meta property="og:image" content="{{ feedView.Avatar }}"> + <meta property="twitter:image" content="{{ feedView.Avatar }}"> + <meta name="twitter:card" content="summary"> + {% endif %} + + <meta name="twitter:label1" content="Created by"> + <meta name="twitter:value1" content="@{{ feedView.Creator.Handle }}"> + + <link rel="alternate" href="{{ feedView.Uri }}" /> +{% endif -%} +{%- endblock %} + +{% block noscript_extra -%} +{%- if feedView -%} +<div id="bsky_feed_summary"> + <h3>Feed</h3> + <p id="bsky_feed_name">{{ feedView.DisplayName }}</p> + <p id="bsky_feed_creator">{{ feedView.Creator.Handle }}</p> + <p id="bsky_feed_description">{{ feedView.Description }}</p> +</div> +{% endif -%} +{%- endblock %} \ No newline at end of file |