Skip to content

Commit 39d1fbf

Browse files
authored
Merge pull request #3 from Apollo-Reborn/docs/getting-started-guide
Add beginner Getting Started guide
2 parents 936391d + 22d1b18 commit 39d1fbf

7 files changed

Lines changed: 618 additions & 4 deletions

File tree

GETTING_STARTED.md

Lines changed: 596 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,23 @@
22

33
A self-hostable fork of [`christianselig/apollo-backend`](https://github.com/christianselig/apollo-backend), the archived Go service that powered push notifications, inbox checks, and subreddit/user watchers for the original [Apollo for Reddit](https://apolloapp.io/) iOS app.
44

5-
This fork is meant to be run together with **[JeffreyCA/Apollo-ImprovedCustomApi](https://github.com/JeffreyCA/Apollo-ImprovedCustomApi)** — the iOS tweak that lets sideloaded Apollo builds use the user's own Reddit OAuth credentials. The tweak's **Settings > Custom API > Notification Backend** URL field points at an instance of this fork; with that wired up, push notifications and watchers come back to life for sideloads that have a real APNs entitlement.
5+
<p align="center">
6+
<img src="images/IMG_4294.jpg" width="270"
7+
alt="Private message push notification from a self-hosted Apollo backend on the iOS lock screen">
8+
&nbsp;
9+
<img src="images/IMG_4295.jpg" width="270"
10+
alt="Post reply push notification from a self-hosted Apollo backend on the iOS lock screen">
11+
</p>
12+
13+
<p align="center"><em>Reddit push notifications, back on a sideloaded Apollo — delivered entirely by your own server.</em></p>
14+
15+
This fork is meant to be run together with **[Apollo-Reborn/Apollo-Reborn](https://github.com/Apollo-Reborn/Apollo-Reborn)** — the iOS tweak that lets sideloaded Apollo builds use the user's own Reddit OAuth credentials. The tweak's **Settings > Custom API > Notification Backend** URL field points at an instance of this fork; with that wired up, push notifications and watchers come back to life for sideloads that have a real APNs entitlement.
616

717
Single-tenant by design: one deployment serves one sideloaded Apollo build (one bundle ID, one Apple Developer team), and can be shared with a small group of friends running the same build.
818

19+
> [!TIP]
20+
> **New to self-hosting this?** Start with the **[step-by-step Getting Started guide](GETTING_STARTED.md)** — it walks you all the way from installing Docker and creating an APNs key to a test push landing on your phone (and optionally exposing the backend to the internet). This README is the technical reference; that guide is the on-ramp.
21+
922
## Before you start
1023

1124
Three hard prerequisites — none of these are negotiable, and skipping any of them produces failure modes that look like backend bugs but aren't:
@@ -37,7 +50,7 @@ The result: the backend boots end-to-end with only Postgres, Redis, an APNs auth
3750
Requires Docker + an APNs auth key (`.p8`) from a paid Apple Developer account.
3851

3952
```bash
40-
git clone https://github.com/<you>/apollo-backend
53+
git clone https://github.com/Apollo-Reborn/apollo-backend
4154
cd apollo-backend
4255

4356
# 1. Drop your APNs key
@@ -101,6 +114,11 @@ In the tweak (Apollo on-device): **Settings > Custom API > Notification Backend*
101114

102115
Tap **Test Connection** to verify the tweak can reach `GET /v1/health`.
103116

117+
<p align="center">
118+
<img src="images/IMG_4296.jpg" width="300"
119+
alt="Apollo Settings > Custom API > Notification Backend, showing the Backend URL and Registration Token fields and the Test Connection button">
120+
</p>
121+
104122
Make sure the **Reddit API Key**, **Redirect URI**, and **User Agent** in the tweak's main Custom API screen are filled in for the bundle ID you signed with — Reddit's API rules want a UA shaped like `ios:com.you.Leto:v1.0 (by /u/yourname)`. The tweak attempts to inject these into registration bodies; if injection fails, the backend falls back to the matching `REDDIT_*` env vars (see above). Either path works.
105123

106124
Installed-app Reddit credentials are accepted — just leave the **Reddit API Secret** field blank in the tweak.

docker-compose.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ x-worker: &worker
88
build:
99
context: .
1010
dockerfile: Dockerfile
11-
image: ${APOLLO_IMAGE:-ghcr.io/nickclyde/apollo-backend:latest}
11+
image: ${APOLLO_IMAGE:-ghcr.io/apollo-reborn/apollo-backend:latest}
1212
<<: *app-env
1313
volumes: *app-volumes
1414
depends_on:
@@ -110,7 +110,7 @@ services:
110110
build:
111111
context: .
112112
dockerfile: Dockerfile
113-
image: ${APOLLO_IMAGE:-ghcr.io/nickclyde/apollo-backend:latest}
113+
image: ${APOLLO_IMAGE:-ghcr.io/apollo-reborn/apollo-backend:latest}
114114
command: ["api"]
115115
<<: *app-env
116116
volumes: *app-volumes

images/IMG_4293.jpg

190 KB
Loading

images/IMG_4294.jpg

519 KB
Loading

images/IMG_4295.jpg

521 KB
Loading

images/IMG_4296.jpg

218 KB
Loading

0 commit comments

Comments
 (0)