프로젝트 소개

Expo는 Android, iOS 및 웹에서 실행되는 유니버설 네이티브 애플리케이션을 구축하기 위한 오픈 소스 플랫폼입니다. README에 따르면, 개발자가 React와 JavaScript를 작성하여 네이티브 앱을 구축할 수 있도록 유니버설 런타임과 라이브러리를 제공합니다. 이 저장소는 Expo SDK, Modules API, Go 앱, Expo CLI, Router, 문서 및 다양한 지원 도구 등 프로젝트의 여러 부분을 한곳에 모아두었습니다. Expo 모듈의 소스 코드는 packages 아래에 있으며, apps는 개발 모듈과 연결된 Expo 프로젝트들을 포함하며 대부분의 테스트가 이루어지는 곳으로 설명됩니다. Expo Go 클라이언트 소스는 apps/expo-go에 있습니다. iOS의 경우, README는 기여자들에게 .xcodeproj 파일 대신 Exponent.xcworkspace Xcode 워크스페이스를 열 것을 안내하는데, 이는 워크스페이스가 CocoaPods 종속성까지 함께 로드하기 때문입니다. react-native-lab 디렉토리에는 Expo Go를 빌드하는 데 사용되는 react-native의 포크 버전이 포함되어 있습니다. npx create-expo-app에서 사용하는 템플릿은 templates에 보관되며, 문서 사이트의 소스는 docs에 있습니다. 추가 자료는 guides(클라이언트 기여와 같은 고급 주제에 대한 심층 튜토리얼), tools(빌드 및 구성 도구), template-files(template-files/keys.json에서 채워지는 개인 키가 필요한 템플릿; template-files/ios/dependencies.json은 앱의 CocoaPods 종속성을 지정함)로 구성됩니다. Expo Application Services (EAS)는 오픈 소스 Expo 도구와 밀접하게 통합된 호스팅 서비스 플랫폼으로 설명되며, 개인이나 팀이 앱을 빌드, 배포 및 반복 개선하는 것을 돕기 위해 설계되었습니다. 문서 링크에는 시작하기, API 참조 및 커스텀 네이티브 모듈 사용 워크플로우가 포함되어 있습니다. 또한 README는 프로젝트가 표시할 수 있는 "Runs with Expo Go" 배지를 제공하고, 기여자들을 기여 가이드와 CLI 패키지로 안내하며, FAQ, Discord, 포럼, X 및 커뮤니티 가이드라인을 참조하도록 합니다. 프로젝트는 소스 코드가 MIT 라이선스 하에 제공되며, 일부 종속성은 BSD 라이선스와 같이 다른 라이선스가 적용됨을 명시하고 있습니다.