AOSSIE-Org / AOSSIE-Org/OpenPeerChat-react-native

[FEATURE]: Perposal to migrate from metro react native bundler to expo

Aperta
#4 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
enhancement
Lingua principale
JavaScript
Stelle
7
Fork
5
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Feature and its Use Cases

### Is your feature request related to a problem? Please describe.
Currently, the **OpenPeerChat** project runs on a "bare" React Native setup using the standard Metro bundler. This configuration presents a high barrier to entry for new contributors because:
1. It requires setting up complete native environments (Android Studio / Xcode) just to run the app.
2. Debugging and testing on physical devices requires cumbersome USB tethering or specific driver setups.
3. Library linking and native dependency management must be handled manually.

### Describe the solution you'd like
I propose migrating the project architecture to **Expo**.

By adopting the Expo ecosystem (specifically utilizing **Expo Go** for development), we can significantly streamline the onboarding process. Contributors would only need Node.js and the Expo Go app on their phone to spin up a local development server (`exp://`) and immediately start coding, building, and testing.

### Benefits of Migration
- **Zero-Config Development:** New contributors can run `npx expo start` and scan a QR code to see changes instantly on their physical devices (iOS/Android) via Expo Go.
- **Simplified Upgrades:** The Expo SDK manages compatible versions of React Native and native libraries, reducing "dependency hell."
- **EAS Build Support:** Opens the door for using EAS (Expo Application Services) for cloud builds and OTA (Over-The-Air) updates in the future.
- **Cross-Platform Consistency:** Reduces platform-specific bugs that occur due to varying native project configurations.

### Proposed Implementation Plan
1. Initialize the Expo configuration using `npx install-expo-modules@latest`.
2. Configure `app.json` / `app.config.js` to match the current project identity.
3. Audit and replace any native-only libraries with their Expo equivalents (or configure Config Plugins for them).
4. Update documentation (`README.md`) with the new, simplified startup commands.

### Additional Context
I have experience with this migration process and believe it will greatly encourage more open-source contributions by lowering the technical requirements to run the project.

**I am willing to take ownership of this migration task.**

### Additional Context

_No response_

### Code of Conduct

- [x] I have joined the [Discord server](https://discord.gg/hjUhu33uAn) and will post updates there
- [x] I have searched existing issues to avoid duplicates

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.