🔀 Fork of Bluesky (https://github.com/bluesky-social/social-app) with minor adjustments for https://zio.blue
 
 
 
 
 
 
Go to file
Ansh c8157d6d38
Update README.md (#487)
Update README with new build instructions since we are no longer using the ios and android folders. So, ideally, devs will never need to open XCode and Android Studio (thank the gods)
2023-04-18 13:06:38 -05:00
.bundle Initial commit 2022-06-07 17:50:05 -05:00
.github/workflows Fix unit tests (#377) 2023-04-03 12:11:06 -05:00
__e2e__ Mobile Web (#427) 2023-04-12 18:27:55 -07:00
__mocks__ Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
__tests__/lib Fix unit tests (#377) 2023-04-03 12:11:06 -05:00
assets Move to expo and react-navigation (#288) 2023-03-13 16:01:43 -05:00
bskyweb Update bskyweb html styles 2023-04-13 16:36:08 -07:00
jest Add first round of labeling tools (#467) 2023-04-12 18:26:38 -07:00
patches Mobile Web (#427) 2023-04-12 18:27:55 -07:00
scripts Create build step for the web server (#289) 2023-03-14 17:30:15 -05:00
src add edges to ImageViewing component (#471) 2023-04-18 13:06:09 -05:00
web Web darkmode fixes (#474) 2023-04-13 16:10:27 -07:00
.buckconfig Initial commit 2022-06-07 17:50:05 -05:00
.detoxrc.js Mobile Web (#427) 2023-04-12 18:27:55 -07:00
.eslintrc.js Merge main into the Web PR (#230) 2023-02-22 14:23:57 -06:00
.gitignore Split image cropping into secondary step (#473) 2023-04-17 15:41:44 -07:00
.prettierignore Basic golang CI setup (#360) 2023-03-27 10:16:17 -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
Dockerfile bskyweb additions (#296) 2023-03-20 14:41:15 -07:00
Gemfile Improve lightbox... and update to React Native 0.71.0 (#49) 2023-01-17 20:40:02 -06:00
README.md Update README.md (#487) 2023-04-18 13:06:38 -05:00
app.json Update config 2023-04-12 20:49:36 -07:00
babel.config.js Move to expo and react-navigation (#288) 2023-03-13 16:01:43 -05:00
eas.json Update config 2023-04-12 20:49:36 -07:00
index.js Move to expo and react-navigation (#288) 2023-03-13 16:01:43 -05:00
index.web.js Move to expo and react-navigation (#288) 2023-03-13 16:01:43 -05:00
metro.config.js Lex refactor (#362) 2023-03-31 13:17:26 -05:00
package.json APP-70 give profile its own tab mobile (#469) 2023-04-18 11:19:37 -05:00
tsconfig.json Lex refactor (#362) 2023-03-31 13:17:26 -05:00
webpack.config.js Move to expo and react-navigation (#288) 2023-03-13 16:01:43 -05:00
yarn.lock Fix: sanitize URLs before placing them on the page (#488) 2023-04-15 09:24:03 -07: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:
    • npx expo prebuild -> you will also need to run this anytime app.json or package.json changes
  • 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
  • Run e2e tests
    • Start in various console tabs:
      • yarn e2e:server
      • yarn e2e:metro
    • Run once: yarn e2e:build
    • Each test run: yarn e2e:run
  • Tips
    • npx react-native info Checks what has been installed.
    • 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