fork of deer social https://deer.aylac.top
Find a file
2025-10-04 03:50:18 -03:00
.bundle Initial commit 2022-06-07 17:50:05 -05:00
.github Update deer-release.yml 2025-09-25 23:11:33 -03:00
.husky Run lint-staged without concurrency (#8489) 2025-06-14 20:47:05 +03:00
__e2e__ dev builds have a different id 2025-10-03 05:34:28 -03:00
__mocks__ remove sentry fully 2025-09-25 13:04:31 -03:00
__tests__/lib fix some tests i think 2025-10-02 14:35:16 -03:00
assets remove some unused stuff 2025-10-03 07:08:26 -03:00
bskyembed Embed testbed with tweaks (#9115) 2025-10-03 12:15:26 -07:00
bskylink Start migrating blink. Also add better shutdown handling for ogcard 2025-09-23 15:17:49 -07:00
bskyogcard Start migrating blink. Also add better shutdown handling for ogcard 2025-09-23 15:17:49 -07:00
bskyweb Merge remote-tracking branch 'upstream/main' 2025-09-27 02:44:23 -03:00
code-signing add expo-updates github action (#3270) 2024-03-19 11:18:22 -07:00
deer-static-about deer.aylac.top 2025-10-01 14:03:29 -03:00
docs Remove dev version of google-services.json and set example to dev package 2025-10-02 18:19:37 -07:00
eslint Add eslint rule to fix imports without the #/ path alias (#5175) 2024-09-20 09:11:29 +01:00
functions/profile deer.aylac.top 2025-10-01 14:03:29 -03:00
jest Merge remote-tracking branch 'upstream/main' 2025-09-30 23:56:48 -03:00
modules Expo 54 (#8931) 2025-09-22 08:52:07 -07:00
patches Merge remote-tracking branch 'upstream/main' 2025-10-04 03:43:42 -03:00
plugins Remove "-Dev" from iOS app extensions targetName 2025-10-02 18:19:37 -07:00
scripts Merge branch 'main' of https://github.com/bluesky-social/social-app 2025-06-25 16:48:40 +02:00
src Update messages.po 2025-10-04 03:50:18 -03:00
web replace deer.social with social.daniela.lol on site 2025-09-06 17:03:01 +02:00
.buckconfig Initial commit 2022-06-07 17:50:05 -05:00
.easignore fix bad bool check in action (#3885) 2024-05-06 20:13:12 -07:00
.editorconfig Lint native files (#4768) 2024-07-11 18:15:35 -07:00
.env.example remove sentry fully 2025-09-25 13:04:31 -03:00
.envrc fix flake 2025-09-26 01:33:42 -03:00
.eslintrc.js Merge remote-tracking branch 'upstream/main' 2025-10-03 04:05:45 -03:00
.gitignore tweak google-services file 2025-10-02 18:19:37 -07:00
.nvmrc Update Node.js to 20.x in Dockerfile (#6099) 2024-11-11 18:58:22 +00:00
.prettierignore Ignore built files (#5572) 2024-10-02 11:18:15 -05:00
.prettierrc.js Add state management 2022-06-09 13:03:25 -05:00
.ruby-version Improve lightbox... and update to React Native 0.71.0 (#49) 2023-01-17 20:40:02 -06:00
.watchmanconfig Initial commit 2022-06-07 17:50:05 -05:00
app.config.js really awesome dev icon 2025-10-03 06:37:12 -03:00
babel.config.js skistktsiksi 2025-09-28 09:43:36 -03:00
crowdin.yml Release 1.103.0 prep (#8434) 2025-05-30 16:58:23 -07:00
default.nix nix devshell support, pages build support 2025-04-20 17:32:42 -05:00
Dockerfile remove sentry fully 2025-09-25 13:04:31 -03:00
Dockerfile.bskylink Bsky short link service (#4542) 2024-06-21 12:41:06 -04:00
Dockerfile.bskyogcard edit dockerfile to match 2025-09-22 10:28:17 -07:00
Dockerfile.embedr Merge branch 'main' into go-124 2025-07-30 17:40:42 +00:00
eas.json Merge remote-tracking branch 'upstream/main' 2025-09-23 08:00:54 -03:00
flake.lock fix nix, modify notjitpack to not annoy me but may be fucked up, deer (dev) names for dev builds 2025-09-25 13:04:31 -03:00
flake.nix dev builds have a different id 2025-10-03 05:34:28 -03:00
Gemfile Improve lightbox... and update to React Native 0.71.0 (#49) 2023-01-17 20:40:02 -06:00
index.js Gate bitdrift integration (#7088) 2024-12-13 17:14:41 +00:00
index.web.js Upgrade API, implement XRPC rework (#4857) 2024-08-12 14:00:15 -07:00
justfile Add Android build workflow 2025-05-07 22:59:51 -04:00
LICENSE skibidi license 2025-09-07 21:18:22 -03:00
lingui.config.js Add language: European Portuguese (pt-PT) (#8375) 2025-05-30 16:38:09 -07:00
logo_v0.svg wackamole rebrand pt1 2025-04-20 17:39:06 -05:00
Makefile Android build (#24) 2025-04-25 11:16:38 -05:00
metro.config.js remove sentry fully 2025-09-25 13:04:31 -03:00
package.json fix video downloads on mobile this was gemini's doing idc 2025-10-03 07:05:57 -03:00
pages_build.sh add opengraph (#38) 2025-04-30 16:51:05 -05:00
README.md Merge remote-tracking branch 'upstream/main' 2025-10-03 04:05:45 -03:00
svgo.config.mjs Upgrade prettier to 3.6 (#8558) 2025-06-23 07:44:40 -07:00
tsconfig.check.json [APP-786] Native notifications (#1095) 2023-08-23 16:28:51 -07:00
tsconfig.e2e.json E2E runner fixes (#2428) 2024-01-04 17:33:57 -08:00
tsconfig.json bump it bop it upgrade it (rn 79/expo 53) (#8281) 2025-05-02 13:23:39 -07:00
webpack.config.js remove sentry fully 2025-09-25 13:04:31 -03:00
wrangler.toml add opengraph (#38) 2025-04-30 16:51:05 -05:00
yarn.lock fix video downloads on mobile this was gemini's doing idc 2025-10-03 07:05:57 -03:00

deer-social-ayla

This is a soft fork of deer.social, which is a soft fork of social app.

Sorry for the branding being mostly unchanged, I'm not good at coming up with names.

Get the app itself:

Features Today

  • toggle to disable go.bsky.app link proxying for analytics
  • toggle to disable default app labeler
  • toggle to disable falling back to discover feed in the following feed
  • see through quote blocks and detatchments (nuclear block wrt quotes)
  • enable features gates
  • stripped out age verification and age gating
  • stripped out geolocation
  • entirely ignore !no-unauthenticated labels, even for logged out users (getPostThread v2 blocks this)

WIP/Planned

  • rewrite shared URLs to reference deer.aylac.top
  • opengraph support for sharing posts and profiles
  • selecting custom appviews
  • seeing past blocks in post threads (nuclear block for reply chains)

Philosophy

  • by default, deer.social should very similar to the official client
    • color and branding are different to distinguish from social-app
    • !no-unauthenticated behavior is different
    • analytics are not present
  • opinionated features behind toggles
  • focus on high impact, low diff size patches
    • specifically patches that won't require large conflicts to be resolved
  • focus on power users (but all users are welome!)
  • enable things that are possible but annoying today without egging on antisocial behavior

Development Resources

This is a React Native application, written in the TypeScript programming language. It builds on the atproto TypeScript packages (like @atproto/api), which are also open source, but in a different git repository.

There 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 deer.social deployments. For deer, the intended deployment is with a websever than can serve static files, and reroute to index.html as needed. Today deer.social is hosted on cloudflare pages.

The Build Instructions 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.

The Authenticated Transfer Protocol ("AT Protocol" or "atproto") is a decentralized social media protocol. You don't need to understand AT Protocol to work with this application, but it can help. You may wish to reference resources linked in social-app. However, please don't harass the Bluesky team with issues or questions pertaining to deer.social.

Deer is a fork of the official client, social-app. It encompasses a set of schemas and APIs built in the overall AT Protocol framework. The namespace for these "Lexicons" is app.bsky.*.

Contributions

deer.social is a community fork, and we'd love to merge your PR!

As a rule of thumb, the best features for deer.social are ones that have a disproportionately positive impact on the user experience compared to the matinance overhead. Unlike some open source projects, since deer.social is a soft fork, any features (patches) we add on top of upstream social-app need to be maintained. For example, a change to the way posts are composed may be very invasive, touching lots of code across the codebase. If upstream refactors this component, we will need to rewrite this feature to be compatible or drop it from the client.

For this reason, bias towards features that change a relatively small amount of code that is present upstream.

Without an overriding motivation, opinionated features should exist behind a toggle that is not enabled by default. This allows deer.social to cater to as many users as possible.

Guidelines:

  • Check for existing issues before filing a new one please.
  • Open an issue and give some time for discussion before submitting a PR.
    • 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.
  • Stay away from PRs like...
    • Changing "Post" to "Skeet."
    • Refactoring the codebase, e.g., to replace React Query with Redux Toolkit or something.
  • Include a new toggle and preference for your feature.

If we don't merge your PR for whatever reason, you are welcome to fork and/or self host:

Forking guidelines

Just like social-app, you have our blessing 🪄 to fork this application! However, it's very important to be clear to users when you're giving them a fork.

Please be sure to:

  • Change all branding in the repository and UI to clearly differentiate from deer.social.
  • Change any support links (feedback, email, terms of service, issue tracker, etc) to your own systems.

Self hosting & personal builds

Self hosting is great! It is our intention that deer.social is easy to self host and build on your own. If you host your own instance of deer.social, or make your own builds, please make some level of effort to clarify that it is not an "official" build or instance. This can be in the form of a different domain or branding, but can also be as simple as not advertising your hosted instance or builds as "official" releases.

Security disclosures

If you discover any security issues, please send an email to deer@aylac.top if it's something i caused. If it's upstream, on deer.social, go to the a-viv-a/deer-social github and look at there If the issue pertains to infrastructure, code, or systems outside the scope of deer.social, please refer to the disclosure guidelines on social-app if it is hosted by Bluesky PBC. Otherwise, reference the security policy of that system as applicable <3

License (MIT)

See ./LICENSE for the full license.

Bluesky Social PBC has committed to a software patent non-aggression pledge. For details see the original announcement.

P.S.

We ❤️ you and all of the ways you support us. Thank you for making Bluesky a great place!