1.0.0 • Published 1 year ago

blueskeet v1.0.0

Weekly downloads
-
License
MIT
Repository
-
Last release
1 year ago

Blueskeet

Blueskeet is a Bluesky client forked from mozzius/blueskeett and is written in React Native. Meant as a fun little learning experiment and to see if I could compile my own app.

Much of this documentation comes from mozzius, I will tweak should I make any MAJOR revisions.

  • Labat

Getting Started

You'll need pnpm, and some sort of simulator or device to run the app on.

pnpm install

Weird side step - you need to go to apps/expo/app.config.ts and delete the extra field which has an expo project id in it. Sorry, I'll fix this later.

You can then start the expo server with:

pnpm dev:expo

(Note: this is just a shortcut for expo start)

Then just scan the QR code!

Roadmap to Feature Parity

  • Notifications screen
  • Image viewer
  • Pull to refresh fix
  • Haptics
  • Post composer
  • Context menu - post actions
  • Block/Unblock user
  • Quote post
  • Dark mode
  • Sidebar w/ logout button
  • Followers/Following screens
  • Settings screen
  • Context menu - user actions
  • Image viewer: Pinch to zoom
  • Better haptics
  • Search screen
  • Invites screen
  • Create account flow
  • Push notifications
  • App Store???

Android local APK builds

  • Install Android Studio, and the Android SDK
  • Install Oracle Java 11 JDK
  • Make Gradle faster in ~/.gradle/gradle.properties:
org.gradle.jvmargs=-Xmx20g -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -XX:+UseParallelGC -XX:MaxMetaspaceSize=2g
org.gradle.parallel=true
org.gradle.configureondemand=true
org.gradle.daemon=false
org.gradle.caching=true
  • Create a signing key in Android Studio
  • Build it with: eas build --platform android --profile production-apk --non-interactive --local --output="./foo.apk" --wait
  • Sign it with: /Users/alice/Library/Android/sdk/build-tools/33.0.0/apksigner sign -ks sideload.jks foo.apk

iOS local IPA builds

This is fish shell format, but you can probably figure out how to translate it to bash.

set SHORT_SHA (git rev-parse --short HEAD)
eas build --platform ios --profile production --non-interactive --local --output="./$SHORT_SHA.ipa" --wait; and say "Build finished"
eas submit --platform ios --path="./$SHORT_SHA.ipa" --wait; and say "Submitted to TestFlight"