ActivityPub Viewer

A small tool to view real-world ActivityPub objects as JSON! Enter a URL or username from Mastodon or a similar service below, and we'll send a request with the right Accept header to the server to view the underlying object.

Open in browser →
{ "@context": [ "https://www.w3.org/ns/activitystreams", { "ostatus": "http://ostatus.org#", "atomUri": "ostatus:atomUri", "inReplyToAtomUri": "ostatus:inReplyToAtomUri", "conversation": "ostatus:conversation", "sensitive": "as:sensitive", "toot": "http://joinmastodon.org/ns#", "votersCount": "toot:votersCount", "litepub": "http://litepub.social/ns#", "directMessage": "litepub:directMessage", "blurhash": "toot:blurhash", "focalPoint": { "@container": "@list", "@id": "toot:focalPoint" }, "Hashtag": "as:Hashtag" } ], "id": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885", "type": "Note", "summary": null, "inReplyTo": null, "published": "2025-06-15T13:07:20Z", "url": "https://mastodon.thi.ng/@toxi/114687530812615885", "attributedTo": "https://mastodon.thi.ng/users/toxi", "to": [ "https://www.w3.org/ns/activitystreams#Public" ], "cc": [ "https://mastodon.thi.ng/users/toxi/followers" ], "sensitive": false, "atomUri": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885", "inReplyToAtomUri": null, "conversation": "tag:mastodon.thi.ng,2025-06-15:objectId=1861204:objectType=Conversation", "content": "<p>Recently I&#39;ve combined various functions which I&#39;ve been using in other projects (e.g. my personal PKM toolchain) and published them as new library <a href=\"https://thi.ng/text-analysis\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">thi.ng/text-analysis</span><span class=\"invisible\"></span></a> for better re-use:</p><p>- customizable, composable &amp; extensible tokenization (transducer based)<br />- ngram generation<br />- Porter-stemming &amp; stopword removal<br />- vocabulary (bi-directional index) creation<br />- dense &amp; sparse multi-hot vector encoding/decoding<br />- histograms (incl. sorted versions)<br />- tf-idf (term frequency &amp; inverse document frequency), multiple strategies<br />- k-means clustering (with k-means++ initialization &amp; customizable distance metrics)<br />- similarity/distance functions (dense &amp; sparse versions)<br />- central terms extraction</p><p>The attached code example (also in the project readme) uses this package to creeate a clustering of all ~210 <a href=\"https://mastodon.thi.ng/tags/ThingUmbrella\" class=\"mention hashtag\" rel=\"tag\">#<span>ThingUmbrella</span></a> packages, based on their assigned tags/keywords...</p><p>The library is not intended to be a full-blown NLP solution, but I keep on finding myself running into these functions/concepts quite often, and maybe you&#39;ll find them useful too...</p><p><a href=\"https://mastodon.thi.ng/tags/Text\" class=\"mention hashtag\" rel=\"tag\">#<span>Text</span></a> <a href=\"https://mastodon.thi.ng/tags/Analysis\" class=\"mention hashtag\" rel=\"tag\">#<span>Analysis</span></a> <a href=\"https://mastodon.thi.ng/tags/Cluster\" class=\"mention hashtag\" rel=\"tag\">#<span>Cluster</span></a> <a href=\"https://mastodon.thi.ng/tags/KMeans\" class=\"mention hashtag\" rel=\"tag\">#<span>KMeans</span></a> <a href=\"https://mastodon.thi.ng/tags/TFIDF\" class=\"mention hashtag\" rel=\"tag\">#<span>TFIDF</span></a> <a href=\"https://mastodon.thi.ng/tags/Ngram\" class=\"mention hashtag\" rel=\"tag\">#<span>Ngram</span></a> <a href=\"https://mastodon.thi.ng/tags/Vector\" class=\"mention hashtag\" rel=\"tag\">#<span>Vector</span></a> <a href=\"https://mastodon.thi.ng/tags/TypeScript\" class=\"mention hashtag\" rel=\"tag\">#<span>TypeScript</span></a> <a href=\"https://mastodon.thi.ng/tags/JavaScript\" class=\"mention hashtag\" rel=\"tag\">#<span>JavaScript</span></a></p>", "contentMap": { "en": "<p>Recently I&#39;ve combined various functions which I&#39;ve been using in other projects (e.g. my personal PKM toolchain) and published them as new library <a href=\"https://thi.ng/text-analysis\" target=\"_blank\" rel=\"nofollow noopener noreferrer\" translate=\"no\"><span class=\"invisible\">https://</span><span class=\"\">thi.ng/text-analysis</span><span class=\"invisible\"></span></a> for better re-use:</p><p>- customizable, composable &amp; extensible tokenization (transducer based)<br />- ngram generation<br />- Porter-stemming &amp; stopword removal<br />- vocabulary (bi-directional index) creation<br />- dense &amp; sparse multi-hot vector encoding/decoding<br />- histograms (incl. sorted versions)<br />- tf-idf (term frequency &amp; inverse document frequency), multiple strategies<br />- k-means clustering (with k-means++ initialization &amp; customizable distance metrics)<br />- similarity/distance functions (dense &amp; sparse versions)<br />- central terms extraction</p><p>The attached code example (also in the project readme) uses this package to creeate a clustering of all ~210 <a href=\"https://mastodon.thi.ng/tags/ThingUmbrella\" class=\"mention hashtag\" rel=\"tag\">#<span>ThingUmbrella</span></a> packages, based on their assigned tags/keywords...</p><p>The library is not intended to be a full-blown NLP solution, but I keep on finding myself running into these functions/concepts quite often, and maybe you&#39;ll find them useful too...</p><p><a href=\"https://mastodon.thi.ng/tags/Text\" class=\"mention hashtag\" rel=\"tag\">#<span>Text</span></a> <a href=\"https://mastodon.thi.ng/tags/Analysis\" class=\"mention hashtag\" rel=\"tag\">#<span>Analysis</span></a> <a href=\"https://mastodon.thi.ng/tags/Cluster\" class=\"mention hashtag\" rel=\"tag\">#<span>Cluster</span></a> <a href=\"https://mastodon.thi.ng/tags/KMeans\" class=\"mention hashtag\" rel=\"tag\">#<span>KMeans</span></a> <a href=\"https://mastodon.thi.ng/tags/TFIDF\" class=\"mention hashtag\" rel=\"tag\">#<span>TFIDF</span></a> <a href=\"https://mastodon.thi.ng/tags/Ngram\" class=\"mention hashtag\" rel=\"tag\">#<span>Ngram</span></a> <a href=\"https://mastodon.thi.ng/tags/Vector\" class=\"mention hashtag\" rel=\"tag\">#<span>Vector</span></a> <a href=\"https://mastodon.thi.ng/tags/TypeScript\" class=\"mention hashtag\" rel=\"tag\">#<span>TypeScript</span></a> <a href=\"https://mastodon.thi.ng/tags/JavaScript\" class=\"mention hashtag\" rel=\"tag\">#<span>JavaScript</span></a></p>" }, "attachment": [ { "type": "Document", "mediaType": "image/png", "url": "https://mastothing.files.fedi.monster/media_attachments/files/114/687/530/710/286/030/original/542fe48f90d992f1.png", "name": "Commented and syntax-highlighted TypeScript source code/example from the project readme, showing different steps, transformations and analysis results and how to create a k-means clustering of 200+ projects ", "blurhash": "U16RP,_1RPoMIUt2t6WB$fn$oeoJM{oIs.jZ", "width": 1568, "height": 3030 } ], "tag": [ { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/thingumbrella", "name": "#thingumbrella" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/text", "name": "#text" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/analysis", "name": "#analysis" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/cluster", "name": "#cluster" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/kmeans", "name": "#kmeans" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/tfidf", "name": "#tfidf" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/ngram", "name": "#ngram" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/vector", "name": "#vector" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/typescript", "name": "#typescript" }, { "type": "Hashtag", "href": "https://mastodon.thi.ng/tags/javascript", "name": "#javascript" } ], "replies": { "id": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885/replies", "type": "Collection", "first": { "type": "CollectionPage", "next": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885/replies?only_other_accounts=true&page=true", "partOf": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885/replies", "items": [] } }, "likes": { "id": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885/likes", "type": "Collection", "totalItems": 3 }, "shares": { "id": "https://mastodon.thi.ng/users/toxi/statuses/114687530812615885/shares", "type": "Collection", "totalItems": 1 } }