···11# Bitchsky Social App
2233Hey, bitches! This is the codebase for the Bitchsky Social app, based on [social.daniela.lol](https://github.com/kittibytess/deer-social) based on [deer.social](https://github.com/a-viv-a/deer-social).
44+It's basically Bluesky, but we had an itch for a few more powerful features.
4556Get the app itself:
67···15161617- Better name (added an itch; lue no longer)
1718- Nicer colors (based on ...)
1818-- Experiments page in settings
1919- - Toggle to disable go.bsky.app link proxying for analytics
2020- - Toggle to disable default app labeler
2121- - Toggle to disable falling back to the discover feed in following feed
2222- - Toggle to see skeets in quotes through blocks and detachments
2323- - <img src="https://github.com/user-attachments/assets/e5084afd-b17e-43a7-9622-f6d7f19f53ca" width="300px" />
2424- - Checkboxes to enable features gates
2519- Ignores `!no-unauthenticated` labels
2620- Share links to bitchsky.app or bsky.app
27212828-## WIP/Planned
2222+### Experiments
2323+2424+These are all available as options in a subpage of the app's settings.
2525+2626+- Toggle go.bsky.app link proxying for analytics
2727+- Toggle to see skeets in quotes through blocks and detachments
2828+- <img src="https://github.com/user-attachments/assets/e5084afd-b17e-43a7-9622-f6d7f19f53ca" width="300px" alt="example quote post removed by author, but still shown" />
2929+- Toggle to trust your own preferred verifiers (and to operate as one yourself)
3030+- Toggle to disable the default app labeler
3131+3232+#### Tweaks
3333+3434+- Toggle to combine reposts in horizontal carousels
3535+- Toggle the discover feed fallback in the following feed
3636+- Toggle to allow visiting sites from clicking non-bsky.social handles
3737+- Toggle displaying images in higher quality
3838+- Toggle to only show a single tab if only one feed is pinned
3939+- Toggle to prevent others from getting notified that you interacted with their repost
4040+- Toggle similar account recommendations
4141+4242+#### Metrics
4343+4444+You can disable the visiblity of all skeet metrics individually, including the likes, reposts, quotes, saves, and reply counts.
4545+4646+#### Gates
4747+4848+- Toggle for an alternate share icon
4949+- A couple others
5050+- More may be available in developer mode
5151+5252+## Upcoming or wishful features
29533030-- Opengraph support for sharing skeets and profiles
3131-- Selecting custom appviews
3232-- Seeing past blocks in post threads (nuclear block for reply chains)
5454+- OpenGraph support for sharing profiles & skeets
5555+- Selecting a custom AppView
5656+- Seeing past blocks in threads (the nuclear block for reply chains)
3357- Configure the location used to determine regional labelers
3434-35583659### TODO: Xan
37603861- [ ] Update branding (especially colors and app icon) to Bitchsky
3962- [ ] Setup App Linking for Android (.well-known w/ app package fingerprint)
6363+- [ ] Remove broken Experiments (constellation instance and TODO note)
4064- [ ] Replace instances of `group.app.bsky` with `group.app.bitchsky`
4165- [ ] Add a toggle to replace "New Post" with "Skeet" (and other instances of "Post" in English)
4266- [ ] [Coffee](https://git.ari.lt/coffee) for colors in actual themes
6767+- [ ] Bitchsky PDS and .social site
43684444-#### Maybe
6969+### Even more wishful or far off
45704671- [ ] iOS app IPA?
4772- [ ] Move from GitHub to Tangled?
4848-4949-## Philosophy
5050-5151-- by default, Bitchsky should very similar to the official client
5252- - color and branding are different to distinguish from social-app
5353- - `!no-unauthenticated` behavior is different
5454- - analytics are not present
5555-- opinionated features behind toggles
5656-- focus on high impact, low diff size patches
5757- - specifically patches that won't require large conflicts to be resolved
5858-- focus on power users (but all users are welome!)
5959-- enable things that are possible but annoying today **without** egging on anti-social behavior
7373+- [ ] Experimental toggle between handle and DID in share links?
7474+- [ ] Move TOS and privacy policy to Jollywhoppers?
60756176## Development Resources
62776378This is a [React Native](https://reactnative.dev/) application, written in the TypeScript programming language. It builds on the `atproto` TypeScript packages (like [`@atproto/api`](https://www.npmjs.com/package/@atproto/api)), which are also open source, but in [a different git repository](https://github.com/bluesky-social/atproto).
64796580There is vestigial Go language source code (in `./bskyweb/`), for a web service that returns the React Native Web application in the social app deployment. However, it is not used in current Bitchsky deployments.
6666-For Bitchsky, the intended deployment is with a webserver that can serve static files, and reroute to `index.html` as needed. Today [Bitchsky](https://bitchsky.app) is hosted on [Cloudflare Pages](https://pages.cloudflare.com/).
8181+For Bitchsky, the intended deployment is with a webserver that can serve static files, and reroute to `index.html` as needed. [Bitchsky](https://bitchsky.app) is currently hosted on [Cloudflare Pages](https://pages.cloudflare.com/).
67826883The [Build Instructions](./docs/build.md) are a good place to get started with the app itself. If you use nix (and especially direnv) then `flake.nix` will get you a working environment for the web version of the app.
6984···88103- Open an issue and give some time for discussion before submitting a PR.
89104 - This isn't strictly necessary, but I'd love to give my thoughts and scope out your willingness to maintain the feature before you write it.
90105- Stay away from PRs like...
9191- - Changing "Post" to "Skeet."
106106+ - Changing "Post" to "Skeet." 🧌
92107 - Refactoring the codebase, e.g., to replace React Query with Redux Toolkit or something.
93108- Include a new toggle and preference for your feature.
94109···110125## Security disclosures
111126112127If you discover any security issues, please privately disclose them to [xan.lol](https://xan.lol/).
113113-If the issue pertains to infastructure, code, or systems outside the scope of Bitchsky, please refer to the
114114-[disclosure guidelines on social-app](https://github.com/bluesky-social/social-app#security-disclosures) if it is hosted by Bluesky PBC. Otherwise, reference the
115115-security policy of that system as applicable <3
128128+If the issue pertains to infastructure, code, or systems outside the scope of Bitchsky, please refer to the [disclosure guidelines on social-app](https://github.com/bluesky-social/social-app#security-disclosures) if it is hosted by Bluesky PBC. Otherwise, reference the security policy of that system as applicable <3
116129117130## License (MIT)
118131···122135123136## P.S.
124137125125-We ❤️ you and all of the ways you support us. Thank you for making Bluesky & Bitchsky a great place!
138138+We ❤️ you and all of the ways you support us. Thank you for making Bluesky & Bitchsky so great!