Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dscyrescotti/contributorui
A UI library for iOS and macOS applications to showcase all contributors of public or private repositories.
https://github.com/dscyrescotti/contributorui
appkit contributors ios macos open-source swift swiftui uikit user-interface
Last synced: about 1 month ago
JSON representation
A UI library for iOS and macOS applications to showcase all contributors of public or private repositories.
- Host: GitHub
- URL: https://github.com/dscyrescotti/contributorui
- Owner: dscyrescotti
- License: mit
- Created: 2023-02-28T13:06:16.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-04-01T08:44:15.000Z (over 1 year ago)
- Last Synced: 2024-10-05T17:46:06.549Z (about 1 month ago)
- Topics: appkit, contributors, ios, macos, open-source, swift, swiftui, uikit, user-interface
- Language: Swift
- Homepage:
- Size: 2.69 MB
- Stars: 19
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
**ContributorUI** is a library for user interface available for iOS and macOS applications, aimed at displaying all developers who are contributing to the project.
## ⚙️ Setup
To access GitHub API, you need to feed personal access token into **ContributorUI**. Firstly, create a token under **Developer Settings** and add it somewhere safe in the project. Then call `configure(with:)` with your token key.
```swift
ContributorUI.configure(with: )
```
> For those who want to access private repository, make sure you enable repo scope when creating your token.Without the token key, GitHub API allows to access public repository with a **lower** rate limit. If you need a higher rate limit, it is **mandatory** to add the token key. If not, you will end up getting **unauthorized error**.
## 💡 Features
- [ContributorCard](#contributor-card)
- [ContributorList](#contributor-list)### ContributorCard
ContributorCard highlights the top contributors of the project in a card style. It can be placed in a specific screen to show the top committers.#### Usage
```swift
ContributorCard(owner: ,repo: )
.padding(20)
.backgroundStyle(.thinMaterial)
.estimatedSize(38)
.minimumCardRowCount(1)
.maximumDisplayCount(30)
```### ContributorList
ContributorList showcases all contributors of the project in table or grid style with infinite scroll behaviour. It can be shown via sheet or full screen cover in your application.#### Usage
```swift
ContributorList(owner: ,repo: )
.contributorListStyle(.grid)
.showsCommits(true)
```### UIKit and AppKit Support
**ContributorUI** comes with the handy view controllers and views for UIKit and AppKit to utilize them in ease even though it is natively developed in SwiftUI. The following table provides the corresponding view controllers and views in UIKit and AppKit.SwiftUI
UIKit
AppKitContributorCard
UIContributorCard
NSContributorCardContributorList
UIContributorListController
NSContributorListController## ⚠️ Requirements
- iOS 16+, macOS 13+
> ContributorUI is developed using Xcode 14.2. Make sure you are using Xcode 14.2 and above.## 🛠 Installation
### 📦 Using Swift Package Manager
Add it as a dependency within your Package.swift.
```
dependencies: [
.package(url: "https://github.com/dscyrescotti/ContributorUI.git", from: "1.0.1")
]
```
### 🎁 Using CocoaPods
Add it inside your Podfile.
```
pod 'ContributorUI', '~> 1.0.1'
```## 🔎 Exploration
### Demo Project
**ContributorUI** also comes with the demo project which is an optimal spot to explore the usages. To run the demo project, you can use the following commands in your terminal.
```
> git clone https://github.com/dscyrescotti/ContributorUI.git
> cd ContributorUI && xed Demo/Demo
```
Afterwards, Xcode will open the project and then you can hit ⌘+R to run the project.
> For those using UIKit or AppKit, you can check out `Demo/Demo-UIKit` and `Demo/Demo-AppKit`.## 🏆 Inspiration
**ContributorUI** is inspried by [contrib.rocks](https://contrib.rocks/) and is developed to praise the contributors of the project in iOS and macOS applications with a minimal setup.## ✍️ Author
Dscyre Scotti | [@dscyrescotti](https://twitter.com/dscyrescotti)## 👨💻 Contributions
**ContributorUI** welcomes all developers to contribute if you have any idea to enhance and open an issue if you encounter any bug.
## 📢 Discussions
Please feel free to share your feedback or ideas on **ContributorUI** by visiting the [Discussion Page](https://github.com/dscyrescotti/ContributorUI/discussions) for the project. We are always eager to hear from users like you. Additionally, if you have used **ContributorUI** in your project, we would love to know more about your experience! Please share your projects using **ContributorUI** under [Projects Using ContributorUI](https://github.com/dscyrescotti/ContributorUI/discussions/categories/projects-using-contributorui) category so that we can compile a list of projects and add it on **README.md**. Thank you for your support!## © License
**ContributorUI** is available under the MIT license. See the [LICENSE](https://github.com/dscyrescotti/ContributorUI/blob/main/LICENSE) file for more info.