Skip to content

darrarski/github-status-bar

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 

GitHub Status Bar macOS App

swift: v5.2 platform: macOS deployment target: v10.15 code coverage: 100%

GitHub notifications in macOS status bar. Written in Swift.

This project demonstrates unidirectional data flow architecture implementation in a simple Swift application.

🚀 Build and run

Requirements

  • Xcode 11 with Swift 5.2

Run

You can run the app directly from terminal, by executing:

GITHUB_USERNAME=user GITHUB_TOKEN=personal-access-token swift run

Replace environment variables with your actual credentials.

🛠 Develop

Setup

Open Package.swift in Xcode.You can run the app using github-status-bar shared build scheme.

The GitHub credentials can be set in the scheme configuration:

xcode-scheme-environment-variables.png

Test

You can run tests from Xcode or by executing the following command in terminal:

swift test

Package structure

Target Description
Executable The macOS app executable
App[Tests] Core application logic
StatusBar[Tests] Status bar menu component
GitHub[Tests] GitHub REST API v3 client

External dependencies

Dependency Description
ComposableArchitecture Architecture foundations
SwiftEndpoint Networking layer abstration
Quick Behavior-driven development framework used in test targets
Nimble Assertion matcher framework used in test targets
Difference Assertion helper framework used in test targets

☕️ Do you like the project?

Buy Me A Coffee

📄 License

Copyright © 2020 Dariusz Rybicki Darrarski

License: GNU GPLv3

About

GitHub notifications in macOS status bar. Written in Swift and unidirectional data flow architecture.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages