🔀 Fork of Bluesky (https://github.com/bluesky-social/social-app) with minor adjustments for https://zio.blue
 
 
 
 
 
 
Go to file
Paul Frazee 2f3fc4fe4e Handle-change modal with custom domain support (#273)
* Dont append the server's domain name when a custom domain is used

* Update the settings look & feel and add a tool to remove accounts from the switcher

* Try not rendering the bottomsheet when no modal is active.

There are cases where the bottomsheet decides to show itself when
it's not supposed to. It seems obvious to do what this change is
doing -- just dont render bottomsheet if no modal is active -- but
previously we experienced issues with that approach. This time it
seems to be working, so we're gonna yolo try it.

* Implement a handle-change modal with support for custom domains (closes #65)
2023-03-06 21:37:48 -06:00
.bundle Initial commit 2022-06-07 17:50:05 -05:00
.github/workflows Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
__mocks__ Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
__tests__ New onboarding (#241) 2023-03-02 12:21:33 -06:00
android Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
e2e New onboarding (#241) 2023-03-02 12:21:33 -06:00
ios 1.6 2023-03-06 10:55:45 -06:00
jest Fix tests 2023-02-27 10:44:42 -06:00
public Break out the web/native image picking code and make some progress on the web version 2023-01-27 15:51:24 -06:00
src Handle-change modal with custom domain support (#273) 2023-03-06 21:37:48 -06:00
web fix: webpack hot reloading 2023-02-23 16:32:56 -08:00
.buckconfig Initial commit 2022-06-07 17:50:05 -05:00
.detoxrc.js Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
.eslintrc.js Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
.gitignore Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
.prettierignore more prettier and lint cleanup (#82) 2023-01-24 11:03:18 -06: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
Gemfile Improve lightbox... and update to React Native 0.71.0 (#49) 2023-01-17 20:40:02 -06:00
README.md Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
babel.config.js Update web header and search 2023-02-23 01:07:20 -06:00
index.js Add setImmediate polyfill to web, fixing dropdown items 2023-02-23 16:42:52 -06:00
index.web.js Add setImmediate polyfill to web, fixing dropdown items 2023-02-23 16:42:52 -06:00
metro.config.js Resolve all remaining lint issues (#88) 2023-01-24 13:00:11 -06:00
package.json 1.6 2023-03-06 10:55:45 -06:00
tsconfig.json Add a temporary lexicon refactor guard (#235) 2023-02-28 11:57:49 -06:00
yarn.lock New user constants (#260) 2023-03-03 15:37:17 -06:00

README.md

Bluesky

Build instructions

  • Setup your environment using the react native instructions.
  • Setup your environment for e2e testing using detox:
    • yarn global add detox-cli
    • brew tap wix/brew
    • brew install applesimutils
  • After initial setup:
    • cd ios ; pod install
  • Start the dev servers
    • git clone git@github.com:bluesky-social/atproto.git
    • cd atproto
    • yarn
    • cd packages/dev-env && yarn start
  • Run the dev app
    • iOS: yarn ios
    • Android: yarn android
    • Web: yarn web
  • Tips
    • npx react-native info Checks what has been installed.
    • On M1 macs, you need to exclude "arm64" from the target architectures
      • Annoyingly this must be re-set via XCode after every pod install
    • The android simulator won't be able to access localhost services unless you run adb reverse tcp:{PORT} tcp:{PORT}
      • For instance, the localhosted dev-wallet will need adb reverse tcp:3001 tcp:3001
    • For some reason, the typescript compiler chokes on platform-specific files (e.g. foo.native.ts) but only when compiling for Web thus far. Therefore we always have one version of the file which doesn't use a platform specifier, and that should bee the Web version. (More info.)

Various notes

Debugging

Running E2E Tests

  • Make sure you've setup your environment following above
  • Make sure Metro and the dev server are running
  • Run yarn e2e
  • Find the artifacts in the artifact folder

Polyfills

./platform/polyfills.*.ts adds polyfills to the environment. Currently this includes:

  • TextEncoder / TextDecoder