Bitrise-iOS - Client iOS app for bitrise.io πŸš€

Overview

🎨 SwiftUI version is available as beta πŸ‘Ά

Bitrise iOS Client app πŸš€

screen-shots.png

Build Status codecov patreon

Features

  • βœ… App List GET /me/apps
    • Shows last visited app page on launch
  • βœ… Build List
    • Show builds
    • Abort
    • Rebuild
  • βœ… Trigger
    • Add/Delete workflowIDs
    • Cache workflowIDs, API token and last gitObject using Realm
    • Trigger Build for each app
  • βœ… bitrise.yml
    • download / upload
    • Syntax Highlight

Building Project

Init submodule

git submodule update --init -f

Setup Carthage

Install the latest version of Carthage.

brew install carthage

Run following to build dependency frameworks.

carthage bootstrap --platform iOS

Generate xcodeproj

Install the latest version of XcodeGen.

Then generate xcodeproj.

xcodegen

Open the xcodeproj, build and run.

Set DEVELOPMENT_TEAM in configs/user.xcconfig

So you don't have to modify it from Xcode everytime after you run xcodegen.

Required Credentials

You need credentials below to use full feature of this app.

All tokens are securely stored in encrypted Realm database. Corresponding encryption key is stored in your keychain. It's the way Realm recommends.

Bitrise Personal Access Token

Required to access Bitrise v0.1 API. Generate one in the setting page.

Personal Access Token

SeeAlso: http://devcenter.bitrise.io/api/v0.1/#authentication

Donate

If you think it's a useful tool, consider donation to maintain project.

patreon

License

MIT

Comments
  • [BuildTrigger] Branch/commit/tag history

    [BuildTrigger] Branch/commit/tag history

    Branch/commit/tag names are suggested based on history. History is saved in realm database.

    output

    Future TODO

    https://github.com/toshi0383/Bitrise-iOS/issues/54

    opened by toshi0383 2
  • Replace AppIcon

    Replace AppIcon

    γ‚Ήγ‚―γƒͺγƒΌγƒ³γ‚·γƒ§γƒƒγƒˆ 2019-09-14 23 33 56

    make app-icon

    Also added script to automatically export app icon pngs and update corresponding Contents.json. The script depends on Sketch.app's built-in AppIcon template set. (screenshot above) Also needs to be updated if any image size pattern changed in Contents.json. See Makefile for detail.

    opened by toshi0383 1
  • SwiftUI experiment

    SwiftUI experiment

    Rewriting with SwiftUI. Still work in progress, but some views are already connected with bitrise's web APIs.

    supported

    • iOS13+
    • macOS10.15+ (Catalyst)

    known issues

    • Core framework target is not shared with current one. SwiftUI version will replace UIKit one, so will keep it as is.
    • APIKit is directly imported via XcodeGen https://github.com/yonaskolb/XcodeGen/issues/610

    project structure

    .
    β”œβ”€β”€ ActionPopoverButton
    β”œβ”€β”€ BitriseClient
    β”œβ”€β”€ BitriseClient.xcodeproj
    β”œβ”€β”€ CHANGELOG.md
    β”œβ”€β”€ Cartfile
    β”œβ”€β”€ Cartfile.resolved
    β”œβ”€β”€ Core
    β”œβ”€β”€ LICENSE
    β”œβ”€β”€ Makefile
    β”œβ”€β”€ README.md
    β”œβ”€β”€ RxProperty
    
    β”œβ”€β”€ SwiftUI  <= added
    β”‚Β Β  β”œβ”€β”€ BitriseClient-SwiftUI.xcodeproj
    β”‚Β Β  β”œβ”€β”€ Cartfile
    β”‚Β Β  β”œβ”€β”€ Cartfile.resolved
    β”‚Β Β  β”œβ”€β”€ Carthage
    β”‚Β Β  β”œβ”€β”€ Config
    β”‚Β Β  β”œβ”€β”€ Core
    β”‚Β Β  β”œβ”€β”€ README.md
    β”‚Β Β  β”œβ”€β”€ Sources
    β”‚Β Β  └── project.yml
    
    β”œβ”€β”€ Tests
    β”œβ”€β”€ codecov.yml
    β”œβ”€β”€ configs
    β”œβ”€β”€ project.yml
    β”œβ”€β”€ resources
    └── scripts
    
    opened by toshi0383 1
  • Add prompt for large log file to allow download under cellular network

    Add prompt for large log file to allow download under cellular network

    Prompt user when download file size is more than almost 1.0 MB (1_000_000 bytes). Simulator Screen Shot - iPhone 7 - 2019-04-03 at 01 48 14

    discussion: https://discuss.bitrise.io/t/build-logs-size-before-download/8614

    enhancement 
    opened by toshi0383 1
  • Build Log Downloader

    Build Log Downloader

    #32

    Added build log download feature. Files are automatically deleted after 7 days.

    Screenshot

    | Download via ActionSheet | LogViewController | |---|---| | output | IMG_6544 |

    LogViewController

    Performance issue

    It takes too long to colorize large log file with Highlightr. We should consider range access to the file instead of loading all content of the file at once. I leave this as future TODO for now.

    Color issue

    Bitrise emits bash color format, so may be we can manually parse it to show cool colors like we see on Bitrise web console.

    Screen Shot 2019-03-15 at 22 25 48

    Is there any framework or 3rd party tool to do that on iOS UITextView ?

    enhancement 
    opened by toshi0383 1
  • Use slug to identify last visited app

    Use slug to identify last visited app

    This is part of the app launch performance improvement project. https://github.com/toshi0383/Bitrise-iOS/issues/57

    We need to remember appSlug in order to fetch the app's builds before /me/apps request complete.

    • [x] Do not delete realm during development
    • [x] Use slug to identify last visited app
    • [x] Impl Realm migration block
    opened by toshi0383 1
  • Use os.signpost and os.log for better logging and profiling

    Use os.signpost and os.log for better logging and profiling

    opened by toshi0383 1
Owner
Toshihiro Suzuki
iOS/Android dev
Toshihiro Suzuki
Charter - A Swift mailing list client for iPhone and iPad

Due to costs and lack of interest, I’ve had to take down the Charter service. If you’re interested in running your own copy, get in touch and I can se

Matthew Palmer 526 Dec 24, 2022
DevSwitch - An iOS app for switching between countries on the App Store with ease.

Archived as of 24/04/2021. Apple has again broken the URLs required for storefront switching. I've decided to archive DevSwitch due to this. If Apple

Aaron Pearce 432 Jan 3, 2023
AppLove - View iOS app reviews in multiple selected territories with translation option.

App Love Note: Swift Version 2.2 currently, will update to Swift 3/XCode 8 after cocoapods are updated to Swift 3. Features View iOS Customer App Revi

Woodie Dovich 52 Nov 19, 2022
IOS - Unofficial app for Swift Evolution

EVOlution - iOS The goal of this project is for the version 1.0 was: bring to iOS the experience provided by Swift Evolution website. Now we are shift

EVOlution App 235 Dec 19, 2022
Buglife-iOS - Awesome bug reporting for iOS apps

Buglife is an awesome bug reporting SDK & web platform for iOS apps. Here's how it works: User takes a screenshot, or stops screen recording User anno

Buglife 498 Dec 17, 2022
Awesome-ML - Discover, download, compile & launch different image processing & style transfer CoreML models on iOS.

⚠️ ⚠️ ⚠️ IMPORTANT: I'm no longer maintaining Awesome-ML. Awesome ML is an iOS app that is made to demonstrate different image processing CoreML model

eugene 171 Nov 8, 2022
BaseConverter-iOS - The fast and easy way to convert numbers with tons of possibilities!

BaseConverter-iOS The fast and easy way to convert numbers with tons of possibilities! With BaseConverter, convert your numbers from and to: Decimal B

Groupe MINASTE 3 Feb 8, 2022
Dash-iOS - Dash gives your iPad and iPhone instant offline access to 200+ API documentation sets

Discontinued Dash for iOS was discontinued. Please check out Dash for macOS instead. Dash for iOS Dash gives your iPad and iPhone instant offline acce

Bogdan Popescu 7.1k Dec 29, 2022
The Outline Client is a cross-platform VPN or proxy client for Windows, macOS, iOS, Android, and ChromeOS

Outline Client The Outline Client is a cross-platform VPN or proxy client for Windows, macOS, iOS, Android, and ChromeOS. The Outline Client is design

Jigsaw 7.3k Dec 31, 2022
Swift iPhone and iPad Client for Polls API, using Hyperdrive API client

Polls Client This is a Swift iPhone and iPad client for the Polls API - a simple application allowing users to view polls and vote in them. Polls is a

Apiary 34 Jul 15, 2022
Twitter-Client - A twitter client that allow users to view tweets on their iphone

Project 3 - Twitter Client Name of your app is a basic twitter app to read your

null 0 Feb 7, 2022
This generic SOAP client allows you to access web services using a your iOS app, Mac OS X app and AppleTV app.

This generic SOAP client allows you to access web services using a your iOS app, Mac OS X app and Apple TV app. With this Framework you can create iPh

Prioregroup.com 479 Nov 22, 2022
iOS-mail β€” ProtonMail iOS client app

iOS-mail Introduction iOS-mail β€” ProtonMail iOS client app The app is intended for all users of the ProtonMail service. Whether they are paid or free,

null 1.2k Jan 3, 2023
Client library for making in-app purchases on iOS and macOS Automattic apps

MobilePayKit Client library for making in-app purchases on iOS and macOS Automattic apps Introduction MobilePayKit is a client library for making in-a

Automattic 8 Oct 20, 2022
iTorrent - iOS Torrent client App

iTorrent - iOS Torrent client App Screenshots iPhone Screenshots iPad Screenshots Download Latest stable build: (GitHub Release) Latest dev build: (Ap

Vinogradov Daniil 1.2k Jan 2, 2023
Apple watch app to interface with Transmission Client

TransmissionWatch Apple watch app to interface with Transmission Client Currrent

Aayush 2 Dec 23, 2021
This app is a native client for openHAB which allows easy access to your sitemaps

openHAB client for iOS Introduction This app is a native client for openHAB which allows easy access to your sitemaps. Beta releases are available on

openHAB 176 Dec 30, 2022
Seafile-iOS is a the iOS client for Seafile.

Introduction Seafile-iOS is a the iOS client for Seafile. Build and Run Follow these steps : git clone https://github.com/haiwen/seafile-iOS.git cd se

null 202 Dec 29, 2022
Project Flat iOS is the iOS client of Agora Flat open source classroom.

Agora Flat iOS Project flat is the iOS client of Agora Flat open source classroom. δΈ­ζ–‡ Features Open sourced front-end and back-end [Flat Web][flat-web

netless 24 Dec 12, 2022
Olvid-ios - Olvid client application for iOS

Olvid Olvid is a private and secure end-to-end encrypted messenger. Contrary to

Olvid 42 Dec 6, 2022