maybe a fork of sparrowhe's "bluesky circle" webapp, to frontend only?
1from flask import current_app
2from atproto import Client
3class ATProtoClientExtension:
4 def __init__(self):
5 self.client_instance = None
6
7 def init_app(self, app):
8 app.before_request(self.before_request)
9 app.extensions['at_client'] = self
10
11 def before_request(self):
12 if self.client_instance is None:
13 self.client_instance = Client(base_url=current_app.config['BLUESKY_BASE'])
14 self.client_instance.login(current_app.config['BLUESKY_HANDLE'], current_app.config['BLUESKY_PASSWORD'])
15
16 def get_client(self):
17 return self.client_instance
18
19at_client_extension = ATProtoClientExtension()