···48484949example configuration is in the `config.jsonc.example` file
50505151-expose your localhost to the web using a tunnel or something and use that url as the custom appview url
5151+### Index Server
5252+start it by running
5353+```sh
5454+deno task index
5555+```
5656+it should just work actually
5757+implemented xrpc routes for `#skylite_index` are:
5858+```ts
5959+const indexServerRoutes = new Set([
6060+ "/xrpc/app.bsky.actor.getProfile",
6161+ "/xrpc/app.bsky.actor.getProfiles",
6262+ "/xrpc/app.bsky.feed.getActorFeeds",
6363+ "/xrpc/app.bsky.feed.getFeedGenerator",
6464+ "/xrpc/app.bsky.feed.getFeedGenerators",
6565+ "/xrpc/app.bsky.feed.getPosts",
6666+ "/xrpc/party.whey.app.bsky.feed.getActorLikesPartial",
6767+ "/xrpc/party.whey.app.bsky.feed.getAuthorFeedPartial",
6868+ "/xrpc/party.whey.app.bsky.feed.getLikesPartial",
6969+ "/xrpc/party.whey.app.bsky.feed.getPostThreadPartial",
7070+ "/xrpc/party.whey.app.bsky.feed.getQuotesPartial",
7171+ "/xrpc/party.whey.app.bsky.feed.getRepostedByPartial",
7272+ // i havent implemented these three yet
7373+ /*
7474+ app.bsky.graph.getLists // doesnt need to because theres no items[], and its self ProfileViewBasic
7575+ app.bsky.graph.getList // needs to be Partial-ed (items[] union with ProfileViewRef)
7676+ app.bsky.graph.getActorStarterPacks // maybe doesnt need to be Partial-ed because its self ProfileViewBasic
7777+ */
52785353-this should work on any bluesky client that supports changing the appview URL (im using an unreleased custom fork for development)
7979+ // and the last one is a stub because its pretty hard to do
8080+ "/xrpc/party.whey.app.bsky.feed.getListFeedPartial",
8181+]);
8282+```
54835584there is no way to register users to be indexed by the server yet (either Index nor View servers) so you can just manually add your account to the `system.db` file for now
8585+8686+### View Server
8787+start it by running
8888+```sh
8989+deno task view
9090+```
9191+expose your localhost to the web using a tunnel or something and use that url as the custom appview url
9292+9393+this should work on any bluesky client that supports changing the appview URL (im using an unreleased custom fork for development) as the view server implements the `#bsky_appview` routes for compatibility with existing clients
9494+9595+the view server has extra configurations that you need to understand.
9696+the view server hydrates content by calling other servers (either an `#skylite_index` or `#bsky_appview`) and so you need to write the order of which servers are prioritized first for resolving the hydration endpoints
9797+```js
9898+// In order of which skylite index servers or bsky appviews to use first
9999+"indexPriority": [
100100+ "user#skylite_index", // user resolved skylite index server
101101+ "did:web:backupindexserver.your.site#skylite_index", // a specific skylite index server
102102+ "user#bsky_appview", // user resolved bsky appview
103103+ "did:web:api.bsky.app#bsky_appview" // a specific bsky appview
104104+]
105105+```
5610657107id say this project is like uhh ~20% done so not a lot of things you can do with this right now