your personal website on atproto - mirror blento.app
at signup 47 lines 1.5 kB view raw
1export const SITE = 'https://blento.app'; 2 3type Permissions = { 4 collections: readonly string[]; 5 rpc: Record<string, string | string[]>; 6 blobs: readonly string[]; 7}; 8 9export const permissions = { 10 // collections you can create/delete/update 11 12 // example: only allow create and delete 13 // collections: ['xyz.statusphere.status?action=create&action=update'], 14 collections: [ 15 'app.blento.card', 16 'app.blento.page', 17 'app.blento.settings', 18 'app.blento.comment', 19 'app.blento.guestbook.entry', 20 'site.standard.publication', 21 'site.standard.document', 22 'xyz.statusphere.status' 23 ], 24 25 // what types of authenticated proxied requests you can make to services 26 27 // example: allow authenticated proxying to bsky appview to get a users liked posts 28 //rpc: {'did:web:api.bsky.app#bsky_appview': ['app.bsky.feed.getActorLikes']} 29 rpc: {}, 30 31 // what types of blobs you can upload to a users PDS 32 33 // example: allowing video and html uploads 34 // blobs: ['video/*', 'text/html'] 35 // example: allowing all blob types 36 // blobs: ['*/*'] 37 blobs: ['*/*'] 38} as const satisfies Permissions; 39 40// Extract base collection name (before any query params) 41type ExtractCollectionBase<T extends string> = T extends `${infer Base}?${string}` ? Base : T; 42 43export type AllowedCollection = ExtractCollectionBase<(typeof permissions.collections)[number]>; 44 45// which PDS to use for signup 46// ATTENTION: pds.rip is only for development, all accounts get deleted automatically after a week 47export const signUpPDS = 'https://selfhosted.social/';