패키지, 저장소 및 앱 카테고리 검색

GitHub 저장소simonbengtsson/airdash

AirDash

어디서든 어떤 기기로 파일을 보내는 데 사용할 수 있는 파일 공유 플러터 웹RTC 앱

AirDash 프로젝트 이미지
스타
673
포크
126
최근 푸시(UTC)
2026. 8. 27.
프로젝트 상태
활성

원본 README

아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.

AirDash File Sharing

Transfer photos and files to any device.

Get the app
Analytics
Key features
  • Support for all major platforms and app stores (iOS, macOS, Windows, Linux and Android)
  • Free forever to send any number of files of any size
  • Maximum privacy and security by fully encrypting files and transferring them directly between devices
  • Quickly start transfers using native mobile share sheet and drag and drop on desktop
  • Send files anywhere (no need to be on the same network or nearby)
  • Automatically uses the best and fastest connection available (wifi, mobile internet, ethernet etc)
Key technologies
  • Flutter 3 (iOS, macOS, Android, Linux and Windows apps)
  • WebRTC (file and data transfers)
  • Firebase Firestore (WebRTC signaling and config storage)
  • Firebase Functions (device pairing and config automation)
  • Firebase Hosting (website and static files hosting)
  • App Store Connect API and Microsoft Store submission API (release automation)
  • Mixpanel (web and app analytics)
  • Sentry (app monitoring and error tracking)
Run project
  • Create a firebase project (https://console.firebase.google.com) and enable firestore and anonymous authentication
  • Create a .env file by duplicating the .env.sample file
  • Replace the firebase project id and web API key in the .env file with the ones for your project (firebase console -> project settings)
  • Run dart tools/scripts.dart app_env to get a env.dart file
  • Deploy pairing backend function by cd functions && npm i && npx firebase deploy --only pairing
  • Run app using editor or flutter run

By default a google stun server is used to connect peers. The simplest way to enable turn servers as well is to use https://www.twilio.com/stun-turn. Create functions/.env file similar to the functions/.env-sample file and deploy the updateTwilioToken backend function.

Contribute

Contributions are very much welcome on everything from bug reports to feature development. If you want to change something major write an issue about it first to ensure it will be considered for merge.

Publish guide (for contributors)

Prepare

  • Update libraries
  • flutter pub get
  • cd ios && pod update
  • cd macos && pod update
  • Update changelog.md and version in pubspec.yaml and snapcraft.yaml
  • git commit -am vX.X.X
  • git tag "vX.X.X"
  • git push && git push -f --tags

macOS

  • flutter build macos
  • Archive -> Distribute -> Direct Distribution
  • npx appdmg appdmg.json ./build/airdash.dmg
  • Distribute with transporter

iOS

  • flutter build ipa
  • Distribute with Transporter

Android

  • flutter build appbundle
  • cp build/app/outputs/bundle/release/app-release.aab build/airdash.aab
  • open https://play.google.com/console/u/0/developers/6822011924129869646/app/4975414306006741094/tracks/production
  • App Bundle Explorer -> Download signed apk -> build/airdash.apk

Windows

  • Open Windows in VMWare
  • Open ~\Documents\airdash in vs code
  • git pull -r && flutter pub get
  • dart run msix:create
  • Copy msix file to build/airdash.msix
  • Create new update -> open https://partner.microsoft.com/en-us/dashboard/products/9NL9K7CSG30T

Linux

  • Open Ubuntu in VMWare
  • Open ~\Documents\airdash in vs code
  • git pull -r && flutter pub get
  • snapcraft clean --use-lxd # required
  • snapcraft --output build/airdash.snap --use-lxd
  • snapcraft upload --release=stable build/airdash.snap
  • Copy to mac ./build/airdash.snap (send.vis.ee for example)

Create Github release

  • open https://github.com/simonbengtsson/airdash/releases/new
  • Attach
    • build/airdash.apk
    • build/airdash.dmg
    • build/airdash.msix
    • build/airdash.snap
Simon Bengtsson GitHub avatar
GitHub 작성자

Simon Bengtsson ↗

Enthusiastic mobile and web developer with a background in software engineering and interaction design.

PeachGothenburg, Sweden공식 웹사이트 ↗
언어DartHTMLSwiftC++CMakeJavaScriptRubyKotlinCObjective-C

분류

의존하는 Flutter 컴포넌트

사용 중인 의존성

의존성 목록 34 개

앱 카테고리

순위

프로젝트에 맞는 저장소를 선택하려면?

사용 목적에 따라 검색하고 개발 활동을 비교한 뒤 원본 저장소에서 요구 사항을 확인하세요.

  1. 이름, 작성자 또는 설명으로 검색하고 기술 주제로 범위를 좁힙니다.
  2. 스타, 포크, 최근 푸시를 함께 비교하세요. 스타는 관심의 지표이며 품질을 보장하지 않습니다.
  3. 사용하기 전에 GitHub에서 README, 라이선스, Issues를 확인하세요.

출처 및 관리

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗