Page MenuHomeMusing Studio

No OneTemporary

diff --git a/silobridge/silobridge.go b/silobridge/silobridge.go
new file mode 100644
index 0000000..1cc0d2d
--- /dev/null
+++ b/silobridge/silobridge.go
@@ -0,0 +1,29 @@
+package silobridge
+
+// fakeAPInstances contains a list of sites that we allow writers to mention
+// with the @handle@instance.tld syntax, plus the corresponding prefix to
+// insert between `https://instance.tld/` and `handle` (e.g.
+// https://medium.com/@handle)
+var fakeAPInstances = map[string]string{
+ "deviantart.com": "",
+ "facebook.com": "",
+ "flickr.com": "photos/",
+ "github.com": "",
+ "instagram.com": "",
+ "medium.com": "@",
+ "reddit.com": "user/",
+ "twitter.com": "",
+ "wattpad.com": "user/",
+ "youtube.com": "user/",
+}
+
+// Profile returns the full profile URL for a fake ActivityPub instance, based
+// on the given handle and domain. If the domain isn't recognized, an empty
+// string is returned.
+func Profile(handle, domain string) string {
+ prefix, ok := fakeAPInstances[domain]
+ if !ok {
+ return ""
+ }
+ return "https://" + domain + "/" + prefix + handle
+}

File Metadata

Mime Type
text/x-diff
Expires
Fri, Jan 31, 9:55 AM (2 h, 11 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3145734

Event Timeline