Skip to content

mozzius/graysky

Folders and files

NameName
Last commit message
Last commit date
May 4, 2023
Dec 21, 2023
Feb 10, 2025
Dec 21, 2023
Jan 28, 2025
Sep 19, 2024
Sep 17, 2024
Feb 19, 2024
Feb 16, 2024
Oct 7, 2024
Jul 22, 2024
Dec 8, 2023
Mar 8, 2024
Oct 5, 2024
Aug 9, 2023
Feb 20, 2024
Mar 2, 2024
Feb 16, 2024
Oct 18, 2024
Jan 28, 2025
Feb 10, 2025
Aug 30, 2023
Aug 26, 2024
Aug 30, 2023
Jul 22, 2024

Repository files navigation

Graysky

Crowdin

Graysky is a Bluesky client written in React Native.

Get it here: https://graysky.app/download

Getting Started

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

pnpm install
cp .env.example .env

EAS setup (optional) Set EAS_PROJECT_ID, APP_ID, and OWNER in .env

In the /apps/expo directory, build the dev client using EAS:

pnpm build:dev-client:ios-simulator
// or
pnpm build:dev-client:android

You can then start the expo server with:

pnpm dev

Future Roadmap

  • Change handle
    • own domain
    • bsky.social
    • community handles
  • Push notifications
  • Drafts
  • Full lists support
  • Share post as image
  • Pro features
    • Polls
    • Analytics

Android local APK builds

  • Install Android Studio, and the Android SDK
  • Install Azul Zulu OpenJDK (brew install --cask zulu17) and then set JAVA_HOME to the path of the JDK, which will probably be /Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home
  • Copy google-services.json.example to google-services.json, or add your own Firebase config
  • Make Gradle faster in ~/.gradle/gradle.properties:
org.gradle.jvmargs=-Xmx20g -XX:MaxMetaspaceSize=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

You can now either run pnpm build:android to build and submit the app, or if you want to sign a build manually you can do the following:

  • 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 builds

In the /apps/expo directory:

pnpm build:ios

Sponsors

Thank you to @thepriceisright for sponsoring my work on this project!

Contributors

Graysky is primarily developed by @mozzius.dev. If you'd like to show your support for the project, you can sponsor me.

However, I'm not the only one who's contributed to this project. I'd like to especially thank @alice.bsky.sh for her work on adding dark mode, and getting Android builds working, and thank @holden.bsky.social for their invaluable accessibility improvements.

All Contributors

My eternal thanks to the following people for their contributions to Graysky: