Swift library for the Twitter API v1 and v2

Overview

TwitterAPIKit

Swift library for the Twitter API v1 and v2 (Work in progress).


Unfortunately, I couldn't find any active Twitter API library for Swift at the moment.

So, I decided to create one.

Policy

  • No dependencies

Example

    let consumerKey = ""
    let consumerSecret = ""
    let oauthToken = ""
    let oauthTokenSecret = ""

    let client = TwitterAPIKit(
        consumerKey: consumerKey,
        consumerSecret: consumerSecret,
        oauthToken: oauthToken,
        oauthTokenSecret: oauthTokenSecret
    )

    client.v1.getShowStatus(.init(id: "status id")) { result in

        switch result {
        case let .success((data, rateLimit, httpURLResponse)):
            print("--- Success ---")
            print("Rate Limit", rateLimit)

            // parse json
            let obj = JSONSerialization.jsonObject(with: data, options: [])

            // Or decode
            let decoder = JSONDecoder()
            let product = try decoder.decode(YourModel.self, from: data)

        case .failure(let error): // TwitterAPIKitError
            print("--- Error ---")
            if let data = error.data {
                print("Body:", String(data: data, encoding: .utf8)!)
            }
            if let rateLimit = error.rateLimit {
                print("Rate Limit", rateLimit)
            }
        }
    }

TODO

  • Support API v1 endpoint
  • Support API v2 endpoint
  • Codable
  • Swift Concurrency
  • Document
Comments
  • Refresh oauth20 helper

    Refresh oauth20 helper

    #134

    Example

    client.refreshOAuth20Token(type: .publicClient) { result in
        switch result {
            case .succes(let refresh):
                if refresh.refreshed {
                    // If necessary, we will handle the saving process, etc.
                    // storeToken(oauth20: refresh.token)
                }
        }
    }
    
    let refresh = try await client.refreshOAuth20Token(type: .publicClient, forceRefresh: false)
    if refresh.refreshed {
        // If necessary, we will handle the saving process, etc.
        // storeToken(oauth20: refresh.token)
    }
    
    opened by mironal 2
  • Unable to retrieve email from Twitter account

    Unable to retrieve email from Twitter account

    Hi. I was originally using TwitterKit, but I'm going to switch to this library. But I ran into a problem implementing it.

    I want to get the account email through v1 getAccountVerify, but the function does not work. Can you help? My implementation code looks like this:

    // after login
    
    self.client = .init(
        consumerKey: consumerKey,
        consumerSecret: consumerSecret,
        oauthToken: oauthToken,
        oauthTokenSecret: oauthTokenSecret
    )
    
    self.client
        .v1
        .account
        .getAccountVerify(.init(skipStatus: true, includeEmail: true, includeEntities: false))
        .responseObject { response in
            print("responseAccount > \(response.success)")
        }
    

    On TwitterKit I was able to get the email value by calling include_email true in the same /1.1/account/verify_credentials.json. But I can't get it from this library.

    opened by HyunjoonKo 2
  • Making Swift Concurrency work

    Making Swift Concurrency work

    Hi @mironal, I would like to help implement things with Swift Concurrency, which is currently experimental in this repo. What could I do to help? Thank you.

    opened by lk251 2
  • TwitterAPIKit-iOS-sampleのscopes違いで403になる

    TwitterAPIKit-iOS-sampleのscopes違いで403になる

    tapSignInOAuth2でauthorizeURLが scopes: ["tweet.read", "users.read", "offline.access"] となっていますが、このままだとOAuth2で認証してtapCallを呼ぶと403(Forbidden)が返ってきます。 API仕様を参考に"tweet.write"を追加したところ、正常にツイートできました。

    opened by yogox 2
  • OAuth2

    OAuth2

    • https://developer.twitter.com/en/docs/authentication/oauth-2-0/authorization-code
    • https://developer.twitter.com/en/docs/authentication/oauth-2-0/user-access-token
    opened by mironal 2
  • [DO NOT MERGE] Use this branch if your app includes iOS 12.

    [DO NOT MERGE] Use this branch if your app includes iOS 12.

    Use this branch if your app includes iOS 12.

    Branch to avoid crashes on xcode 13.2.1, iOS 12

    https://forums.swift.org/t/swift-concurrency-back-deploy-issue/53917

    opened by mironal 2
  • Add .all static properties to Expansions and Fields

    Add .all static properties to Expansions and Fields

    close #129

    Example

        func example() async {
            let response = await client.v2.tweet.getTweet(.init(
                id: "210462857140252672",
                expansions: TwitterTweetExpansionsV2.all,
                mediaFields: TwitterMediaFieldsV2.all,
                placeFields: TwitterPlaceFieldsV2.all,
                pollFields: TwitterPollFieldsV2.all,
                tweetFields: TwitterTweetFieldsV2.all.subtracting([.promotedMetrics]), // You can delete unwanted items from all of them.
                userFields: TwitterUserFieldsV2.all
                )
            )
                .responseObject
    
            print(response.prettyString)
    
        }
    
    opened by mironal 1
  • Remove the API protocol and make it a class instead.

    Remove the API protocol and make it a class instead.

    We chose to use classes for the following reasons.

    Protocols are not scalable.

    Protocols make it difficult to write extensions such as RxSwift's Reactive.

    opened by mironal 1
  • Add support Bookmarks API

    Add support Bookmarks API

    https://developer.twitter.com/en/docs/twitter-api/tweets/bookmarks/introduction

    https://twittercommunity.com/t/build-with-bookmarks-on-the-twitter-api-v2/168804

    opened by mironal 1
  • Cannot sign in with Oauth 1.0a using email

    Cannot sign in with Oauth 1.0a using email

    Hi,

    I'm having an issue trying to log in with oauth 1.0a. It works if the users types the username but otherwise if the user try to log in using the full email address he is redirected to a blank page. If you request de desktop website tapping on top button (aA) a website is shown with an error: Simulator Screen Shot - iPhone 13 Mini - 2022-10-31 at 08 27 35

    opened by juanjovn 5
  • SwiftUI Example App

    SwiftUI Example App

    Hey, Thanks for your great framework!

    The only thing is, me (and many other I assume), we are not a StoryBoard & UIKit user and have (very) limited knowledge about them, personally I cannot read those correctly, can you please make a SwiftUI example? I'll appreciate it.

    Regards

    opened by amirsaam 5
  • Cannot log in with Google or Apple sign in providers

    Cannot log in with Google or Apple sign in providers

    Hi, I was implementing login to Twitter in my app with this library and it's pretty convenient.

    I handled to get the oauth2 token when the users logs in with email and password on Twitter but I cannot make the ASWebAuthenticationSession flow work with the sign from Google or Apple. It logs in within the web view of the Auth session but it don't finish the flow closing the modal view and obtaining the token.

    Any thoughts about this? Am I missing something? I've also cloned the example project and it didn't work either.

    Best regards.

    opened by juanjovn 0
Releases(0.2.3)
  • 0.2.3(Nov 2, 2022)

    What's Changed

    • Generated files do not measure coverage by @mironal in https://github.com/mironal/TwitterAPIKit/pull/139
    • fix warning by @mironal in https://github.com/mironal/TwitterAPIKit/pull/142
    • Up swift5.7 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/143
    • Add Direct Message API v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/148

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.2.2...0.2.3

    Source code(tar.gz)
    Source code(zip)
  • 0.2.2(Aug 3, 2022)

    What's Changed

    • Improve json decoder by @mironal in https://github.com/mironal/TwitterAPIKit/pull/133
    • update sourcery by @mironal in https://github.com/mironal/TwitterAPIKit/pull/137
    • Improve TwitterAuthenticationMethod by @mironal in https://github.com/mironal/TwitterAPIKit/pull/136
    • Refresh oauth20 helper by @mironal in https://github.com/mironal/TwitterAPIKit/pull/138

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.2.1...0.2.2

    Source code(tar.gz)
    Source code(zip)
  • 0.2.1(Jul 15, 2022)

    What's Changed

    • Add .all static properties to Expansions and Fields by @mironal in https://github.com/mironal/TwitterAPIKit/pull/130

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.2.0...0.2.1

    Source code(tar.gz)
    Source code(zip)
  • 0.2.0(Jul 3, 2022)

    This release contains Breaking Change

    Replace the TwitterAPIKit instance with TwitterAPIClient.

    let client = TwitterAPIKit(/* auth */)let client = TwitterAPIClient(/* auth */)

    What's Changed

    • [Breaking change] Rename TwitterAPIKit to TwitterAPIClient by @mironal in https://github.com/mironal/TwitterAPIKit/pull/125
    • Remove the API protocol and make it a class instead. by @mironal in https://github.com/mironal/TwitterAPIKit/pull/127

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.1.1...0.2.0

    Source code(tar.gz)
    Source code(zip)
  • 0.1.1(May 21, 2022)

    What's Changed

    • Update tools by @mironal in https://github.com/mironal/TwitterAPIKit/pull/119
    • Add reverse chronological timeline (Home Timeline) by @mironal in https://github.com/mironal/TwitterAPIKit/pull/124

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.1.0...0.1.1

    Source code(tar.gz)
    Source code(zip)
  • 0.1.0(Mar 31, 2022)

    What's Changed

    • [Breaking change] Refactor auth by @mironal in https://github.com/mironal/TwitterAPIKit/pull/117
    • OAuth 2.0 Authorization Code Flow with PKCE by @mironal in https://github.com/mironal/TwitterAPIKit/pull/116
    • fix name OAuth 1.0a by @mironal in https://github.com/mironal/TwitterAPIKit/pull/118

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.15...0.1.0

    Source code(tar.gz)
    Source code(zip)
  • 0.0.15(Mar 27, 2022)

    What's Changed

    • fix ci by @mironal in https://github.com/mironal/TwitterAPIKit/pull/115
    • Add support Bookmarks API by @mironal in https://github.com/mironal/TwitterAPIKit/pull/114

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.14...0.0.15

    Source code(tar.gz)
    Source code(zip)
  • 0.0.14(Mar 18, 2022)

    What's Changed

    • Add get tweets id quote tweets by @mironal in https://github.com/mironal/TwitterAPIKit/pull/112

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.13...0.0.14

    Source code(tar.gz)
    Source code(zip)
  • 0.0.13(Mar 16, 2022)

    What's Changed

    • Test geo v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/100
    • Test search v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/101
    • Test users v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/102
    • Test retweet v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/103
    • Test tweet v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/104
    • not cancel by @mironal in https://github.com/mironal/TwitterAPIKit/pull/105
    • Test account v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/106
    • Test help app v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/107
    • fix EXC_BAD_INSTRUCTION by @mironal in https://github.com/mironal/TwitterAPIKit/pull/108
    • Test auth v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/109
    • Test list v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/110
    • Test collection v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/111

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.12...0.0.13

    Source code(tar.gz)
    Source code(zip)
  • 0.0.12(Mar 13, 2022)

    What's Changed

    • Test trend v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/95
    • Streaming Error error response by @mironal in https://github.com/mironal/TwitterAPIKit/pull/97
    • Fixed a bug that caused media uploads to always succeed by @mironal in https://github.com/mironal/TwitterAPIKit/pull/98
    • Test timeline v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/99

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.11...0.0.12

    Source code(tar.gz)
    Source code(zip)
  • 0.0.11(Mar 13, 2022)

    What's Changed

    • parallel lint test by @mironal in https://github.com/mironal/TwitterAPIKit/pull/84
    • Test tests by @mironal in https://github.com/mironal/TwitterAPIKit/pull/85
    • Test timeline v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/86
    • Test stream v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/87
    • test GetTweetsSearchAllRequestV2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/88
    • Test spaces v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/89
    • Test fav v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/90
    • Test friendships v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/91
    • Test auth v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/92
    • Test block and mute v1 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/93
    • Fixed rate limit being nil on error by @mironal in https://github.com/mironal/TwitterAPIKit/pull/94

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.10...0.0.11

    Source code(tar.gz)
    Source code(zip)
  • 0.0.10(Mar 10, 2022)

    What's Changed

    • test GetTweetsCountsRecentRequestV2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/69
    • Test upload media by @mironal in https://github.com/mironal/TwitterAPIKit/pull/70
    • Test template & Test block mute v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/72
    • Return nil if not included rate limit in the header by @mironal in https://github.com/mironal/TwitterAPIKit/pull/73
    • Test Result by @mironal in https://github.com/mironal/TwitterAPIKit/pull/74
    • Test compliance v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/75
    • Test retweet v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/76
    • Test field v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/77
    • Test expansions v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/78
    • Test friendship v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/79
    • Test list v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/80
    • remove by @mironal in https://github.com/mironal/TwitterAPIKit/pull/81
    • Test like v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/82
    • Test users v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/83

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.9...0.0.10

    Source code(tar.gz)
    Source code(zip)
  • 0.0.9(Mar 3, 2022)

    What's Changed

    • add more post dm param by @mironal in https://github.com/mironal/TwitterAPIKit/pull/68

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.8...0.0.9

    Source code(tar.gz)
    Source code(zip)
  • 0.0.8(Mar 2, 2022)

    What's Changed

    • More test concurrent by @mironal in https://github.com/mironal/TwitterAPIKit/pull/65
    • test default argument methods by @mironal in https://github.com/mironal/TwitterAPIKit/pull/66
    • Test search by @mironal in https://github.com/mironal/TwitterAPIKit/pull/67

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.7...0.0.8

    Source code(tar.gz)
    Source code(zip)
  • 0.0.7(Mar 1, 2022)

    What's Changed

    • Test request by @mironal in https://github.com/mironal/TwitterAPIKit/pull/64

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.6...0.0.7

    Source code(tar.gz)
    Source code(zip)
  • 0.0.6(Mar 1, 2022)

    What's Changed

    • More more test by @mironal in https://github.com/mironal/TwitterAPIKit/pull/62

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.5...0.0.6

    Source code(tar.gz)
    Source code(zip)
  • 0.0.5(Feb 28, 2022)

    What's Changed

    • Test by @mironal in https://github.com/mironal/TwitterAPIKit/pull/60
    • More tests by @mironal in https://github.com/mironal/TwitterAPIKit/pull/61

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.4...0.0.5

    Source code(tar.gz)
    Source code(zip)
  • 0.0.4(Feb 27, 2022)

    What's Changed

    • Error utils by @mironal in https://github.com/mironal/TwitterAPIKit/pull/58
    • tvOS, watchOS by @mironal in https://github.com/mironal/TwitterAPIKit/pull/59

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.3...0.0.4

    Source code(tar.gz)
    Source code(zip)
  • 0.0.3(Feb 27, 2022)

    What's Changed

    • Stream v2 by @mironal in https://github.com/mironal/TwitterAPIKit/pull/57

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.2...0.0.3

    Source code(tar.gz)
    Source code(zip)
  • 0.0.2(Feb 25, 2022)

    What's Changed

    • Media metadata subtitles by @mironal in https://github.com/mironal/TwitterAPIKit/pull/53
    • build if needed by @mironal in https://github.com/mironal/TwitterAPIKit/pull/55
    • More dm by @mironal in https://github.com/mironal/TwitterAPIKit/pull/56

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.1...0.0.2

    Source code(tar.gz)
    Source code(zip)
  • 0.0.1(Feb 24, 2022)

    What's Changed

    • V1 V2 error by @mironal in https://github.com/mironal/TwitterAPIKit/pull/51
    • Error message scope by @mironal in https://github.com/mironal/TwitterAPIKit/pull/52

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.1-beta.7...0.0.1

    Source code(tar.gz)
    Source code(zip)
  • 0.0.1-beta.7(Feb 23, 2022)

    What's Changed

    • Default arg data task by @mironal in https://github.com/mironal/TwitterAPIKit/pull/50

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.1-beta.6...0.0.1-beta.7

    Source code(tar.gz)
    Source code(zip)
  • 0.0.1-beta.6(Feb 23, 2022)

  • 0.0.1-beta.5(Feb 22, 2022)

  • 0.0.1-beta.4(Feb 22, 2022)

  • 0.0.1-beta.3(Feb 14, 2022)

    What's Changed

    • errorDescription by @mironal in https://github.com/mironal/TwitterAPIKit/pull/31

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.1-beta.2...0.0.1-beta.3

    Source code(tar.gz)
    Source code(zip)
  • 0.0.1-beta.2(Feb 14, 2022)

    What's Changed

    • Error resp by @mironal in https://github.com/mironal/TwitterAPIKit/pull/30

    Full Changelog: https://github.com/mironal/TwitterAPIKit/compare/0.0.1-beta.1...0.0.1-beta.2

    Source code(tar.gz)
    Source code(zip)
  • 0.0.1-beta.1(Feb 14, 2022)

Owner
mironal
I like iOS, firebase, TypeScript
mironal
Fetch Multiple Rest API using Swift 5.5 Async Await with Task, TaskGroup, Continuation API

Source code for Tutorial on experimenting with Swift Async Await to fetch multiple REST API endpoints and eliminate Pyramid of Doom callback hell to improve code readability and maintanability

Alfian Losari 14 Dec 7, 2022
Swift implementation of Github REST API v3

GitHubAPI Swift implementation of GitHub REST api v3. Library support Swift 4.2. Work is in progress. Currently supported: Issues API. Activity API(Fe

Serhii Londar 77 Jan 7, 2023
Google Directions API helper for iOS, written in Swift

PXGoogleDirections Google Directions API SDK for iOS, entirely written in Swift. ?? Features Supports all features from the Google Directions API as o

Romain L 268 Aug 18, 2022
Swift Reddit API Wrapper

reddift reddift is Swift Reddit API Wrapper framework, and includes a browser is developed using the framework. Supports OAuth2(is not supported on tv

sonson 236 Dec 28, 2022
Instagram API client written in Swift

SwiftInstagram is a wrapper for the Instagram API written in Swift. It allows you to authenticate users and request data from Instagram effortlessly.

Ander Goig 580 Nov 25, 2022
Instagram Private API Swift

SwiftyInsta Please notice SwiftyInsta may not be actively maintained at the moment of you reading this note. Refer to #244 for more info. Instagram of

Mahdi Makhdumi 218 Jan 5, 2023
A Swift client for the OpenAI API.

OpenAI A Swift client for the OpenAI API. Requirements Swift 5.3+ An OpenAI API Key Example Usage Completions import OpenAI

Mattt 161 Dec 26, 2022
Swift Bot with Vapor for Telegram Bot Api

Telegram Vapor Bot Please support Swift Telegram Vapor Bot Lib development by giving a ⭐️ Telegram Bot based on Swift Vapor. Swift Server Side Communi

OleG. 104 Jan 6, 2023
Backport of iOS 15 formatting api

This is a back-port of the .formatted API in Foundation that was introduced at WWDC '21 for iOS 15, macOS 12.0, tvOS 15.0, and watchOS 8.0.

Simon Salomons 9 Jul 22, 2022
Unofficial iOS/macOS SDK for the Notion API.

NotionClient: a Notion SDK for iOS & macOS Unofficial Notion API SDK for iOS & macOS. This is an alpha version and still work in progress. TODO Featur

David De Bels 15 Aug 4, 2022
ITunesFeedGenerator - This library provides very simple and Swiftly way to fetch feeds from iTunes Store

ITunesFeedGenerator This library provides very simple and Swiftly way to fetch feeds from iTunes Store: Most Played Songs. Top Free or Paid Books. Top

Alfian Losari 9 Sep 8, 2022
Solana + RxSolana This is a open source library on pure swift for Solana protocol

The objective is to create a cross platform, fully functional, highly tested and less depencies as posible. The project is still at initial stage. Lots of changes chan happen to the exposed api.

Arturo Jamaica 138 Dec 15, 2022
A (really) native and powerful macOS Telegram client built using SwiftUI, optimized for moderating large communities and personal use.

Moc A (really) native and powerful macOS Telegram client, optimized for moderating large communities and personal use. This client is currently in dev

GGorAA 84 Jan 2, 2023
WANNA SDK enhances your iOS app with virtual try-on capabilities for shoes and watches

WANNA SDK enhances your iOS app with virtual try-on capabilities for shoes and watches. With this feature, your users will be able to see in real time how the selected product looks on them, just by pointing their smartphone camera at their feet or wrist.

Wannaby Inc. 18 Dec 2, 2022
👤 Framework to Generate Random Users - An Unofficial Swift SDK for randomuser.me

RandomUserSwift is an easy to use Swift framework that provides the ability to generate random users and their accompanying data for your Swift applic

Wilson Ding 95 Sep 9, 2022
Swift client for Kubernetes

Table of contents Overview Compatibility Matrix Examples Usage Creating a client Configuring a client Client authentication Client DSL Advanced usage

Swiftkube 94 Dec 14, 2022
SDK for creating Telegram Bots in Swift.

Chat • Changelog • Prerequisites • Getting started • Creating a new bot • Generating Xcode project • API overview • Debugging notes • Examples • Docum

Rapier 349 Dec 20, 2022
Telegram Bot Framework written in Swift 5.1 with SwiftNIO network framework

Telegrammer is open-source framework for Telegram Bots developers. It was built on top of Apple/SwiftNIO

Pataridze Givi 279 Jan 4, 2023
QuoteKit is a Swift framework to use the free APIs provided by Quotable created by Luke Peavey.

QuoteKit The QuoteKit is a Swift framework to use the free APIs provided by Quotable created by Luke Peavey.

Rudrank Riyam 17 Jun 23, 2022