풀 스택, 멀티플랫폼 앱 개발을 개선하기 위한 실험 Project IDX 소개

8월 08, 2023
Bre Arder UX Research Lead
Kirupa Chinnathambi Product Lead
Ashwin Raghav Mohan Ganesh Engineering Lead
Erin Kidwell Director of Engineering
Roman Nurik Design Lead

요즘에는 앱을 처음부터 개발하기 시작해 프로덕션 단계에 이르기까지, 특히 모바일, 웹 및 데스크톱 플랫폼 전체에서 잘 작동하는 앱을 완성하는 것이 Rube Goldberg 기계를 만드는 것처럼 느껴질 수 있습니다. 앱을 부트스트랩, 컴파일, 테스트, 배포 및 모니터링하는 데 도움이 될 기술 스택을 함께 연결하여 끝도 없이 복잡한 문제를 헤쳐나가야 합니다.

Google은 AngularFlutter에서 Google CloudFirebase까지 다년간 멀티플랫폼 앱 개발을 더 쉽게 만들기 위해 노력해 왔지만, 전체 멀티플랫폼 앱 개발 워크플로를 더 빠르고 원활하게 만들기 위해 할 수 있는 일이 아직도 더 많은 것 같습니다. 그래서 몇 달 전에 우리 중 몇 명이 모여 실험을 시작했고 오늘 드디어 Project IDX라고 부르는 실험의 초기 버전을 선보이게 되었습니다.

Project IDX는 Google Cloud를 기반으로 구축되었으며 코드에 대해 학습하고 PaLM 2를 기반으로 구축한 기본 AI 모델 Codey로 제공되는 브라우저 기반 개발 환경입니다. 널리 사용되는 프레임워크와 언어를 사용하여 풀스택 웹 및 멀티플랫폼 애플리케이션을 더욱 쉽게 개발, 관리 및 배포할 수 있도록 설계된 환경입니다. 또한 Project IDX는 Code OSS를 기반으로 개발되었으므로 무엇을 개발하든 친숙하게 느껴질 것입니다.

오늘 Project IDX를 공유하는 가장 큰 이유는 더 빠르게 작업하는 데 도움이 될 수 있는 점에 대해 광범위한 개발자 커뮤니티에서 의견을 듣고 싶기 때문입니다. 그동안 Project IDX에서 현재 가능한 작업에 대한 미리보기를 제공합니다.

어디서든 신속하게 업무에 착수

Project IDX의 핵심은 로컬 개발과 동일한 충실도를 갖춰 어디서나 모든 기기에서 개발할 수 있어야 한다는 우리의 신념입니다. 모든 Project IDX 작업공간은 Linux 기반 VM의 모든 기능이 갖춰져 있으며, 또한 이런 기능은 가까운 데이터 센터의 클라우드에 호스팅되어 어디서나 액세스가 가능합니다.

기존 앱을 가져오거나 새로운 개발을 시작

Project IDX를 사용하면 GitHub에서 기존 프로젝트를 가져올 수 있으므로, 앞서 중단한 부분부터 바로 시작할 수 있습니다. Angular, Flutter, Next.js, React, Svelte, Vue 그리고 JavaScript, Dart, (곧 제공할) Python, Go 등과 같은 언어를 포함하여 인기 있는 프레임워크를 위해 미리 만든 템플릿을 사용하여 새 프로젝트를 만들 수도 있습니다. 또한 더 많은 프로젝트 유형과 프레임워크에 대한 최고 수준의 지원을 추가하기 위해 활발하게 노력하고 있습니다. 제안 사항이 있으시면 지원할 스택에 대한 의견을 보내주세요.

projectidx3

다양한 플랫폼에서 앱 미리보기

오늘날 성공적인 앱을 만든다는 것은 여러 플랫폼에서 앱 디자인과 동작을 최적화하고 마치 사용자가 앱을 보는 것처럼 미리 보며 확인하는 것을 의미합니다. 이를 더 쉽게 하려고 Project IDX에 기본 제공 웹 미리보기를 포함했으며, 곧 완전히 구성된 Android 에뮬레이터와 임베디드 iOS 시뮬레이터를 모두 브라우저에서 직접 사용할 수 있도록 제공할 예정입니다.

AI를 활용

코드 작성에 많은 시간을 쓰게 되는데, 최근 AI의 발전 덕분에 그 시간을 더 생산적으로 쓸 수 있는 큰 기회가 생겼습니다. Project IDX를 사용해 Android Studio의 Studio Bot, Google Cloud의 Duet 등을 지원하는 Codey 및 PaLM 2 모델을 비롯하여 AI 분야에서 Google의 혁신이 어떻게 코드를 더 빠르게 작성할 뿐 아니라 더욱 수준 높은 코드를 작성하는 데도 도움이 되는지 살펴보고 있습니다. 현재, Project IDX에는 스마트 코드 완성, 보조 챗봇 그리고 '주석 추가' 및 '이 코드 설명'처럼 상황에 맞는 코드 동작 기능이 있습니다. AI 기능은 아직은 첫 단계이며, 개발자의 작업을 지원하는 데 IDX AI가 훨씬 더 큰 도움이 되도록 노력하고 있습니다.

Firebase Hosting으로 웹에 게시

마지막으로, 앱을 프로덕션 단계로 넘기면서 공통적인 어려움의 앱의 배포입니다. Firebase Hosting 통합으로 이 작업을 더 쉽게 할 수 있도록 함으로써 웹 앱의 공유 가능한 미리보기를 배포하거나 몇 번의 클릭만으로 빠르고 안전한 전역 호스팅 플랫폼을 사용해 프로덕션 환경에 배포할 수 있습니다. Firebase Hosting은 Cloud Functions에서 제공하는 동적 백엔드를 지원하므로 Next.js와 같은 풀 스택 프레임워크에 대해 매우 효과적입니다.

함께 Project IDX를 만들기

저희는 Project IDX가 멀티플랫폼 앱 개발을 개선하기 시작할 수 있다고 생각하는 방법과 이러한 분야에서 저희가 이루기 시작한 몇 가지 진전된 사항을 공유했습니다. 그러나 엔드투엔드 개발 워크플로를 개선하기 위한 이번 여정은 이제 겨우 출발했을 뿐이며, 개발자 여러분의 도움으로 이러한 비전을 실현할 수 있습니다. 따라서 Project IDX의 초기 버전(아직 완벽하지 않은 부분도 포함됨)을 공유하여 잘 작동하는 기능과 앱 팀의 워크플로에서 부족한 부분을 개선하는 작업을 반복하기 원합니다. 이 여정에 동참하려면 Google 웹사이트를 방문하여 가입하고 Project IDX를 먼저 사용해 보세요.

다음 단계를 위해 새로운 기능을 추가하고 의견을 반영하기 위해 지속적으로 노력하고 있습니다. 저희는 하이브리드 업무 환경에서 공동 작업 기능이 중요하는 것을 이해하므로 새로운 공동 작업 기능에 대해 작업하고 있으며 이외에도 더 심층적인 프레임워크 통합과 더 개인 맞춤화되고 상황에 맞는 AI에 대해 작업하고 있습니다. 저희에게 기능 요청도 공유해 주세요!