12P by GN⁺ 2일전 | ★ favorite | 댓글 3개
  • Swift와 SwiftUI 기반으로 iOS와 Android 앱을 하나의 코드베이스로 개발할 수 있는 크로스플랫폼 네이티브 프레임워크
  • Skip 1.7 버전부터 모든 라이선스 제약이 제거되어, 누구나 무료로 사용할 수 있는 완전한 오픈소스 도구로 전환됨
  • 핵심 엔진 ‘skipstone’ 이 GitHub에 공개되어, 프로젝트 생성·변환·패키징 등 주요 빌드 기능을 오픈소스로 제공
  • 기존 유료 구독자는 스폰서십 프로그램으로 자동 전환되며, 개인·기업 후원을 통해 프로젝트에 지원 가능
  • 이번 공개는 커뮤니티 중심의 장기적 생태계 구축진정한 네이티브 경험 제공을 위한 전환점

개요

  • Skip은 2023년 출시 이후, Swift와 SwiftUI 코드로 iOS와 Android 앱을 동시에 개발할 수 있도록 하는 것을 목표로 발전
    • 초기에는 Swift-to-Kotlin 트랜스파일러와 기본 SwiftUI API 지원으로 시작
  • 이후 Swift Android Workgroup 설립과 Swift Android SDK 공개를 통해 Android 네이티브 컴파일을 지원
  • 현재 수십 개의 통합 프레임워크와 수천 개의 Swift 패키지와 호환되며, 가장 완전한 독립형 SwiftUI 구현체를 제공

유료 개발 도구의 한계

  • 지금까지 Skip은 유료 구독 및 라이선스 키가 필요했으며, 일정 수익 이하의 개인 개발자만 무료 사용 가능
  • 그러나 대부분의 개발자는 무료 도구를 기대하며, Xcode·Android Studio 등 주요 IDE도 무료로 제공됨
  • 유료·폐쇄형 도구에 대한 지속 가능성 우려가 존재함
    • 회사가 중단되거나 인수될 경우, 개발자 앱의 유지가 어려워질 위험
  • 이를 해결하기 위해 Skip은 완전한 무료·오픈소스 기반으로 전환, 커뮤니티가 독립적으로 기술을 유지 가능

변경 사항

  • Skip 1.7부터 라이선스 키, 평가판, EULA 모두 폐지
    • 기존 사용자: 업그레이드 후 라이선스 키 불필요
    • 신규 사용자: 즉시 빌드 가능
  • Skip 엔진 ‘skipstone’ 오픈소스화
    • 프로젝트 생성·관리, Xcode·SwiftPM 플러그인, iOS→Android 변환, 리소스 번들링, JNI 브리지, 소스 트랜스파일, 앱 패키징, 프로젝트 내보내기 등 핵심 빌드 기능 포함
    • GitHub 공개 저장소: https://github.com/skiptools
  • 공식 사이트 이전
    • 기존 skip.tools에서 skip.dev로 이전
    • 문서·블로그·사례 연구를 포함하며, 사이트 자체도 오픈소스로 공개

Skip의 미래 지원

  • Skip은 외부 투자 없이 독립적으로 운영되어 왔으며, 대형 기술 기업의 통제 없이 개발자 중심으로 유지
  • 독립성 유지를 위해 커뮤니티 후원이 필요
    • 기존 구독자는 자동으로 Individual 또는 Supporter 티어로 전환
    • 개인 개발자는 GitHub Sponsors를 통해 월 단위 후원 가능
    • 기업은 스폰서십 프로그램을 통해 프레임워크 개발·유지·인프라를 직접 지원 가능
  • 후원은 Skip의 지속적 개발과 장기적 성공을 보장하며, 개발팀의 경쟁력 강화에 기여

향후 계획

  • 현재 앱 개발 분야는 기존 크로스플랫폼 프레임워크의 한계에 직면
    • iOS의 Liquid Glass, Android의 Material Expressive 등 최신 UI 시스템 변화에 대응 어려움
    • 통합 코드베이스의 타협이 낡은 인터페이스와 경쟁력 저하로 이어짐
  • Skip은 양 플랫폼에서 완전한 네이티브 경험을 제공하는 방향으로 진화
  • 오픈소스화는 Swift·Kotlin, SwiftPM·Gradle, Xcode·Android Studio 등 다양한 생태계를 아우르는 다음 단계임
  • 지속적 발전은 개발자 커뮤니티의 참여와 후원에 달려 있으며,
    “타협 없는 크로스플랫폼 기반” 이라는 Skip의 비전을 향해 나아갈 것

크로스플랫폼이라는 (잡힐듯 잡히지 않는) 신기루

Hacker News 의견들
  • 개발자들이 무료 도구를 기대하는 현실이 안타깝다고 느낌
    우리처럼 고소득 직군이 도구에 돈을 쓰지 않는 건 다른 전문직과 비교해도 드문 일임
    가능하다면 FAANG이나 VC 자금에 의존하지 말고, 좋은 소프트웨어에는 직접 비용을 지불해주었으면 함

    • 소프트웨어 개발 분야의 최고 품질 도구는 대부분 FOSS(오픈소스)
      우리는 도구를 직접 만들 수 있는 직군이고, 배포 비용이 0이기 때문임
      “내가 직접 만들 수 있다”는 생각 때문에 유료 개발툴 시장은 한계가 있음
      오픈소스는 이런 불만을 줄여주며, 사용자는 단지 자신의 게으름과 싸우면 됨
    • 나는 폐쇄형 상용 툴이 의존성에 포함될수록 실제로 할 수 있는 일이 줄어듦
      가격보다 중요한 건 자유도
      작은 회사의 유료 폐쇄형 툴에 앱 전략을 전적으로 의존하는 건 위험하다는 의견에 공감함
    • 예전 회사에서는 믿을 만한 툴이라면 회사 돈으로 기꺼이 결제했음
      하지만 이미 수백만 달러를 다른 솔루션에 쓴 상황에서 새 툴에 몇 천 달러 쓰는 건 관료적 장벽이 너무 높았음
      개발자들이 돈을 안 쓰려는 게 아니라, 조직 구조가 막고 있는 경우가 많음
    • 오픈소스 툴이 더 낫다고 생각함
      버그나 제약을 발견하면 직접 수정하고 공유할 수 있음
      자동차 예시처럼, 직접 손볼 수 있는 구조를 선호하는 사람에게는 오픈소스가 훨씬 매력적임
    • 우리는 고소득 직군 중에서도 무료로 일하는 비율이 가장 높음
      변호사나 의사도 프로보노를 하지만, 오픈소스 규모에는 미치지 못함
  • Skip의 작동 방식을 보니, 언젠가 AI 에이전트가 한 플랫폼용 코드(iOS 등)를 다른 플랫폼용 네이티브 코드(Swift, Kotlin 등)로 자동 변환해주는 시대가 올까 궁금해짐

  • 지금까지 만족스러운 크로스플랫폼 모바일 개발 환경을 찾지 못했는데 Skip이 흥미로웠음
    하지만 macOS 15 이상, Xcode 16.4 이상이 필요하다는 걸 보고 기대와 달랐음
    “추가 런타임 없이 최대 효율”이라는 대담한 주장도 인상적이지만, 32GB 메모리 요구사항은 놀라움

  • Flutter 개발자 입장에서 Skip이 왜 필요한지 의문이었음
    Flutter는 이미 성숙했고, 모바일뿐 아니라 데스크톱과 웹까지 지원함
    다만 Skip이 성능 향상을 얼마나 줄지 궁금해서, DRAM 가격이 안정되면 한번 써볼 생각임

    • Flutter는 iOS의 Liquid Glass, Android의 Material Expressive 같은 최신 UI를 구현하지 못함
      그래서 UI가 구세대처럼 느껴지고, 이 한계 때문에 Skip에 대한 관심이 커졌음
      Dart를 좋아하거나 완전 커스텀 UI를 원한다면 Flutter도 괜찮지만, 프리미엄 네이티브 감성이 중요한 비즈니스라면 Skip이 더 적합함
      관련 이슈: Flutter issue #170310
    • 나는 Flutter 앱을 보면 항상 이질감이 느껴짐
      위젯이 네이티브처럼 보여도 뭔가 어색하고, 애니메이션도 매끄럽지 않음
      React Native보다 한 단계 아래 느낌임
    • Flutter는 성능, 접근성, 네이티브 기능 접근 등에서 제약이 많음
      특히 Google Maps 통합이 끔찍함
      훌륭한 Flutter 앱을 만드는 비용은 결국 네이티브 앱과 비슷함
      Skip의 32GB 요구는 Xcode, Gradle, 에뮬레이터 등 전체 개발 환경을 고려한 수치라 놀랍지 않음
    • Flutter가 아직 Liquid Glass를 지원하지 않아서 진지한 대안으로 보기 어려움
      완전 커스텀 UI를 원하지 않는 이상, 플랫폼 고유의 느낌을 살리기 힘듦
    • 1년 전 Flutter로 Mac 앱을 만들려 했는데, 문서 부족과 미성숙함 때문에 포기했음
  • 게시물 제목이 너무 불명확한 소프트웨어 이름이라, 좀 더 설명적인 제목을 써줬으면 함

  • Skip GitHub 저장소를 봤는데, 라이선스 파일이 없음
    그래서 “사용 금지(DONT USE)” 영역으로 봄
    반면 Skipstone 저장소는 라이선스가 있지만, Skip을 vendor로 포함하고 있어서 혼란스러움

    • /skip 저장소의 Xcode 플러그인은 /skipstone에서 생성된 바이너리를 사용함
      라이선스 누락은 실수였고, 곧 수정할 예정임
    • 이제 LGPL3 라이선스가 추가됨
    • 단순한 실수였고 이미 수정됨, 의도적인 누락은 아님
  • 여러 번의 시도에도 불구하고 iOS와 Android를 통합 빌드하는 방식은 근본적으로 어려움
    HTML, JS, React, Dart, Kotlin, Swift 등 다양한 접근이 있었지만, 1천만 이상 설치 규모에서는 실패함
    관련 글

    • 하지만 이 주장은 틀림
      브라질의 Nubank 앱은 Flutter로 개발되었고, 1억 명 이상이 사용하는 대형 서비스임
    • 나도 2018~2021년 Flutter 앱을 개발했는데, 1,500만 설치를 기록했고 App Store 피처 및 디자인 어워드도 받았음
      코드베이스가 커지지 않았던 점이 성공 요인이었음
  • “Skip 개발에는 최소 32GB 메모리 권장”이라는 문구를 보고 충격을 받음

    • iOS(Xcode, 시뮬레이터)와 Android(Gradle, 에뮬레이터) 툴체인을 동시에 돌리면 메모리 사용량이 커짐
      Skip 자체는 가볍고, 헤드리스 모드에서는 훨씬 적은 메모리로도 가능함
    • 모바일 IDE들이 FPGA IDE의 비대함을 보고 “우리가 더 할 수 있다”고 한 듯함
    • 현재 RAM 가격을 보면 DDR5는 300달러 이상, DDR4도 200달러 이상임
    • 아마 개발 단계에서만 필요한 사양일 것임
    • Skip이 iOS와 Android 툴체인, 자체 트랜스파일러(예: Skip Lite, Skip Fuse)를 모두 사용하기 때문임
      메모리 비효율은 Skip 탓이 아니라 Apple과 Google의 툴체인 구조 문제
  • 시각장애인용 내비게이션 앱 Soundscape Community를 Android로 포팅하려고 했는데, Skip이 이상적인 솔루션처럼 보임
    접근성(TalkBack)도 네이티브 UI로 번역된다면 잘 작동할 것 같음
    Soundscape GitHub 링크

    • Skip은 iOS에서는 SwiftUI, Android에서는 Jetpack Compose를 사용하므로 각 플랫폼의 접근성 기능을 그대로 지원함
      예시 코드: Skip 접근성 문서
  • Skip이 SwiftUI의 장기적 크로스플랫폼 옵션으로 자리 잡을 수 있을 것 같음
    Apple이 이 툴셋에 직접 참여하거나 일부라도 SwiftUI를 오픈소스화하면 좋겠음
    커뮤니티가 macOS 관련 문제를 개선해 AppKit 수준의 유연성과 기능성을 확보한다면, Swift 기반 UI 생태계가 훨씬 강력해질 것임