krz/hutch-notify
clone: git clone https://gitbay.org/krz/hutch-notify.git
main: README.nfo · raw
1┌──────────────────────────────────────────────────────────────┐
2│ H U T C H - N O T I F Y [ KRZ ] krz.sh │
3└──────────────────────────────────────────────────────────────┘
4
5WHAT
6 backend for push notifications in hutch.
7
8DOES
9 - register apns device tokens
10 - store notification subscriptions
11 - poll sr.ht for changes
12 - send pushes via apns
13
14STACK
15 python (fastapi), sqlite, apns (http/2, token auth).
16
17STATUS
18 early development. current scope: device registration and a test
19 push endpoint. planned: build, ticket, and inbox notifications.
20
21RUN
22 python3.12 -m venv .venv
23 source .venv/bin/activate
24 pip install -r requirements.txt
25 uvicorn app.main:app --reload
26
27ENV
28 create .env:
29
30 API_KEY=change-me
31 DATABASE_URL=sqlite+aiosqlite:///./hutch_notify.db
32 APNS_KEY_ID=
33 APNS_TEAM_ID=
34 APNS_BUNDLE_ID=
35 APNS_PRIVATE_KEY_PATH=
36 SRHT_TOKEN=
37
38NOTES
39 - the ios app registers with apns and sends its token here.
40 - keep the apns .p8 key secure.
41 - event-driven eventually; the first version polls.
42
43┌──────────────────────────────────────────────────────────────┐
44│ krz.sh │
45└──────────────────────────────────────────────────────────────┘