An open API service indexing awesome lists of open source software.

https://github.com/demola234/rawg_ios

Rawg Gammer Application Built with SwiftUI using Combine, Clean Architecture, Rawg Api, Firebase, SwiftData and CoreData
https://github.com/demola234/rawg_ios

clean-architecture combine coredata firebase-auth ios swift swiftdata swiftui

Last synced: 2 days ago
JSON representation

Rawg Gammer Application Built with SwiftUI using Combine, Clean Architecture, Rawg Api, Firebase, SwiftData and CoreData

Awesome Lists containing this project

README

        


Rawg Logo


Swift UI
MIT License
Twitter: @danielsaidi

## About Rawg Gammers


Rawg Cover

RawgGammers is an iOS app that uses the RAWG API to display a list of games and their details. The app is built using SwiftUI and Combine.

## Demo Video

## Screen Shots

## Features

- [x] Display a list of games
- [x] Display game details
- [x] Search for games
- [x] Filter games by platform
- [x] Filter games by genre
- [x] Filter games by tags
- [x] Change App Icon
- [x] Change App Theme
- [x] Add Game to Favorites
- [x] Select Favorites Game Avatar for Profile
- [x] Authentication with X OAuth
- [x] Authentication with Apple Sign In
- [x] Authentication with Google Sign In

## Requirements

- iOS 14.0+
- Xcode 12.0+
- Swift 5.0+
- [RAWG API Key](https://rawg.io/apidocs)
- [Firebase Project](https://console.firebase.google.com/)
- [Google Sign In](https://developers.google.com/identity/sign-in/ios/start)
- [Apple Developer Account](https://developer.apple.com/)
- [Apple Sign In](https://developer.apple.com/documentation/authenticationservices/implementing_user_authentication_with_sign_in_with_apple)
- [Swift Package Manager](https://swift.org/package-manager/)
- [Cocoapods](https://cocoapods.org/)

## Installation

1. Clone the repository

```bash
git clone
```

2. Install dependencies

```bash
pod install
```

3. Open the project in Xcode

```bash
open RawgGammers.xcworkspace
```

4. Add your RAWG API Key to the project

```swift
// Environment.xcconfig
API_BASE_URL = "https://api.rawg.io/api/"
```

5. Add your Firebase configuration file to the project

```bash
GoogleService-Info.plist
```

6. Add your Google Sign In configuration file to the project

```bash
GoogleService-Info.plist
```

7. Add your Apple Sign In configuration file to the project

```bash
Info.plist
```

8. Run the project

```bash
Cmd + R
```

## Author

- [Ademola Kolawole](https://twitter.com/ademoladi)

## License

RawgGammers is available under the MIT license. See the LICENSE file for more info.

## Acknowledgements

- [RAWG API](https://rawg.io/apidocs)
- [Firebase](https://firebase.google.com/)