config | ||
packages | ||
static | ||
.editorconfig | ||
.gitignore | ||
.prettierrc | ||
package.json | ||
pnpm-lock.yaml | ||
pnpm-workspace.yaml | ||
README.md |
aster
working on some kind of fedi software this should never be used seriously! i'm just being silly and having fun over here.
originally, i was going to make it conform to the mastodon api. i think i will add a compatability thing later, but for now im just going to create my own similar but better (at least to me) api.
project status
activitypub
- fetchable users
- fetchable notes
- accept activities (inboxes)
- announce activities
backend
- fetchable users
- fetchable notes
- fetchable instance info
- fetchable remote instance info
- register users
- create notes
frontend
later...
misc
- prettier logs
- split it up into workers so the entire thing doesnt crumble on error
security
if you find a vulnerability in my software please contact me privately. see https://blueb.me/
configuration
find it in config/example.yml. use that template and create a production.yml in that same directory.
planned supported extensions
activitystreams
- [-]
as:manuallyApprovesFollowers
- [-]
as:sensitive
as:Hashtag
- [-]
as:quoteUrl
mastodon
toot:Emoji
toot:discoverable
fedibird
- [-]
fedibird:quoteUri
schema
schema:PropertyValue
schema:value
misskey
- [-]
misskey:_misskey_content
- [-]
misskey:_misskey_quote
misskey:_misskey_vote
(i do not know what this is used for, but i will probably support it)misskey:_misskey_reaction
- [-]
misskey:_misskey_summary
- [-]
misskey:isCat
firefish
- [-]
firefish:speakAsCat
sharkey
- [-]
sharkey:backgroundUrl
mia's iceshrimp patches
mia:bite
(i think this is the extension?)
example followreq activity
for my reference
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"Key": "sec:Key",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"quoteUrl": "as:quoteUrl",
"fedibird": "http://fedibird.com/ns#",
"quoteUri": "fedibird:quoteUri",
"toot": "http://joinmastodon.org/ns#",
"Emoji": "toot:Emoji",
"featured": "toot:featured",
"discoverable": "toot:discoverable",
"schema": "http://schema.org#",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value",
"misskey": "https://misskey-hub.net/ns#",
"_misskey_content": "misskey:_misskey_content",
"_misskey_quote": "misskey:_misskey_quote",
"_misskey_reaction": "misskey:_misskey_reaction",
"_misskey_votes": "misskey:_misskey_votes",
"_misskey_summary": "misskey:_misskey_summary",
"isCat": "misskey:isCat",
"firefish": "https://joinfirefish.org/ns#",
"speakAsCat": "firefish:speakAsCat",
"sharkey": "https://joinsharkey.org/ns#",
"backgroundUrl": "sharkey:backgroundUrl",
"listenbrainz": "sharkey:listenbrainz",
"vcard": "http://www.w3.org/2006/vcard/ns#"
}
],
"id": "https://eepy.zone/follows/9spb5qhlz5jp0032",
"type": "Follow",
"actor": "https://eepy.zone/users/9kfweg7wmdw7fnnt",
"object": "https://as1.blueb.me/users/1"
}
example note
{
"@context": [
"https://www.w3.org/ns/activitystreams",
"https://w3id.org/security/v1",
{
"Key": "sec:Key",
"manuallyApprovesFollowers": "as:manuallyApprovesFollowers",
"sensitive": "as:sensitive",
"Hashtag": "as:Hashtag",
"quoteUrl": "as:quoteUrl",
"fedibird": "http://fedibird.com/ns#",
"quoteUri": "fedibird:quoteUri",
"toot": "http://joinmastodon.org/ns#",
"Emoji": "toot:Emoji",
"featured": "toot:featured",
"discoverable": "toot:discoverable",
"schema": "http://schema.org#",
"PropertyValue": "schema:PropertyValue",
"value": "schema:value",
"misskey": "https://misskey-hub.net/ns#",
"_misskey_content": "misskey:_misskey_content",
"_misskey_quote": "misskey:_misskey_quote",
"_misskey_reaction": "misskey:_misskey_reaction",
"_misskey_votes": "misskey:_misskey_votes",
"_misskey_summary": "misskey:_misskey_summary",
"isCat": "misskey:isCat",
"firefish": "https://joinfirefish.org/ns#",
"speakAsCat": "firefish:speakAsCat",
"sharkey": "https://joinsharkey.org/ns#",
"backgroundUrl": "sharkey:backgroundUrl",
"listenbrainz": "sharkey:listenbrainz",
"vcard": "http://www.w3.org/2006/vcard/ns#"
}
],
"id": "https://eepy.zone/notes/9sv3rkmjjvdr000z",
"type": "Note",
"attributedTo": "https://eepy.zone/users/9kfweg7wmdw7fnnt",
"content": "<p>my silly ass made an ap request to my instance about a remote post</p>",
"published": "2024-05-04T03:22:39.019Z",
"to": ["https://www.w3.org/ns/activitystreams#Public"],
"cc": ["https://eepy.zone/users/9kfweg7wmdw7fnnt/followers"],
"inReplyTo": null,
"attachment": [],
"sensitive": false,
"tag": []
}